Practical Finance for Software Engineering | Part 2: Understanding Growth

James Lim
3 min readAug 28, 2021


(Read Part 1.)

Growth is straightforward: are people buying what we are selling?

Following the convention set in Part 1, we will be using product units. Depending on your context, a “product unit” can be a subscription, a license, a ride, a loan, a card, a night’s stay, 1m page views, or an actual piece of hardware. Each product unit sold generates some revenue, which is defined as r(n)=n×p. This is distinct from net income, as explained in Part 1.


The absolute amount of revenue r(n) is important, but only to help us understand a company’s market share and relative stage of maturity. A company earning $1m is very different from a company earning $100m in annual revenue. Beyond this use, the more important metric is often revenue growth.

Quick note about Revenue vs Annual Recurring Revenue: most usages of “revenue” in financial publications refer to the Generally Accepted Accounting Principles’ (GAAP) definition of revenue, which takes into account details such as the timing of service delivery. Annual Recurring Revenue (ARR) is a more intuitive number that is closer to the number of subscribers/licenses (within the context of a SaaS product). Read SaaS Finance: Bookings vs Revenues vs Collections vs MRR vs ARR for a detailed comparison.

MRR is a product and marketing focused metric that tracks the monthly recurring revenue customers have committed to spend in your business. ARR is simply the annualized version of MRR. In this manner, MRR and ARR are closer to bookings than any of the other GAAP metrics.

Growth and Valuations

Using Affirm’s S-1 filing as an example (p. 20), we can calculate the company’s Year-on-Year revenue growth by comparing FY20 ($510M) against FY19 ($264M) ≈ 93%. This is comparable to Afterpay’s revenue growth in the same period.

Fig. 1: Parsing Affirm’s S-1.

As a very rough rule of thumb, one could estimate the valuation of a company like so:

  1. Project its expected revenue growth using historical revenue growth.
  2. Find comparable public companies and look at their revenue growth rates.
  3. Using the comparables’ price-revenue ratios, estimate a range for our company’s price-revenue (P/R) ratio. Higher growth rates are correlated with higher P/R ratios (see Fig. 2 below.)
  4. Multiply your estimated ratio by revenue to arrive at a range estimate for our company’s valuation.

Quick note about P/R ratio: it is set by the market and changes over time. It expresses how much shareholders are willing to pay for the revenue stream in the current environment. The average P/R ratio within a sector depends on market-influencing factors such as optimism, hype, and cost of capital (interest rates). In eras where cost of capital is low (say, 2020–2021), P/R ratios tend to be higher. You can use websites like as a starting point for finding reasonable estimates.

Fig. 2: Correlation between valuation multiples and growth rate. Data from SaaS Capital, plotted using Google Colab with seaborn.

Brain Food 3: what is your range estimate for your company’s P/R ratio? How does your estimate of your company’s valuation compare with that of your last funding round?

As an engineering leader, you should be able to understand the relationship between

  • revenue growth and product metrics e.g. MAU, DAU, checkouts per day
  • product metrics and infrastructure metrics e.g. number of virtual machines, size of data storage, recurring o11y fees

Revenue growth, and the correlated usage growth, is accompanied by growth in costs. This brings us to efficiency. Our objectives are:

  • keep fixed costs f fixed
  • ensure that variable costs v(n) grow slower than r(n)

(Read Part 3.)