Understanding Remaining Performance Obligations in SaaS

Remaining Performance Obligation

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.

I use HubSpot often as an example in my courses at TheSaaSAcademy.com.

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.

RPO at the time of booking

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.

RPO at time of first invoice

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.

RPO after one month of revenue recognition

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

One Reply to “Understanding Remaining Performance Obligations in SaaS”

  1. 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.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.