Track and grow your ARR →
Unlock CFO-grade clarity into your SaaS metrics with Equals.
The final consideration in defining ARR is determining what object to model your reporting off—invoices or subscriptions. Let’s walk through both models’ pros and cons to determine which is right for you.
Subscriptions are generally easier to work with because they have fewer edge cases than invoices. They’re also a better proxy for when a customer becomes active (i.e., subscription created) or inactive (i.e., subscription cancelled).
The biggest challenge to working with this object is ensuring you have the right historical event data to know exactly when and how changes were made to a subscription. Depending on your billing software, this may require the use of webhooks or snapshots of a data warehouse. Once you’ve established a process to track historical event data, you can accurately model a customer’s spending at any given time.
Because accessing historical event data on subscriptions can be challenging, many companies model ARR reporting off invoices in the early days.
Invoices provide a full historical archive of customer charges. Every invoice has a Start and End date, making it easy to create a time series view of how spend has evolved over time at the customer level.
While the time series view is easier to produce using the invoice-based method, it does come with a few drawbacks. Let’s walk through some of the most common cases below.
Not surprisingly, using the invoice-based method requires sending an invoice to start tracking ARR. However, it’s certainly not uncommon for there to be a delay between creating or updating a subscription and sending an invoice to a customer. Addressing this delay in invoicing after the fact may require you to back-date invoices, which can cause your historicals to restate.
How do you avoid gaps in reporting when invoices are delayed or haven’t been issued?
First, automate invoicing as much as you can. Second, if manual invoices need to be sent, create SLAs with your billing team on how quickly invoices will be issued after an event. This is a critical step in locking month–end or quarter–end reporting results. Be sure to communicate these timelines to other teams relying on ARR reporting and instruct them not to pull any ARR reporting until invoicing is complete.
How do you compare spend on an apples-to-apples basis when customers are invoiced on different schedules?
Most businesses have customers at different payment frequencies: monthly, quarterly, or annually.
Adjust every invoice down to the monthly level and annualize from there. This looks something like the below:
In most cases, only one invoice per subscription at a time should be honored to avoid double counting.
How do you avoid double counting when a corrective invoice was issued to resolve a mistake in a prior invoice?
In most cases, only one invoice per subscription at a time should be honored to avoid double counting.
In cases where multiple invoices were issued on the same day, it’s usually safe to honor the last invoice created on that date.
In cases where a backdated invoice was issued, we typically recommend counting the corrective invoice on its issue date (rather than its backdated start date) to avoid restating historicals. Hopefully, the backdated invoice volume will be low, allowing you to review each instance with your billing team to make a final call. If you find this is a more regular issue, an upstream operational change will likely be required to reduce the volume.
Here’s an example of a corrective invoice fix:
Step 1: Create the field
ROW_NUMBER() OVER (
PARTITION BY customer_id, period_start_date
ORDER BY invoice_created DESC
) AS invoice_number_by_date
Step 2: Apply a filter
Here’s an example of a backdated logic fix:
CASE WHEN invoice_created > invoice_period_start THEN invoice_created END AS period_start_clean
How do you avoid double counting when a prorated invoice was issued to resolve a mistake in a prior invoice?
The second common cause of invoice overlap is from amendment invoices. These come as a result of a customer’s subscription changing midway through the service period.
Here’s an example:
You should send prorated invoices automatically to bridge the gap between the amendment and the next scheduled invoice. This is the most optimal solution for reporting and cash flow for your business.
There are two things we suggest doing when sending prorated invoices:
Now that we’ve covered all the factors to consider when defining ARR for your business, we can move on to the fun part—building it.
Next topic