River
Y CombinatorBacked by Y Combinator
FREE TEMPLATE

Revenue Recognition Policy Template

Every contract read for the determinations it forces, every rule matched to the contracts it governs, and a coverage score on the gap.

Free download  ·  No account needed

Policy Coverage

[Company] — policy scored against [__] signed contracts

The join runs both ways. Down the rows, which determinations have a rule. Down the second block, which rules have contracts. Both directions produce deletions.

DeterminationContracts where it must be decidedDecided by the policyNot decidedRule that decides itWhere the gap sits
Number of performance obligations
Principal or agent
Over time or point in time
Measure of progress
Enforceable contract term
Material right
Coverage 

Three states, and only two of them are visible in a straight read

Decided by one ruleThe policy works here and the preparer needs nobody
Decided differently by two rulesFindable by reading the policy, because the two rules contradict
Not decided at allInvisible. Nothing in the document points at the hole

Only the contracts know about the third state, which is why they get read before the policy does.

A revenue policy fails quietly. It contains no error a reader can point at, only a silence, and the silence sits where the hardest judgement in the contract population lives. Calderwood Systems had a fourteen rule policy that read well. Scored against its 68 signed contracts, it decided 165 of the 250 determinations those agreements force. The other 85 were not wrong. They were absent, and nothing in the document pointed at them.

The count runs both ways. Forward, four of the fourteen rules governed no contract at all, including percentage of completion language in a company that has never had a construction contract. Backward, six resale arrangements had no gross versus net rule of any kind. Those six are billed at 2,140,000 a year against 312,000 retained, so the two answers sit 1,828,000 apart, which is 9.9 percent of reported revenue. The SEC staff asked eBay this exact question about its revenue sharing arrangements.

Coverage came out at 66 percent, with 40 of the 68 contracts carrying at least one open determination and 13,352,000 of revenue behind them. The deferred revenue rollforward prices it: 4,080,000 of the 5,420,000 closing balance moves on an answer nobody has given. Reach the conclusion on one agreement with the ASC 606 contract memo, and run the whole exercise on books closed through the monthly close pack. The same register is what a billing process should invoice against, since a contract term missed by revenue recognition is usually missed at billing too.

Four of the sheets, filled in for one population

Contract Register, Policy Coverage, Performance Obligation Mapping and Deferred Revenue Rollforward.

Contract Register

Calderwood Systems, Inc., 68 active contracts at 31 December 2026. An illustrative population. Grouped only where all six determinations resolve the same way, which is why implementation bundles are their own group.

GroupContractsAnnual revenueTermination clauseEnforceable termObligationsPrincipal or agentMeasure of progressMaterial rightUncovered
Standard SaaS346,120,00030 days for convenience30 days1PrincipalRatable8 carry a renewal discount8
Multi-year SaaS with implementation145,460,000Mixed, 11 distinct formsNot determinedNot determinedPrincipalNot namedNone42
Usage based61,180,00030 days, one committed minimum5 of 61PrincipalConsumption4 carry a tier discount5
Marketplace resale62,140,00030 to 60 days30 to 60 days1Not determinedn/aNone6
Perpetual licence with support52,210,000Support cancellable annuallyNot determined2PrincipalNot namedNone15
Enterprise with acceptance31,290,000Cause onlyNot determinedNot determinedPrincipalNot namedNone9
TOTAL6818,400,000      85

Revenue ties to the income statement, which is the only thing proving the register is complete. The uncovered column is the output: 85 determinations across 40 of the 68 contracts, and none of them is findable by reading the policy.

Policy Coverage

The join, run in both directions. Fourteen numbered rules extracted from the policy dated 14 March 2022, scored against the register above.

DeterminationMust be decidedDecidedNot decidedRule that decides itWhere the gap sitsConsequence if left open
Number of performance obligations685117Rule 2, single subscription obligation14 multi-year, 3 enterpriseImplementation fee released on the wrong pattern across 6,750,000 of contract value
Principal or agent606NoneAll 6 resale arrangements2,140,000 billed gross against a net position of 312,000
Over time or point in time68635Rule 3, subscription over time5 perpetual licenceLicence may be point in time while support is over time
Measure of progress28622Rule 4, usage on consumption14 multi-year, 5 perpetual, 3 enterpriseNo input method named, so no two preparers reach the same number
Enforceable contract term684523Rule 6, standard form 30 day notice14 multi-year, 1 usage, 5 perpetual, 3 enterpriseA stated term that is not the enforceable one changes the transaction price
Material right12012None8 standard SaaS, 4 usageRenewal discounts never assessed and never allocated
TOTAL2501658566% coverage40 of 68 contracts13,352,000 of revenue behind at least one open determination
Rules with no contract behind themContracts governedRecommendation
Rule 9, percentage of completion on fixed price construction type contracts0Delete
Rule 11, bill and hold arrangements0Delete
Rule 12, consignment sales0Delete
Rule 14, sublicensing of third party intellectual property0Delete
4 of the 14 rules as written0Governs nothing and makes the rest read as boilerplate

Two determinations have no rule at all, and they are the two the population would have flagged on day one: gross versus net on a resale book, and whether a renewal priced below list is an option the customer paid for.

Performance Obligation Mapping

The contracts carrying an open determination, promise by promise, including the promises nobody invoices. Allocation is relative standalone selling price.

ContractCustomerObligationDistinctInvoicedStandalone priceBasisAllocatedDifferenceStatus
CW-2024-002Rowntree IndustrialImplementation servicesNot determined180,000210,000Observed across 12 similar engagements191,578.95+11,578.95Open. Distinctness undecided
CW-2024-002Rowntree IndustrialSubscription, 36 monthsYes1,380,0001,500,000List price 500,000 a year1,368,421.05(11,578.95)Depends on the row above
CW-2024-002 Contract total 1,560,0001,710,000 1,560,000.000.00Allocation ties. The determination does not
CW-2024-018Grantham MarketplaceResold platform access, measured grossYes540,000540,000Amount billed to the end customer540,000.000.00Open. Gross or net undecided
CW-2024-018Grantham MarketplaceThe same obligation, measured netYes78,70078,700Commission retained78,700.00(461,300.00)One obligation, two answers, 461,300 apart
CW-2025-004Ashcombe LogisticsSubscription, 12 monthsYes180,000180,000List price175,324.68(4,675.32)Allocated after the renewal option
CW-2025-004Ashcombe LogisticsOption to renew 20 percent below listNot determined04,800Discount value on the expected renewal4,675.32+4,675.32Open. Material right undecided
CW-2023-044Stonebeck ManufacturingPerpetual software licenceYes1,850,0001,850,000Stated in the order form1,850,000.000.00Open. Functional or symbolic undecided
CW-2023-044Stonebeck ManufacturingAnnual support and updatesYes610,000610,000Renewal price observed for 3 years610,000.000.00Open. No input method named
CW-2025-012Ilsington Data CoPlatform access on consumptionYes203,000203,000Rate card203,000.000.00Closed. Every determination decided

The Ashcombe option is invoiced at nothing and still takes 4,675.32 of the transaction price if it is a material right. That is the row an invoice-driven schedule can never produce, because the promise has no line on the invoice to be produced from.

Deferred Revenue Rollforward

By the same contract groups, tied to the balance sheet at both ends, with the column that says how much of the closing balance moves on a question nobody has answered.

GroupOpeningBillingsRevenueClosingReleased from openingClosing behind an open determinationWhich determination moves it
Standard SaaS1,520,0006,340,0006,120,0001,740,0001,520,000424,000Material right on the 8 contracts with a renewal discount
Multi-year with implementation1,910,0005,880,0005,460,0002,330,0001,780,0002,330,000Distinctness. Either the fee releases on its own pattern or it merges into the subscription
Usage based62,0001,196,0001,180,00078,00062,00054,000Material right on the 4 with a tier discount or shortfall credit
Marketplace resale02,140,0002,140,000000Balance is nil. Gross or net moves revenue by 1,828,000 and leaves this column alone
Perpetual licence with support618,0002,690,0002,210,0001,098,000478,0001,098,000Whether the licence is functional and releases at a point in time
Enterprise with acceptance70,0001,394,0001,290,000174,00070,000174,000Whether acceptance is a substantive gate on transfer of control
TOTAL4,180,00019,640,00018,400,0005,420,0003,910,0004,080,00075.3% of the closing balance
Agrees to the balance sheet31 Dec 2025 Income statement31 Dec 202693.5% of opening 270,000 of the opening balance never released

Both ends tie, which is where most rollforwards stop and where this one starts. Three quarters of the closing balance depends on an answer nobody has given, and 270,000 of last year's deferral is still sitting there against a promise nobody can now identify.

What's in the pack

01

Contract Register sheet

One row per executed contract with the termination clause in its own words, plus the six determinations that agreement forces, each answered or marked not determined. Never blank, because a blank reads as decided.

02

Policy Coverage sheet

The join run both ways: determinations with no rule, and rules with no contracts. Coverage comes out as a percentage, and both blocks produce a deletion or an open item.

03

Performance Obligation Mapping sheet

Every promise in the contract including the ones nobody invoices, with the standalone selling price, the observable evidence behind it, the allocation and the difference from what was billed.

04

Open Determinations sheet

The gaps ranked by the revenue standing behind them, each with the evidence it needs, the person who owns it and the date it closes. First one out is worth 1,828,000.

05

Deferred Revenue Rollforward sheet

Opening plus billings less revenue by contract group, tied to the balance sheet at both ends, and reported alongside the ARR schedule so the metric and the accounts move together.

06

How a Policy Is Tested

The six recurring determinations and why coverage is countable, worked against three SEC staff comment letters including one asking Tempus Labs how an obligation is defined and priced.

07

Revenue Policy

The rewritten policy, organised by determination rather than by the five steps, each section naming the contract groups it governs and the open questions it leaves named as open.

08

Contract Review Checklist

Fifteen minutes on a standard form and an hour on anything negotiated, with the five clause patterns that stop the review and route it to technical accounting.

09

Deferred Revenue Note

What the rollforward means once it ties, why a determination can be the largest in the book and leave the balance untouched, and where it meets balance sheet substantiation.

10

Space rule

Every rule names its contracts. It governs every prompt here, and it is why a rule governing nothing comes out rather than being marked not applicable and left in.

How to use it

  1. 1

    Open in River, or download it

    Open the pack in River and let the agent build it from your own agreements, or download the blank Word and CSV files instantly with no account.

  2. 2

    Send the executed contracts

    Order forms, master agreements, statements of work and every amendment. Scanned PDFs are fine. A billing export on its own is not, because the terms live in the agreements.

  3. 3

    Register first, policy second

    Every contract gets a row and six answers. Revenue subtotals tie to the income statement, which is the only thing proving the register is complete.

  4. 4

    Score, rank and rewrite

    Coverage as a percentage, the gaps ranked by revenue with an owner and a date, then the policy rewritten from the register and shorter than the one it replaces.

Frequently asked questions

Is this template free?

Yes, all of it. Word documents and CSV sheets, no signup, no card. Edit with AI is a separate optional route for anyone who would rather hand over a folder of contracts than retype one. Everything else River publishes sits in the template library.

Why score a policy against contracts instead of against the standard?

Because a policy written from the standard is internally consistent and can still be silent on the largest judgement in the book. Scoring against the contracts is the only way to find a determination that has no rule, since nothing in the document itself points at the hole.

What are the six determinations?

Number of performance obligations, principal or agent, over time or point in time, measure of progress for anything over time, the enforceable contract term, and whether a customer option is a material right. The SEC staff put three of the six to MDC Partners in a single comment.

Does this conclude on my contracts?

No. It establishes what has to be decided, what each answer is worth and in what order to reach them. Concluding on a single agreement takes evidence, a preparer and a reviewer, and that belongs in the ASC 606 contract memo instead.

Why does the enforceable term matter more than the stated term?

A thirty-six month order form with a costless exit on ninety days notice is a ninety day contract for measurement, which changes the transaction price and everything allocated from it. Read the termination clause, not the cover page, and copy it into the register verbatim.

What makes an option a material right?

It is a judgement, but the option itself is a fact and gets recorded either way. Renewal discounts are the most commonly missed, because they cost nothing at signature and appear on no invoice. The SEC staff raised this with eBay directly.

What format are the downloaded files?

Four .docx documents covering the test, the rewritten policy, the review checklist and the deferred revenue note, plus five .csv sheets, zipped into one file. They open natively in Word, Pages, Google Docs, Excel, Numbers and Sheets.

Find out what your policy does not decide

Download the blank pack as Word and CSV files, or open this exact pack in River and let the agent score your own policy against your own contracts.

Edit with AI