Revenue recognition
Also called: Rev rec, Revenue accounting
Recording revenue in the period it is earned by delivering the service, rather than when the customer was invoiced or paid.
Revenue recognition determines when revenue appears in the P&L. The governing principle under both ASC 606 and IFRS 15 is that revenue is recognised as control of the promised service transfers to the customer — not when you invoice, and not when you get paid.
For a straightforward SaaS subscription this is undramatic. A $120,000 annual contract invoiced up front in January recognises $10,000 per month for twelve months. The other $110,000 sits as deferred revenue on the balance sheet and unwinds as you deliver.
Try it on your own numbers with the revenue recognition schedule calculator.
Where SaaS contracts stop being straightforward
- Multiple performance obligations. A contract bundling the subscription with implementation services and training may contain several distinct promises, each recognised on its own pattern.
- Usage charges. Generally recognised as consumed, in the period of consumption — so usage revenue is never deferred in the way a prepaid subscription is.
- Ramp deals. Where the same service is delivered throughout, revenue is typically recognised evenly across the term even though billing steps up — creating a contract asset early in the term that reverses later.
- Minimum commitments. An unused commitment is generally recognised when the obligation to deliver against it expires, not rateably.
- Mid-term changes. Upgrades, downgrades and cancellations require the remaining schedule to be recalculated from the change date forward.
- Discounts. A discount on a bundle must be allocated across the obligations in it, usually in proportion to standalone selling price.
Why it is so often a spreadsheet
Revenue recognition needs contract terms, billing data and delivery status together. When quoting lives in a CRM, billing in a subscription tool and the ledger in an accounting package, no single system has all three — so the schedule gets rebuilt by hand each month, and every mid-term change makes last month’s version wrong.
Automating it is less about the calculation, which is not difficult, than about the contract data being in one place to calculate from.
Stop calculating this in a spreadsheet
Bunny computes SaaS metrics, revenue schedules and retention from your live billing data — because quoting, subscriptions, usage and invoicing all sit in one system.