This section provides examples of how Orb can help you manage revenue recognition for your business. The examples are based on a fictional company, FileCo, that provides a cloud-based file storage service. FileCo has a subscription-based business model, and its customers pay monthly for access to the service.
For the purposes of this example, suppose you’re FileCo and you’re using Orb for billing and revenue recognition. Note that this series of examples makes some assumptions about how FileCo thinks about its service obligations for the sake of illustrating common cases.
FileCo sells a file processing service, and you currently offer the following monthly plan:
Basic Monthly ($10/mo).
When a customer signs up for your service on April 1st, Orb will generate an in-advance invoice for $10. This revenue is billed but it’s not yet eligible to be recognized and is instead considered deferred revenue. After each subscription day passes, Orb will recognize approximately $0.33 for specifically the platform fee, representing the prorated amount of the $10 corresponding to 1/30th of the service period. At the end of the invoice service period, Orb will have recognized the full $10 for the platform fee.
Suppose now that you find you need to add a usage-based component to your pricing in addition to the platform fee, because of variable costs. Let’s add a usage-based component.
Basic Monthly w/overages ($10/mo, and the cost of processing each file is $0.50/file)
Suppose a customer processes 800 files over the course of April, leading to $400 of usage-based charges billed in-arrears on the May 1 invoice. As expected, $400 of usage-based revenue attributed to file processing will be recognized during the month of April. More specifically, Orb will recognize revenue to the specific day on which usage occurred, so April 2 may have $100 of recognition on a single day if 200 files were processed on April 2.
Note that if you allow subscriptions to be aligned to a date other than the first of the month, Orb will correctly apply the rules to the partial months. For example, subscriptions started on April 10 will recognize 20 days of fixed-fee revenue in the April accounting period, and 10 days in May. Similarly, usage-based recognition would be split between April and May based on the day and month the usage occurred.
Let’s take an example of a mid-period cancellation.
Here’s how Orb’s revenue recognition system handles the cancellation:
For larger customers, say you want to offer an annual plan, providing a discount in the per-file charge:
Pro Annual ($500/year). The cost of processing each file is $0.02/file for the first 1,000 each month, and each file thereafter is $0.01/file. Overages are charged monthly.
If a customer signs up for your service on January 1, Orb generates the in-advance invoice for $500 and starts to recognize roughly $1.37 each day of the corresponding year. Note that $1.37 is derived by prorating the annual platform fee to its daily value. If your customer were allowed to cancel their subscription at any time during the annual service period, Orb would create a credit note against the $500 invoice which would exactly match the portion of the $500 that hadn’t yet been recognized.
Each day, Orb will continue to recognize revenue based on the cost associated with each file’s usage-based charge. In any given month, a file may lead to more or less revenue depending on whether 1,000 files have been processed in that month – this will be treated accordingly in the revenue recognition results.
In order to provide more flexibility to your offering, you’ve started to allow customers to buy “file credits” at $0.03 per credit as long as the commitment is at least 300 file credits. These credits expire in one year, and can be used at any time within that year.
Suppose a customer purchases 8000 credits on March 15, at the standard price of $240. As soon as these credits become effective, $240 is recorded as deferred revenue. If 2000 credits are used in the month of March, then $60 of revenue will be recognized in March. This is calculated by multiplying 2000 by the cost basis of $0.03/credit. Suppose that the customer does not use the service for any future periods, and the credits expire the following year in March. Orb will not recognize any revenue until the following March, where the remaining $180 will be recognized.
Note that in this simple example, there’s exactly one 8,000 credit block all purchased at the same time. Orb will properly handle revenue recognition when there are multiple blocks with separate cost bases, potentially of different currencies, all expiring at different times. Importantly, recognition can happen at any arbitrary date in the month – whether this is due to usage (and so a block was depleted), or expired.
At FileCo, you’re finding that there are often customers that require a large upfront implementation to support their file type for processing. You want to experiment with charging a one-time $10,000 fee in exchange for a statement of work around implementing their file format.
This $10,000 fee will be recognized as of your customers’ subscription start date as a point-in-time fee.