US GAAP revenue recognition under the five-step model — with every material divergence from IFRS 15 flagged and enforced by the engine. Licenses of IP, the invoice practical expedient, sales-based royalties, and ASC-specific disclosure requirements all handled programmatically. Live today, alongside IFRS 15.
ASC 606 is live today, alongside IFRS 15, IFRS 16 and ASC 842. Sign up and upload your first revenue contract.
ASC 606 and IFRS 15 are substantially converged — both follow the same five-step model. But the divergences are material, and getting them wrong creates dual-reporting risk. Ledger Layer enforces the correct treatment under each standard automatically and flags divergences when running dual-standard entities so your team can see exactly where the outputs differ and why.
The most significant divergences affect license arrangements (right-to-use vs right-to-access under 606 is more prescriptive), variable consideration (ASC 606 permits the portfolio approach for returns), revenue disaggregation (less prescriptive under ASC 606), and interim disclosures (ASC 606 requires less interim disclosure than IFRS 15). Ledger Layer tracks each divergence point per contract and produces standard-specific output from the same underlying data.
ASC 606 follows the same five criteria as IFRS 15 for contract existence: approval, commitment, identifiable rights, identifiable payment terms, commercial substance, and probable collection. Contract combination is required when contracts are negotiated as a package with a single commercial objective, or when consideration in one contract depends on the other.
The engine evaluates all five existence criteria and the three combination indicators against the data you provide. Contracts that share a customer and are entered at or near the same time are automatically assessed for combination. The assessment is logged per contract. Contracts that fail the existence test are held in pending status until conditions are met.
The distinct criterion parallels IFRS 15 — capable of being distinct, and distinct within the context of the contract. Transaction price allocation uses standalone selling prices. ASC 606 provides the same three estimation approaches as IFRS 15, with the residual approach available when observable prices are highly variable or uncertain.
Ledger Layer evaluates the distinct criterion at both levels — capability and context — and logs the assessment per obligation. For standalone selling price estimation, the engine supports direct observation, adjusted market assessment, expected cost plus margin, and residual approaches. The allocation is performed proportionally and locked at inception, with reallocation only for contract modifications.
Revenue is recognised when control of a good or service transfers to the customer — either over time (using an appropriate progress measure) or at a point in time. The three over-time criteria are the same as IFRS 15. ASC 606 provides the additional invoice practical expedient for contracts where the entity has a right to consideration that corresponds directly to the value delivered.
The invoice practical expedient (606-10-55-18) is widely used in service contracts — when elected, the entity recognises revenue at the amount it has a right to invoice. Ledger Layer supports this expedient with automatic detection of qualifying contracts and period-by-period application. For contracts without the expedient, the engine applies input or output methods for over-time recognition, or evaluates the five control-transfer indicators for point-in-time recognition.
ASC 606 requires capitalisation of incremental costs of obtaining a contract (such as sales commissions) and costs to fulfil a contract when they create a resource the entity will use in satisfying future obligations. These costs are amortised on a systematic basis consistent with the transfer of the goods or services to which the asset relates.
Ledger Layer tracks contract costs alongside the revenue contract. Incremental costs of obtaining (e.g., sales commissions directly attributable to a specific contract) are capitalised and amortised over the expected contract period, including anticipated renewals. The practical expedient to expense costs to obtain when the amortisation period is one year or less is configurable per entity. Fulfilment costs that meet the capitalisation criteria are handled similarly.
ASC 606 requires disaggregation of revenue, contract balance rollforwards, remaining performance obligation amounts, and significant judgements. The disclosure requirements are broadly aligned with IFRS 15, with some differences in interim disclosure depth and disaggregation prescriptiveness. Ledger Layer generates these disclosures automatically from engine-verified data.
The disclosure pack includes revenue disaggregated by type, geography, contract duration, and timing of transfer. Contract balance rollforwards show opening and closing contract assets and liabilities with revenue recognised, cash received, and other movements. Remaining performance obligations are reported with expected timing of satisfaction. Significant judgements — including timing of satisfaction, variable consideration estimation, and allocation methods — are captured in the contract record and disclosed where material.
Ledger Layer launches IFRS 15 and ASC 606 together because most entities that need one need both. The engine produces standard-specific output from a single contract record — same judgements, different treatments where the standards diverge.
The functional vs symbolic license distinction under IFRS 15 and the right-to-use vs right-to-access distinction under ASC 606 are the most common source of dual-standard differences. Ledger Layer applies each standard's criteria independently.
Enter the contract once. The engine produces ASC 606 revenue schedules for your US GAAP entities and IFRS 15 schedules for your IFRS entities — same underlying data, standard-specific recognition.
Parallel to IFRS 15 — dual-standard entities fully supported. Same deterministic engine, same audit controls.