BlogFeature Guide

What Is Revenue Recognition? A Non-Accountant's Guide for 2026

Revenue recognition explained for founders, operators, and finance leads who are not accountants. Cash vs. accrual, ASC 606's five-step model, common patterns for SaaS, services, and project work, audit-trigger mistakes, and how modern accounting software handles it.

Davaughn White·Founder
13 min read

Revenue recognition is the accounting rule for when a business is allowed to record money on its books as revenue. The short version: revenue gets recorded when it is earned — when the work is delivered or the service is provided — not when the cash arrives in your bank account. A customer prepays $12,000 in January for a one-year subscription, you do not record $12,000 in revenue in January. You record $1,000 in revenue each month for twelve months as you actually deliver the service. The other $11,000 sits on the balance sheet as deferred revenue, a liability, until you earn it.

That is the entire concept. Everything else — ASC 606's five-step model, performance obligations, variable consideration, completed-contract method — is a more careful version of the same idea applied to messier real-world contracts.

This guide is for founders, operators, and finance leads who are not accountants. You will leave knowing what revenue recognition is, why it matters even if you are a five-person company, the five-step model auditors and investors will hold you to, the patterns for common business models (subscription, project, milestone, completed-contract), the SaaS-specific MRR/ARR mechanics, the service-business specifics, the mistakes that trigger audit findings, and how modern accounting software handles the bookkeeping so you do not have to maintain a parallel spreadsheet.

Why Revenue Recognition Matters (Even for a Five-Person Company)

If you only ever look at your bank account, revenue recognition feels like a paperwork problem. It is not. Three concrete reasons it matters even at small scale:

1. It is the difference between cash accounting and accrual accounting, and almost everyone outside your bank wants accrual. Investors, lenders, acquirers, and the IRS (above certain thresholds) want accrual financials. Cash accounting tells you what hit the bank last month. Accrual accounting tells you what the business actually earned and what it actually owes. Those are different numbers, and the gap can be enormous for any business that takes prepayments, sells annual contracts, or runs multi-month projects.

2. It is what makes your gross margin and unit economics real. If you book $12,000 of revenue in January for a January-through-December contract, your January gross margin is wildly inflated and your December margin is wildly understated. Every metric downstream — payback period, LTV, CAC ratio — is wrong. Recognizing revenue ratably as it is earned is what makes those numbers stable and comparable month over month.

3. It is what auditors, due-diligence teams, and the SEC look at first. Revenue recognition is the single most common source of accounting restatements and the single most scrutinized line item in a financial audit or M&A due diligence. Misstating revenue is not a paperwork error. It is the thing that kills deals and triggers SEC enforcement.

The takeaway: even if you have one bookkeeper and zero CFO, getting revenue recognition right from day one is cheaper than untangling it the week before a Series B close.

Cash vs. Accrual in One Paragraph

Cash accounting records revenue when cash is received and expenses when cash is paid. Accrual accounting records revenue when it is earned and expenses when they are incurred, regardless of when cash moves. Revenue recognition is fundamentally an accrual concept — it is the set of rules that defines "when is revenue earned." In the U.S., the controlling standard is ASC 606 (issued by the Financial Accounting Standards Board), which took effect for public companies in 2018 and for private companies in 2019. ASC 606 is the operating manual for revenue recognition for nearly every business that is not on a pure cash basis.

The ASC 606 Five-Step Model

ASC 606 reduces revenue recognition to five steps. They sound bureaucratic. They are not — they are a clean framework for thinking about any contract, no matter how strange.

  • Step 1 — Identify the contract with the customer. A contract for ASC 606 purposes is any agreement (written, verbal, or implied) that creates enforceable rights and obligations. A signed MSA is a contract. A clicked terms-of-service for a self-serve SaaS sign-up is a contract. A handshake on a 90-day consulting engagement, in most jurisdictions, is a contract. The questions are: are both parties committed, can the rights and payment terms be identified, and is collection probable.
  • Step 2 — Identify the performance obligations in the contract. A performance obligation is a distinct promise to transfer a good or service to the customer. A SaaS contract that bundles software access, onboarding, and a monthly customer-success hour may have one, two, or three performance obligations, depending on whether each promise is distinct in the context of the contract. This is the step that gets messy fastest in modern bundled deals.
  • Step 3 — Determine the transaction price. The total amount the customer is expected to pay, adjusted for variable consideration (discounts, rebates, refunds, performance bonuses, usage-based components), significant financing components, non-cash consideration, and consideration payable to the customer.
  • Step 4 — Allocate the transaction price to the performance obligations. If a contract has multiple performance obligations, the transaction price has to be split among them, typically based on each obligation's standalone selling price.
  • Step 5 — Recognize revenue when (or as) the performance obligation is satisfied. Some obligations are satisfied at a point in time (a one-time license delivery, a finished good shipped). Others are satisfied over time (SaaS access, ongoing service contracts). For over-time obligations, revenue is recognized using a method that reflects the pattern of transfer — typically straight-line for subscription access, percentage-of-completion for projects, or output-based for milestone work.

If you remember nothing else, remember this: identify the promises, price the bundle, split the price across the promises, and recognize each piece as you actually deliver it. That is ASC 606.

Common Revenue Recognition Patterns

Subscription (Straight-Line Over Time)

The most common pattern in modern software. The customer pays for a period of access — monthly, quarterly, annually — and gets a service throughout that period. Revenue is recognized ratably over the access period.

Example: $12,000 annual SaaS contract billed upfront in January. On the day cash arrives, you debit cash $12,000 and credit deferred revenue (a liability) $12,000. Each month from January through December, you debit deferred revenue $1,000 and credit revenue $1,000. By December 31, deferred revenue is back to zero and you have recognized $12,000 of revenue evenly across the year.

Project Work (Percentage-of-Completion)

Used for long-duration projects where the deliverable is one big thing — a custom software build, a construction project, a research engagement — and revenue is recognized as the work progresses, in proportion to how much of the project is complete.

Example: $200,000 fixed-fee software build. Project is estimated to take 1,000 hours. After month one, the team has logged 200 hours. The project is 20% complete by input measure, so $40,000 of revenue is recognized in month one regardless of how much was billed. The percentage-of-completion method requires reliable estimates of total project cost — if the estimates are unreliable, you may be forced to use a different method.

Milestone-Based

The contract specifies discrete deliverables, each with its own price, recognized when each milestone is delivered and accepted. Common in agency work, professional services, and clinical-trial-style research contracts.

Example: $90,000 brand redesign with three milestones — discovery ($20,000), design ($40,000), launch ($30,000). Each milestone has its own performance obligation. When the discovery deliverable is accepted, $20,000 of revenue is recognized. When design is accepted, $40,000. When launch is accepted, $30,000. Cash collection schedules and revenue recognition schedules diverge — you may be paid in installments that do not line up with milestone completion.

Completed-Contract Method

Revenue is recognized only when the entire contract is complete. Used in narrow circumstances under U.S. GAAP — typically short-duration contracts where progress cannot be reliably estimated, or where revenue criteria are not met until completion. Less common under ASC 606 than it was under prior standards, but still relevant for some construction, fabrication, and short consulting engagements.

Point-in-Time (One-Shot)

Sale and delivery of a discrete good or one-time license. Revenue is recognized at the moment control transfers — typically delivery for goods, or activation for a perpetual software license. Simple and the closest accrual gets to cash accounting, but still distinct: a customer who prepays for a product that has not shipped does not generate revenue until the product ships.

SaaS-Specific Mechanics: MRR, ARR, and Deferred Revenue

SaaS revenue recognition has its own vocabulary because the subscription pattern dominates the business model. A few things that confuse founders early:

MRR and ARR are management metrics, not GAAP revenue. Monthly recurring revenue and annual recurring revenue measure the contracted run-rate of subscription revenue at a moment in time. They are forward-looking. Recognized revenue under ASC 606 is backward-looking — what was actually earned in the period. The two numbers will not match in any month with new bookings, churn, expansion, or contraction. Both are useful; they answer different questions.

Deferred revenue is a liability, not a war chest. When a customer prepays an annual contract, the cash hits your bank, but the unrecognized portion sits on your balance sheet as deferred revenue (a liability). You owe the customer twelve months of service. Spending the cash is fine; treating deferred revenue as profit is not.

Setup fees and onboarding fees usually have to be recognized over the customer's expected life, not at signing. This is the trap most early-stage SaaS companies fall into. A $5,000 onboarding fee on a customer with a two-year expected life is typically recognized at $208/month over 24 months, not as $5,000 of revenue in the signing month. The exception is when onboarding is a distinct performance obligation with a separate standalone selling price — a much higher bar than "we charged for it."

Annual contracts billed annually still recognize ratably, monthly. Cash collection cadence does not change recognition. If you bill $24,000 upfront for a two-year contract, you still recognize $1,000 per month for 24 months.

Usage-based pricing recognizes as usage occurs. A consumption contract — pay-per-API-call, pay-per-message — recognizes revenue as the customer consumes the resource, not as overage thresholds are billed.

Service Business Specifics

For agencies, consultancies, law firms, accounting firms, and other professional-services businesses, revenue recognition has its own gotchas:

Retainers are deferred revenue, not revenue. A $10,000 monthly retainer received on the first of the month is deferred revenue until the work is performed. Recognize it as the hours are worked or, for a fixed-scope retainer, ratably over the month.

Time-and-materials work recognizes as hours are billed. Each billable hour is its own micro-recognition event. The clean way to handle this is to recognize revenue when the hour is logged and approved, not when the invoice goes out.

Contingency fees recognize when the contingency resolves. A law firm working on a contingency basis cannot recognize revenue while the case is pending. Revenue is recognized when the contingency is resolved — settlement, judgment, collection.

Reimbursable expenses are typically gross revenue, not netted. When a consultant bills a client for $5,000 of travel pass-through, that $5,000 is usually revenue (with a matching $5,000 expense), not a wash. ASC 606 has specific guidance on principal-versus-agent that determines whether the consultant is acting as principal (gross) or agent (net) — most pass-through travel is principal/gross.

Audit-Trigger Mistakes

The most common revenue recognition errors that auditors and acquirers find in small and mid-market companies:

  • Treating prepayments as revenue. A customer prepays an annual contract; the company books all of it as revenue in the month the cash arrives. This single mistake inflates near-term revenue and creates a future revenue cliff that an acquirer's quality-of-earnings (QofE) review will surface immediately.
  • Recognizing setup fees upfront when they are not a distinct performance obligation. A $10,000 implementation fee booked entirely in month one when it should be amortized over the customer's expected life.
  • Recognizing on signature rather than on delivery. Booking revenue when a contract is signed, before the service has started or the product has shipped. A signed contract is not yet earned revenue.
  • Ignoring variable consideration. A contract has rebates, refunds, performance penalties, or usage-based discounts, and the company recognizes the gross transaction price without estimating the variable component. ASC 606 requires you to estimate variable consideration and constrain your estimate to the amount that is highly probable not to reverse.
  • Treating consignment sales or sales-with-right-of-return as final. Goods shipped on consignment are not yet sold; revenue is recognized when the end customer accepts the goods. Sales with a meaningful right of return require a returns reserve.
  • Bill-and-hold arrangements without meeting the strict ASC 606 criteria. Recognizing revenue on a customer's order before the goods ship, when the company does not meet the requirements for bill-and-hold (customer-requested, identified separately, ready for physical transfer, no ability to be redirected).
  • Mismatching cash and revenue cycles in financial reporting. Producing investor materials that show "revenue" matching cash collected, then producing GAAP financials that show recognized revenue, and not reconciling the two. Sophisticated investors will notice and discount everything.

How Software Handles Revenue Recognition

Modern accounting software handles the mechanics of revenue recognition so the bookkeeper does not have to maintain a parallel deferred-revenue spreadsheet. The key features:

Subscription and contract management linked to invoicing. When a customer subscribes to a $1,200/month plan billed annually for $12,000, the system creates the invoice, books the cash to deferred revenue on payment, and writes a recognition schedule that releases $1,000 per month for twelve months automatically.

Performance obligation tracking. For bundled contracts (software + services + onboarding), the system records each performance obligation separately, allocates the transaction price by standalone selling price, and runs a separate recognition schedule for each obligation.

Project and milestone revenue. For project work, the system tracks hours logged or milestones accepted and recognizes revenue using percentage-of-completion or milestone-based methods, with month-end journal entries that flow into the general ledger.

Deferred revenue waterfall reports. A standard report that shows, for any future month, exactly how much deferred revenue is scheduled to be recognized. This is the report investors and auditors ask for first.

Audit trail of recognition adjustments. When a contract changes — upgrade, downgrade, cancellation, refund — the system records the adjustment to the recognition schedule and preserves the audit trail of the change.

Without this tooling, revenue recognition becomes a manual spreadsheet exercise that breaks the first time a customer upgrades mid-contract or churns before renewal.

How Deelo Approaches Revenue Recognition

Deelo's [Accounting](/apps/accounting) and [Invoicing](/apps/invoicing) apps are built around the assumption that most small and mid-market companies need accrual-grade revenue recognition without hiring a full controller to run it.

Subscription contracts auto-generate recognition schedules. When you create a recurring invoice for a 12-month or 24-month plan, Deelo writes the deferred-revenue journal entry on cash receipt and schedules the monthly recognition entries automatically. You can override the schedule for non-standard contracts, but the default is straight-line over the contract term.

Project and milestone tracking flows into recognition. Project-based engagements (consulting retainers, fixed-fee builds, milestone agency work) tie hours and milestone acceptance back to revenue recognition. When a milestone is marked accepted, the recognition entry posts.

Deferred revenue waterfall and aging. A built-in report shows the recognition schedule for every active contract — how much is recognized this month, next month, and out through the end of the longest open contract — so finance leads and investors can see the run-off without rebuilding it in Excel.

Contract modifications are tracked in the audit trail. Upgrades, downgrades, partial refunds, and early cancellations adjust the recognition schedule with a logged change record, so any auditor or due-diligence team can trace why a schedule changed.

Multi-entity and multi-currency support. For companies with multiple legal entities or international customers, recognition runs at the entity level with proper FX handling, so consolidated financials are accrual-grade across the whole group.

The goal is simple: a five-person company should be able to produce GAAP-quality, ASC 606-compliant revenue numbers without a controller and without a spreadsheet.

[Try Deelo Accounting and Invoicing — start free, no credit card required.](/apps/accounting)

Frequently Asked Questions

What is revenue recognition in simple terms?
Revenue recognition is the accounting rule that says you record revenue when you earn it — when the work is delivered or the service is provided — not when the cash arrives. If a customer pays you $12,000 in January for a one-year service, you record $1,000 of revenue per month for twelve months as you actually deliver the service. The other $11,000 sits as deferred revenue (a liability) until you earn it. The U.S. standard that defines the rules is ASC 606.
What is the difference between cash and accrual accounting?
Cash accounting records revenue when cash is received and expenses when cash is paid — it tracks bank account movement. Accrual accounting records revenue when it is earned and expenses when they are incurred, regardless of when cash moves. Revenue recognition is fundamentally an accrual concept. Investors, lenders, acquirers, and (above certain revenue thresholds) the IRS expect accrual financials. Most small businesses start on cash and convert to accrual as they scale or prepare for outside investment.
What are the five steps of ASC 606 revenue recognition?
Step 1: Identify the contract with the customer. Step 2: Identify the performance obligations — the distinct promises to deliver goods or services. Step 3: Determine the transaction price, including variable consideration. Step 4: Allocate the transaction price across performance obligations based on each one's standalone selling price. Step 5: Recognize revenue when (or as) each performance obligation is satisfied — at a point in time for one-shot deliveries, or over time for subscriptions and ongoing services.
How do SaaS companies recognize revenue?
Most SaaS revenue is recognized ratably over the subscription term. A $12,000 annual subscription billed upfront recognizes $1,000 per month for twelve months. The cash hits the bank on day one, but the unearned portion sits as deferred revenue until it is earned. Setup fees and onboarding fees are typically amortized over the customer's expected life rather than recognized at signing. Usage-based pricing recognizes as usage occurs. MRR and ARR are management metrics, not GAAP revenue — they measure contracted run-rate, while recognized revenue measures what was actually earned in the period.
What is deferred revenue?
Deferred revenue (sometimes called unearned revenue) is cash a company has received from a customer for goods or services it has not yet delivered. It sits on the balance sheet as a liability — the company owes the customer the future delivery — and is moved to the income statement as revenue as the goods or services are delivered. A SaaS company that has been paid for an annual contract carries the unearned eleven months as deferred revenue.
What are the most common revenue recognition mistakes?
The big ones: booking prepayments as revenue (instead of deferred revenue), recognizing setup fees upfront when they should be amortized, recognizing on contract signature rather than on delivery, ignoring variable consideration like rebates and refunds, treating consignment or right-of-return sales as final, and producing investor materials that show cash-basis numbers labeled as revenue. All of these surface in due diligence and are the most common drivers of accounting restatements.
Do I need an accountant to handle revenue recognition?
For straightforward businesses on a single business model — pure subscription SaaS, simple time-and-materials services, or point-of-sale retail — modern accounting software with built-in revenue recognition handles the mechanics, and a part-time bookkeeper plus a quarterly review with a CPA is enough. Once you have multiple performance obligations per contract, variable consideration, milestone-based revenue, multi-entity reporting, or you are preparing for an audit or institutional fundraise, you want a controller or fractional CFO who has run an ASC 606 implementation. The software does the bookkeeping; the human handles the judgment calls.

Explore More

Related Articles