ASC 606 requires allocating a contract’s price to each performance obligation and recognizing revenue as each is satisfied. Allocate the transaction price by relative standalone selling price and build the monthly recognition schedule.
How it works
Allocate a contract’s transaction price to its performance obligations by relative standalone selling price, then schedule revenue at a point in time or ratably over time.
Allocated price(i) = Transaction price × SSP(i) ÷ Σ SSP
Point in time: recognize the allocated price when control transfers
Over time (ratable): Allocated price ÷ Service months, each month of service
Discount = Σ SSP − Transaction price
Common uses
- Software, SaaS and bundled-service contracts
- Deferred revenue and contract liability schedules
- Revenue audit support and technical accounting memos
Worked example
The calculator above opens with this example. Change any input to see the results update instantly, or select Reset to return to these figures.
| Transaction price | $120,000 |
| Contract start month | 2027-01 |
| Performance obligations | Software license | 60,000 | P | | 1 Implementation services | 30,000 | O | 3 | 1 Support & maintenance | 24,000 | O | 12 | 4 Training | 12,000 | P | | 3 |
| Revenue in first 12 months | $114,286 |
| Discount (premium) allocated | $6,000 |
| Revenue in first month | $66,667 |
| Unrecognized after 12 months | $5,714 |
| Months to full recognition | 15 |
The discount is allocated proportionally to every obligation, the ASC 606 default when no evidence supports allocating it to specific obligations.
Interpreting the results
- Use observable standalone prices where available; otherwise estimate them with adjusted market, cost-plus-margin or, in limited cases, residual approaches.
- Ratable recognition suits stand-ready obligations such as support; use an input or output measure when effort is uneven.
- Variable consideration must be estimated and constrained before it is included in the transaction price.
Frequently asked questions
What are the five steps of ASC 606?
Identify the contract, identify the performance obligations, determine the transaction price, allocate the price to the performance obligations, and recognize revenue when or as each obligation is satisfied.
How is a contract discount allocated?
By default, a discount is allocated to all performance obligations in proportion to their standalone selling prices. It may be allocated to specific obligations only when observable evidence shows the discount relates entirely to them.
What is a standalone selling price?
The standalone selling price is the price at which the company would sell a promised good or service separately to a similar customer. When it is not directly observable, it is estimated using approaches such as adjusted market assessment or expected cost plus a margin.
Related calculators
- Prepaid & Deferral Amortization Schedule: Monthly recognition schedule for prepaids and deferred revenue.
- Lease Accounting Calculator (ASC 842): Lease liability, ROU asset and full amortization schedule for operating or finance leases.
- SaaS Metrics Calculator: MRR bridge, ARR, net and gross revenue retention, churn, quick ratio and Rule of 40.
- Fiscal Calendar & Business Days Calculator: Business days between dates, fiscal year and quarter, and working days by fiscal period.
- Deferred Tax Calculator (ASC 740): Deferred tax assets and liabilities from book-tax basis differences.