Revenue Recognition Calculator (IFRS 15 / ASC 606)

Day-exact revenue schedules for time-based obligations. Produces the month-by-month, quarter-by-quarter, or year-by-year recognition that IFRS 15 §35 and ASC 606 require for over-time revenue. Free. Instant. Auditor-ready output.

Why revenue recognition isn't just "record it when you invoice"

Revenue is earned when the obligation is delivered, not when the cash arrives. If you invoice EUR 12,000 on January 1 for a 12-month SaaS subscription, you haven't earned EUR 12,000 of revenue in January. You've earned approximately one-twelfth of it — and day-exact, for the precise accounting, 31/365 of it: EUR 1,018.85. The other EUR 10,981.15 is a liability (deferred revenue).

This is the core mechanic of accrual accounting, enforced by IFRS 15, ASC 606, HGB, and Swiss OR. The calculator below produces the schedule you need.

Worked example — SaaS annual contract

Customer signs a SaaS contract on 2024-03-15, running 12 months. Invoice: EUR 12,000. Your fiscal year ends December 31.

  • 2024 revenue: March 15 to Dec 31 = 292 days. (292 / 365) × 12,000 = EUR 9,600.00
  • 2025 revenue: Jan 1 to March 14 = 73 days. (73 / 365) × 12,000 = EUR 2,400.00
  • Total: EUR 12,000.00 (sums exactly)

At year-end 2024, your balance sheet shows EUR 2,400.00 in deferred revenue. Your 2024 P&L shows EUR 9,600.00 in SaaS revenue. Clean, defensible, IFRS 15-compliant.

The five-step model in practice

IFRS 15 and ASC 606 both use a five-step model for recognition. BillSplitter handles step 5 (recognize as obligations are satisfied) for time-based obligations. You still do steps 1-4 manually — that's contract analysis, not math:

  1. Identify the contract. Standard purchase contract with enforceable terms.
  2. Identify the performance obligations. For a SaaS subscription: "provide software access for 12 months". One obligation, satisfied over time.
  3. Determine transaction price. EUR 12,000 per the contract.
  4. Allocate to obligations. 100% to the single SaaS obligation.
  5. Recognize as satisfied. Day-exact proration over the 365-day service period. This is where BillSplitter runs.

What the output looks like

BillSplitter produces a table: per-period (year / quarter / month), days in period, percentage share, amount. You can export as PDF or Excel. Attach it to your journal entry:

Debit  Accounts receivable         12,000.00
Credit Deferred revenue (2024)       -9,600.00
Credit Deferred revenue (2025)       -2,400.00

(at signing — cash/AR moves full amount,
 revenue recognition split over periods
 per attached BillSplitter schedule)

Related tools

Frequently asked questions

What is revenue recognition?

It's the accounting principle that revenue should be recorded in the period it's earned — when the good or service is delivered — not necessarily when cash is received. For a 12-month SaaS contract invoiced upfront, revenue is recognized one month at a time as the service is delivered.

What standards govern revenue recognition?

IFRS 15 (Revenue from Contracts with Customers) internationally, ASC 606 in the US. Both converged on the same five-step model. In DACH additionally: HGB §252 (Realisationsprinzip), Swiss OR Art. 958b (Periodenabgrenzung), Austrian UGB §201.

What's the five-step model?

Under IFRS 15 / ASC 606: 1) identify the contract, 2) identify the performance obligations, 3) determine the transaction price, 4) allocate the transaction price to the obligations, 5) recognize revenue as each obligation is satisfied. Day-exact prorating is the standard method for step 5 when an obligation is satisfied over time.

When is revenue recognized 'over time' vs 'at a point in time'?

Over time: subscriptions, rent, maintenance contracts, service fees for ongoing work. Point in time: product sales, one-off consulting deliverables, license transfers. IFRS 15 §35 lists the specific criteria — if any of three apply (customer receives benefits as you perform; customer controls the WIP asset; you have an enforceable right to payment for progress), recognize over time.

How does a deferred revenue schedule work?

Deferred revenue is the liability you recognize when you've invoiced but not yet delivered. It reduces over time as you recognize revenue. A CHF 12,000 annual invoice creates CHF 12,000 of deferred revenue at invoicing; each month you recognize ~CHF 1,000 of revenue and the deferred revenue liability drops by the same amount. BillSplitter produces the schedule in one click.

What if the service spans different fiscal years?

That's the common hard case. The schedule crosses a year-end. You need a day-exact allocation for year-end close — some revenue stays as 'deferred revenue' (liability) on the balance sheet, the rest hits 'revenue' on the income statement. BillSplitter handles calendar-year and custom-year-end fiscal years.

Is this tool a substitute for NetSuite / SAP revenue recognition?

No. Enterprise systems automate the ongoing schedules, integrate with billing, and handle thousands of contracts. BillSplitter is for one-off calculations, audit verification, and small teams. If you're running a 10-contract SaaS shop, it's enough. If you're Salesforce, you need enterprise software.

Operated by Siempi AG (Canton of Zug, Switzerland). See the imprint and privacy policy. Last reviewed: 2026-04-23.