
SaaS vs Software License: Revenue Recognition Impact
SaaS and software licenses follow completely different revenue recognition rules under ASC 606. Here's how the distinction works and why it matters for your financials.


Usage-based pricing is eating SaaS. Pay-per-API-call, per-token, per-compute-hour, per-seat-used β the models are everywhere. And for AI companies especially, usage-based billing isn't a trend. It's the default.
The problem: ASC 606 treats usage-based fees differently depending on the structure of your deal. The same usage charge can follow three completely different accounting paths β and picking the wrong one means your revenue is wrong. Not wrong in a theoretical sense. Wrong in the sense that your auditor will flag it.
We pulled the relevant guidance from KPMG's Revenue for Software and SaaS handbook. Here's what you need to know.
This is the part that trips up most companies. Not all usage fees are created equal under 606. The treatment depends on what the customer is paying for and how the deal is structured.
If your customer pays a base subscription plus overage charges based on usage, those overages are typically variable consideration under ASC 606. You estimate the total transaction price at contract inception using either the expected value method (probability-weighted) or most likely amount method (single best estimate). The estimate gets updated each reporting period.
The constraint applies: only include amounts where you're confident there won't be a significant revenue reversal. Uncertain about how much the customer will use? Pull the estimate down. This means you might recognize some usage revenue before the usage actually happens β or less than what eventually occurs.
If usage-based fees are paid in exchange for a license of intellectual property β and the license is the predominant item the fees relate to β a special exception applies. Revenue is recognized only as usage occurs. Never estimated upfront. Never constrained. Just recognized when the customer actually uses.
This is huge for AI companies. If you're licensing a proprietary model and charging per API call or per token against that license, the royalty exception likely governs. You don't touch the revenue until the customer uses the software.
Sometimes usage-based pricing is really an option for the customer to purchase additional services. If a SaaS contract includes the right to buy additional compute at a discounted rate, that option might be a separate performance obligation β a material right. Revenue gets allocated to it and deferred until the customer exercises the option or it expires.
This path is less common but shows up in contracts with committed-use discounts or tiered pricing where the discount on higher tiers is incremental to what similar customers normally receive.
The decision tree:
In practice, the line between these can blur. A contract that includes both a software license and SaaS access with usage fees might have different components following different paths within the same deal.
There's a shortcut. ASC 606 includes a practical expedient that lets you recognize revenue equal to what you have the right to invoice β but only if both conditions are met:
When this applies, you skip the estimation and allocation complexity entirely. You invoice for actual usage, you recognize that amount. Clean.
Most pure usage-based SaaS contracts qualify. Where it breaks down: contracts with minimum commitments, volume discounts that change the per-unit rate retroactively, or arrangements where the usage fee doesn't correspond directly to value delivered in that period.
AI companies sit at the intersection of all three paths β and sometimes within a single contract.
Consider a typical AI company deal: the customer gets access to a proprietary model (license of IP), hosted through an API (SaaS), with per-token pricing (usage-based), a monthly minimum commit, and volume discounts at higher tiers.
That one contract might involve:
The classification of the underlying arrangement β license vs. SaaS β determines which path the usage fees follow. Get the classification wrong and the entire revenue treatment cascades in the wrong direction.
Many usage-based contracts include a minimum spend β "use at least $10,000/month or forfeit the difference." Under 606, that minimum is typically a fixed component of the transaction price. It gets recognized ratably over the contract period regardless of whether the customer hits the threshold.
Prepaid usage credits are similar. Customer buys $100,000 in credits upfront and draws them down over time. Revenue is recognized as credits are consumed β not when you receive the cash. Unused credits (breakage) are recognized in proportion to the pattern of usage if you can reasonably estimate the breakage amount.
If you can't estimate breakage? Recognize when it becomes remote that the customer will use the remaining credits. That's a judgment call with real dollar impact.
Usage-based billing requires real-time metering, accurate invoicing, and revenue recognition that matches the right accounting path for each contract. Most billing tools handle the metering and invoicing. Few handle the revenue recognition correctly β especially when the same company has contracts following different paths.
JustPaid was built for this. The platform supports token-based, outcome-based, and hybrid pricing models natively. AI Contract Extraction identifies whether usage fees follow the royalty exception, variable consideration, or the as-invoiced expedient based on the contract terms. Revenue schedules adjust automatically as usage data flows in.
No manual classification. No spreadsheet reconciliation between metering and revenue.
Selling usage-based? Schedule a demo to see how JustPaid handles token-based, outcome-based, and hybrid pricing models.
Automate invoicing, streamline accounts receivable, and accelerate revenue with JustPaid.

SaaS and software licenses follow completely different revenue recognition rules under ASC 606. Here's how the distinction works and why it matters for your financials.


Usage-based billing creates unique revenue recognition challenges under ASC 606 β variable consideration, royalty exceptions, and the as-invoiced expedient explained.


ASC 606 revenue recognition for SaaS companies β the 5-step model broken down with real examples. Learn when and how to recognize your revenue correctly.


JustPaid and Attio now sync billing data into your CRM in real time β so your team sees payment health, MRR, and churn risk where they already work.


Sending invoices is supposed to be the easy part. But tax accuracyβsales tax, VAT, GSTβis creating compliance liability. Here's how the JustPaid and Numeral integration fixes it.


Everyone wants AI agentsβbut most companies freeze when it's time to let an agent actually act. Why the trust gap isn't a technology problem, and how to get past it.

Stay updated with the latest insights on AI-powered billing automation and financial operations.

