Revenue Recognition

Do you know when
revenue should be recognized?

The answer changes with the model — a signed contract, a subscription earned month by month, usage measured in compute minutes, a milestone on a long-term project. Getting it right means matching the method to the model, then proving it with data.

Contract-basedSubscriptionUsage-basedMilestone
Recognition schedule Payment received → Earned
Month 1
Unearned
Month 4
Unearned
Month 8
Unearned
Service complete
Recognized ✓
Basis: completion of performance obligation ASC 606
The four models

Recognition isn't one rule. It's four different questions.

Every engagement starts by identifying which model — or mix of models — actually applies, because each one answers "when is this earned?" differently.

Contract-based

Revenue tied to defined deliverables in a signed agreement. Recognition follows completion of specific, identifiable performance obligations.

Subscription

Revenue earned ratably over the life of the term — a customer pays upfront or monthly, but the revenue is recognized in slices as service is delivered.

Usage-based

Revenue tied to consumption — compute minutes, transactions, API calls. Recognition depends entirely on accurate usage data, not the invoice date.

Milestone-based

Revenue on long-term projects recognized as defined milestones are completed and verified, rather than on a fixed schedule.

What this looks like in practice

Getting the timing right — and proving it.

The accounting judgment is only half the job. The other half is making sure the calculation that runs in your systems actually reflects that judgment — correctly, consistently, and in a way that traces back to real source data.

That's the part most engagements miss: a recognition policy that's correct on paper but drifts from what the system actually calculates, because the logic was never fully translated into the pipeline that produces the numbers.

Not sure which model applies to you?

Most organizations have more than one revenue stream, and they don't all recognize the same way. Let's talk through what you have.

Schedule a consultation