← Insights Playbook

Revenue recognition policy starter

A written policy turns a hundred individual judgment calls into one consistent, defensible position. It is the document an auditor asks for first. Here is the outline you can put on paper in an afternoon, then sharpen against your own contracts.

A revenue recognition policy is not paperwork. It is the document that turns a hundred individual judgment calls into one consistent position you can defend. It is the first thing an auditor asks for, and the reference an investor's analyst leans on when they rebuild your top line. Most early companies recognize revenue by habit and instinct. A short, written policy replaces both with something you can stand behind.

The short version

  • A written ASC 606 policy turns scattered judgment into one consistent, defensible position.
  • It follows the five-step model, applied to each of your revenue streams.
  • The judgment that matters for SaaS: distinct obligations, price allocation, variable consideration, gross versus net.
  • Write it before the audit, not during. The memo is what an auditor and an investor expect to see.

Why a written policy earns its keep

Without a policy, every unusual contract is decided in the moment, by whoever books it, and those decisions drift over time. With one, the judgment is made once, in principle, and applied the same way every time. That consistency is exactly what an audit tests and what diligence rewards. The policy is also your defense: when an auditor questions a position, "here is our written, reasoned basis" ends the conversation that "that is how we have always done it" only prolongs.

The model it follows

Every policy is built on the same five-step framework. Your job is not to reinvent it, but to apply it to your specific revenue streams.

Exhibit · The five-step model (ASC 606)
1 2 3 4 5 Contract Obligations Price Allocation Recognize

Identify the contract and the distinct performance obligations, set and allocate the transaction price, then recognize revenue as each obligation is satisfied.

How your revenue actually recognizes

Applied to a typical SaaS company, the five steps resolve into a handful of patterns. Your policy should state each one explicitly.

Exhibit · Recognition by revenue stream
Revenue stream
How it is recognized
Subscription
Ratably over the contract term, as access is provided.
Usage & overage
As consumed, in the period the usage occurs.
Implementation & setup
Over the term if not distinct; at completion if it is.
Professional services
As delivered, typically over time against progress.
One-time fees
At the point the related obligation is satisfied.

The judgment that decides several of these is whether an item is a distinct performance obligation. Document that reasoning, not just the conclusion. Illustrative.

Three SaaS-specific calls sit underneath that map and deserve their own paragraphs in the policy. Variable consideration: how you estimate usage, credits, and discounts, and the constraint you apply. Standalone selling price: how you allocate a bundled contract across its obligations when you do not sell each separately. Principal versus agent: whether you record revenue gross or net when a third party is involved. These are where reasonable companies differ, which is exactly why your position needs to be written down.

Allocation, in one example

Sell a $90k annual subscription bundled with implementation invoiced at $10k, for $100k total. If you normally sell that implementation at a $20k standalone price, ASC 606 will not let you recognize it at the $10k you billed. The $100k is allocated on relative standalone selling price: roughly $81.8k to subscription and $18.2k to implementation. The bundle discount is shared across both obligations, not parked wherever it is convenient.

What the document should contain

A defensible policy is short, but it covers the ground an auditor will walk. Use this as the skeleton, then write your reasoning into each section.

Exhibit · A starter skeleton
Scope & revenue streams"This policy governs revenue recognition under ASC 606 for [Company]'s subscription, usage, and services revenue."
Performance obligations"Each contract's distinct obligations are identified as: subscription access, implementation, and support."
Transaction price & variable consideration"Usage, credits, and discounts are estimated using [method] and constrained to amounts highly probable not to reverse."
Allocation (SSP)"Where items are sold together, price is allocated on relative standalone selling price, estimated by [approach]."
Recognition"Subscription is recognized ratably over the term; services as delivered; usage as consumed."
Principal vs agent"For [arrangement], the Company is the [principal/agent] and records revenue [gross/net]."
Contract costs"Incremental commissions are capitalized and amortized over [period] under ASC 340-40."
Presentation & disclosure"Amounts billed ahead of recognition are deferred revenue; amounts recognized ahead of billing are contract assets."

A skeleton, not a finished policy. Replace the brackets with your facts and write the reasoning behind each call. Illustrative.

The test of a good policy

A controller you hired tomorrow could pick up the policy, apply it to a contract they have never seen, and reach the same answer you would. If they cannot, the policy is not finished.

Draft it now, while the contracts are few and the judgment is fresh. A policy written in calm is worth far more than one assembled under the pressure of a first audit.

NC

Nicole Cox

Founder, Cox & Co Advisory

Fractional controller and CFO for B2B SaaS founders. Nicole brings public-company finance discipline to the moments that decide a company: a first raise, a first audit, an exit. The senior seat a bookkeeper cannot fill and an auditor is barred from filling.

Need a policy you can defend?

A working session turns your contracts into a written, reasoned ASC 606 position, the one an auditor accepts and an investor trusts. A sample of the work, not a sales call.

Request a consultation