Metrics that provide forward-looking visibility are golden in SaaS companies. Remaining performance obligations (RPO) is a relatively new revenue metric, but it’s a fascinating combination of important SaaS concepts.
RPO’s are a required disclosure for US public companies, and I believe it’s popularity will gain in private SaaS. Let’s dive into the importance of deferred revenue, invoicing, and contracting in our SaaS business and how this translates into remaining performance obligations.
What is a Remaining Performance Obligation (RPO)
A remaining performance obligation (RPO) represents the total value of contracted products and/or services that are yet to be delivered to our customers. It’s a forward-looking metric and provides visibility into future revenue.
It was born from the new revenue standard in ASC 606. Public companies are required to disclose their RPO per ACS 606-10-50-13 – Transaction Price Allocated to the Remaining Performance Obligations.
Snowflake (SNOW) defines RPO’s as “the amount of contracted future revenue that has not yet been recognized, including (i) deferred revenue and (ii) non-cancelable contracted amounts that will be invoiced and recognized as revenue in future periods.”
Salesforce (CRM) defines RPO’s as the “contracted revenue that has not yet been recognized and includes unearned revenue and unbilled amounts that will be recognized as revenue in future periods.”
And for good measure, MicroStrategy’s (MSTR) defines RPO’s as “all future revenue under contract and includes deferred revenue and advance payments and billable non-cancelable amounts that will be invoiced and recognized as revenue in future periods.”
There are two components required for the RPO calculation. First, we need our deferred revenue balance. Second, we need the contracted but unbilled revenue balance.
Selected Public Company RPO Definitions:
- Snowflake – the amount of contracted future revenue that has not yet been recognized, including (i) deferred revenue and (ii) non-cancelable contracted amounts that will be invoiced and recognized as revenue in future periods.
- Salesforce – ontracted revenue that has not yet been recognized and includes unearned revenue and unbilled amounts that will be recognized as revenue in future periods.
- MicroStrategy – all future revenue under contract and includes deferred revenue and advance payments and billable non-cancelable amounts that will be invoiced and recognized as revenue in future periods.
How to Calculate Your RPO
The RPO calculation requires two inputs. We need our deferred revenue balance and the unbilled amounts from our multi-year contracts.
If we have revenue recognition in place, we can find the deferred revenue amount in the liabilities section of our balance sheet. Deferred revenue is updated every month when we compile our monthly financial statements.
The second component, unbilled revenue, requires detailed tracking of what has not yet been invoiced on our multi-year contracts. If multi-year contracts are involved, then most likely our sales team uses CRM software to track our bookings.
Unbilled revenue amounts require contract by contract tracking of un-invoiced revenue amounts from active customer contracts. This highlights the importance of the opportunity setup in our CRM system, CRM data integrity, and subscription management systems.
The RPO formula requires two inputs:
- Deferred Revenue
- Unbilled Revenue
RPO Formula and Example
Let’s walk through an RPO example from booking to revenue recognition.
Scenario: 3 year contract for a subscription product. $120K ARR per year. $360K total contract value (TCV).
1) At the time of the booking in January. No invoicing or revenue recognition yet. We booked a $360K TCV deal.
2) In February, we invoice the customer on February 1 for a February 1 subscription start date. I’m leaving ARR Booked and TCV on the chart. But once the deal is booked, those value should not change and should remain only in the January bookings report.
Unbilled revenue drops by the invoiced amount but deferred revenue increases by the invoice amount.
3) It’s early March now and we are closing February’s books. We apply revenue recognition to $120K invoice. This pulls $10K from deferred revenue (balance sheet) to revenue on our SaaS P&L.
Invoiced and unbilled revenue remain the same. Deferred revenue and the RPO balance drop by the revenue recognition amount.
Why Are RPO’s Important in SaaS
In the SaaS world, we talk about bookings a lot. Bookings are a non-GAAP term that represent the value of executed contracts between us and our customers. Bookings drive our revenue and are an important input into our revenue forecasts.
If our bookings velocity increases (assuming decent retention), this should drive our revenue higher. Any metric that provides forward-looking visibility into our business is a valuable metric for SaaS operators, investors, and our Board.
Remaining performance obligations help with forward-looking visibility and provide insight into the stickiness of our product. Public company disclosures of RPO numbers include the duration over which the RPO will be recognized. We can monitor this for trends in contract duration. We can also monitor the RPO dollar trends.
RPO has less meaning if we do not know contract durations.
RPO’s Provide Additional Revenue Context:
- Forward-looking revenue metric to help with revenue trajectory
- Stickiness of the product
- Highlights importance of multi-year renewal conversations
- Formalizes tracking of deferred revenue, bookings, and unbilled revenue.
RPO and Private SaaS
In private SaaS I don’t see the RPO metric being used much, if at all. At US public companies, it’s a required financial disclosure in their financial statements filed with the SEC. However, I believe the RPO metric will trickle down to private SaaS and smaller SaaS companies as a forward-looking revenue metric.
Just as we talk about backlog in our professional services group, the RPO metric is formalizing our software backlog. Previously, software backlog might have only meant customers waiting to go live.
Depending on our revenue recognition policies and payment terms, RPO expands the meaning in progress customers installs to revenue waiting to be billed in active customer contracts.
Actions Items
Remaining performance obligations are an important metric for public SaaS companies to track. I believe it will make its way down to private SaaS as a standard revenue metric.
It highlights the importance of revenue recognition, deferred revenue, unbilled revenue, and our contracting process. It also provides great insight into the future trajectory of our revenue and the stickiness of our product.
RPO Template Download
I have worked in finance and accounting for 25+ years. I’ve been a SaaS CFO for 9+ years and began my career in the FP&A function. I hold an active Tennessee CPA license and earned my undergraduate degree from the University of Colorado at Boulder and MBA from the University of Iowa. I offer coaching, fractional CFO services, and SaaS finance courses.
Good distinction, Ben. I remember when I was CEO of a public company, this was a BIG Deal and hard to do. I have not seen many private companies pay attention to this yet–maybe because most of the companies I work with and/or know are still on monthly or annual contracts. Multi-year deals are less common? But, obviously, with 606, we should all be working our way to providing this visibility. Shameless plug: Maxio does provide this capability in our reporting as part of the overall Rev Rec and Operating metrics reporting.
Great article, even though this comment is well over a year late! We are focusing on this more and more at my private SaaS company. Anything I’ve seen about RPO, specifically the unbilled/revenue backlog portion of it, specifically focuses on multi-year contracts. However, revenue backlog would also exist within a 1-year software contract as well unless I am missing something. Assume a 1-year contract for $12,000 to keep it simple, and rather than having full payment required upfront, the contract terms include quarterly payments in advance. So upon contract signing, the first payment of $3,000 would be invoiced, and that amount goes into AR and deferred revenue to start. But the additional $9,000 of revenue to be invoiced later in the contract year would not yet go into either AR or Deferred Revenue. Are a lot of private SaaS companies just throwing this all into Deferred Revenue right away? Just curious how others approach this.
Hi Rich, good point! I’d say, technically, this would increase your RPO. I’d have to read the accounting guidance more on contracts less than one year, but I think this gets to the heart of RPO.