A method to display revenues and earnings in one chart

Patrick Hinn
4 min readJun 6, 2018

--

How to display a businesses’ revenues and earnings in one chart to enable better performance tracking?

As the earnings are usually just a fraction of the revenue a chart that displays both of them over a certain time period might look like the one below.*

Without a deeper review of the underlying data, the chart implies nearly constant numbers over the time period as well as no change in the relation of both to each other. This relation is of interest as it exposes the profitability of the business. Although the chart might imply differently, a review of the data shows significant changes. So how to change the graphs to make those changes visible?

The solution is to work with two axes in one graphic. Simply leaving Excel with the task to create a second axis turns out to be mistakable. An example is shown below.

The first impression of the graphs does not match with the underlying numbers as the earnings were never higher than the revenue nor fluctuates the profitability around 1. The reason for the misunderstanding is the different scaling of the axes, which makes it impossible to compare those graphs anymore. To restore the comparability, an adjustment of the axes has to be done.

The key idea for this adjustment relates to the profitability (sometimes called margin) as the link between revenue and profit. With zero change in profitability, an increase in revenues (r) would cause an increase in earnings (e) by e*m, where m is the margin. In conclusion, a realistic chart can be created by scaling the axes of the profit graph by m times of how the axis of the revenue chart is increasing. That ensures a realistic ratio in changes of both graphs. The lower changes in earnings than in revenues are compensated by the smaller scale of the axes.

To avoid the graphs crossing or contacting each other the diagram is divided graphically into two parts. The upper one is for the revenue chart and the lower one for the profit chart as the profit is always going to be smaller than the revenue.

Following up this separation, the highest displayed data point will be the highest value of the revenue data, which makes its Y-value the highest point on the revenue axes. The same procedure with the earnings data defines the lowest point on the earnings axis.

Although, the smallest and biggest value for either one of the axes is given a simple copy to the other one would end up in the same graph that is displayed in the beginning. Instead, the necessary space, needed to display the revenue and earnings chart directly below each other, has to be calculated.

This space can be determined by calculating the difference between the highest(highRev; highEarn)and the lowest(lowRev; lowEarn) point of each graph.

The calculation is the following:

highRev — lowRev = diffRev

highEarn— lowEarn= diffEarn

To make those numbers comparable a new variable has to be implemented which serves as an intermediary. It is called “S”.

S is the number of steps between the highest and the lowest point on each of the axes. Having the same S at both axes makes them graphically the same size although the value of each step is going to vary between the revenue and earnings axes. The rate for the revenue chart is 1S = 1€ and for the profit chart 1S = 1€*m.

Applying those rates, the following calculation converts the differences into S:

S = diffRev + diffEarn * (m/100)

S is the range that has to be displayed by each axis. Using the same rates than before, S gets retransformed to Euros to define the minimum value of the revenue axis(minRev) and the maximum of the earning axis(maxEarn).

Revenue chart:

Rate: 1S = 1€

Calculation: minRev = HighRev — S

Earnings chart:

Rate: 1S = 1€ * m

Calculation: maxEarn = lowEarn + S * m

After implementing those numbers and having given that the steps are the same at both graphs, the final graphic is the following:

The relation of the charts is correct and the interpretation in regards to the profitability is clear.

For a short and practical explanation is a 10 steps guide linked here.

*The data used for the example is from those sources: 1. ; 2.

--

--