Accounting practices for SaaS companies can be more complicated due to the intricacies of the subscription-based or on-demand model used to provide products and services. The SaaS model can create complexities in how revenue is recognized, especially in billing, variable consideration, and contract modifications. An in-depth look at each factor can show how SaaS companies can navigate different variables and compliance requirements and reduce complexity.
What is Revenue Recognition for SaaS Companies?
Revenue recognition for SaaS companies is no different from any other businesses in that they follow the five-step model of revenue recognition outlined by ASC 606 / IFRS 15:
- Identify the contract with the customer
- Identify the performance obligations in the contract
- Determine the overall transaction price for the contract
- Allocate the transaction price to the performance obligations
- Recognize revenue when performance obligations are satisfied
Where the revenue recognition steps become complicated for SaaS companies is with their use of subscription sales and delivery models. This typically means the SaaS company must recognize revenue when the service or product is delivered vs. at the point of sale. Payments are oftentimes received in advance for the subscription services, and this revenue is recorded as deferred until the service is delivered.
Here is how a SaaS company CloudPrompt could apply the five steps of ASC 606 / IFRS 15:
- Identify the Contract with the Customer: In this case, a SaaS company, CloudPrompt, enters into a client contract that specifies SaaS services, including the product and associated as-needed support, will be provided over the course of a year for an up-front fee of $120,000 paid by the customer.
- Identify the Performance Obligations in the Contract: With this contract, CloudPrompt’s performance obligation is providing access to the software and services for the duration (one year) of the contract.
- Determine the Transaction Price: The transaction price is the amount of consideration to which the entity expects to be entitled in exchange for transferring the promised goods or services. In this case, the transaction price is $120,000.
- Allocate the Transaction Price to the Performance Obligations: For this contract, there is only one performance obligation which is to provide access to the software and provide basic support services.
- Recognize Revenue When (or as) the Entity Satisfies a Performance Obligation: In this case, the revenue would be recognized ratably throughout the year that the contract is in place, so $120,000 / 12, or $10,000 per month.
The contracts of many SaaS companies are more complicated than the CloudPrompt example above. The complexity comes from different functions, such as allocation for professional services, variable consideration, and contract modifications. Looking at these three factors can give a good view into the intricacies that many SaaS companies face.
The First Factor: Complexity in Allocation for Professional ServicesÂ
A company must determine a transaction price and allocate it to the various performance obligations of the customer contract, and this becomes more complicated when professional services are involved. For example, let’s say CloudPrompt enters into a contract with Client A that include the following:
- Service: Custom Software Development Â
- Annual Software Maintenance: IT Consulting and SupportÂ
- Billing: Time and Materials (T&M) – Billed hourly at different rates for different roles (e.g., Developer, Project Manager); Some Fixed Monthly Fee billing
With this contract, CloudPrompt would determine the methods of revenue recognition:Â
- Time and Materials: Revenue is recognized based on the hours worked multiplied by the hourly rates. This can fluctuate significantly month-to-month.
- Fixed Monthly Fee: Revenue is recognized evenly over the contract period, which is straightforward but requires careful monitoring to ensure services are delivered as promised.
- Mixed Billing: The fixed retainer is recognized monthly, but variable fees require tracking of additional support hours and fees for services. Revenue recognition needs to align with the actual support provided, adding complexity.
Here is how the billing for the month might break down:Â
- Developer Hours: 160 hours at $100/hourÂ
- Project Manager Hours: 40 hours at $150/hourÂ
- Fixed Monthly Fee: $10,000
Then, CloudPrompt would do a revenue calculation for Client A:
- Developer Revenue: 160 hours * $100/hour = $16,000
- Project Manager Revenue: 40 hours * $150/hour = $6,000
- Fixed Monthly Retainer: $10,000
- Total Revenue for the Client A: Â $32,000 Â
The Second Factor: Variable ConsiderationÂ
Variable consideration refers to the treatment of revenue recognition for components of the transaction price that are not fixed but can vary based on future events. Understanding and properly accounting for variable consideration is crucial for SaaS companies, and particularly those that operate on a usage or consumption bill model, to ensure accurate and compliant revenue recognition. The two methods for estimating variable consideration under ASC 606 are:Â the expected value method and the most likely amount method.
Below are some examples of variable consideration that can be both complex and changing:
- Usage-Based Fees: These are charges based on the level of usage of the SaaS platform (e.g., number of users, data storage).
- Performance Bonuses: This refers to additional revenue earned if certain performance metrics are met (e.g., uptime guarantees, user engagement levels).
- Future Discounts: This is variable pricing that depends on customer commitments or volume purchases.
- Refunds and Credits: This accounts for future reductions in revenue due to customer refunds or service credits.
- Penalties: These are contingency-based fees that arise if a company fails to meet specified performance criteria.
Variable consideration is determined by estimation:
- SaaS companies must estimate the amount of variable consideration they expect to receive and include it in the transaction price. This estimation should be based on historical data, current trends, and reasonable forecasts.Â
- In the case of multi-element arrangements, and where a proportional allocation against SSP is required, this variable consideration amount will be factored into the Total Contract Value (TCV) to support the allocation.Â
- Revenue should be recognized only to the extent that it is probable that a significant reversal will not occur when the uncertainty is resolved.Â
Variable consideration also includes the use of constraints:
- To avoid recognizing revenue that might later need to be reversed, SaaS companies apply a constraint. This means including only the amount of variable consideration that is highly probable to be realized. Â
Variable consideration also involves disclosure requirements:
- SaaS companies must disclose information about their estimates of variable consideration and the methods used to determine them.Â
- This includes the nature of the variability, significant judgments made, and any changes to these estimates over time.Â
Example Scenario of Variable Consideration with a SaaS Company Â
Let’s take the example of CloudPrompt, which is now providing data analytics and workspace / application services on subscription.Â
A typical contract for CloudPrompt is as follows:Â
- Base Subscription Fee: $100,000 per year.
- Usage-Based Fees: $10 per user per month for any users beyond 1,000 users.Â
- Performance Bonus: $20,000 if uptime exceeds 99.9% for the year.Â
Here is how CloudPrompt would determine variable consideration:
Identify the Contract and Performance Obligations
- Base access to the software platform
- Potential usage-based fees
- Performance bonus for uptimeÂ
- Discount for long-term commitment
Determine the Transaction Price
- Base Fee: $100,000 per yearÂ
- Estimated Usage-Based Fees: Based on expected usageÂ
- Estimated Performance Bonus: Based on likelihood of achieving uptime
- Discount: Applied to the base fee
Estimate Variable Consideration
- Usage-Based Fees: Historical data shows an average of 1,200 users per month
- Additional Users: 200 users * $10/user/month = $2,000/month
- Annual Usage-Based Fees: $2,000 * 12 = $24,000
- Performance Bonus: Historical data and system reliability indicate a high probability of achieving the uptime target
- Estimated Bonus: $20,000 (with a high likelihood of meeting the condition)
Calculate the Total Transaction Price
- Base Fee: $100,000
- Estimated Usage-Based Fees: $24,000
- Estimated Performance Bonus: $20,000
- Total Transaction Price: $100,000 + $24,000 + $20,000 = $144,000
Recognize Revenue
- Base Fee: Recognized ratably over the contract period
- Usage-Based Fees: Recognized as incurred each month based on actual usage
- Performance Bonus: Recognized when it is probable that the target will be met, and the amount can be estimated reliably
The Third Factor: Contract Modifications Â
Contract modifications are changes to the scope or price (or both) of a contract that are approved by both the company and the customer. For SaaS companies, these modifications can introduce complexities in revenue recognition, and SaaS companies should take the following steps with contract modifications:Â
- Determine if the Modification is Approved:Â
- The modification must be agreed upon by both parties. If negotiations are ongoing, the company continues to account for the contract under the original terms until the modification is approved.Â
- Assess the Nature of the Modification:Â
- Determine whether the modification adds distinct goods or services and if it should be treated as a separate contract or as part of the existing contract.Â
- Accounting for the Modification:Â
- Separate Contract: If the modification adds distinct goods or services at a price that reflects their standalone selling prices, the modification is treated as a separate contract.Â
- Part of Existing Contract: If the modification does not meet the criteria for a separate contract, it is accounted for as part of the existing contract. This can be done in one of three ways:Â
- Prospective Approach: The remaining transaction price is allocated to the remaining performance obligations.Â
- Cumulative Catch-Up Approach: The transaction price is updated, and a cumulative catch-up adjustment is made for performance obligations that have already been satisfied.Â
- Combination Approach: A mix of prospective and cumulative catch-up approaches if the modification impacts both distinct and non-distinct performance obligations.Â
Example Scenario: SaaS company, CloudPrompt, has a series of contract modifications for Client A
Original Contract Details for Client A:
- Base Subscription Fee: $120,000 per year (recognized monthly as $10,000/month)
- Usage-Based Fees: $20 per user per month for any users beyond 1,000 users
- Performance Bonus: $10,000 if uptime exceeds 99.9% for the year
The Services that Client A wants to add:
- Date of Modification: After 6 months
- New Service Added: Advanced Analytics Module for an additional $40,000 per year
- Price Change: Base subscription fee reduced to $100,000 per year due to negotiation
Step-by-Step ProcessÂ
- Determine if the Modification is Approved
- Both CloudPrompt and Client A have agreed to the modification
- Assess the Nature of the ModificationÂ
- The new service (Advanced Analytics Module) is distinct and adds new functionality
- The change in the base subscription fee needs to be evaluated in the context of the existing performance obligations
- Accounting for the Modification
- Separate Contract:Â
- Since the Advanced Analytics Module is distinct and priced at its standalone selling price, it could be treated as a separate contract
- New Contract: $40,000 for Advanced Analytics Module
- Part of Existing Contract:Â
- Base Subscription Fee is modified from $120,000 to $100,000
- Determine how to account for the $20,000 reduction and the remaining $60,000 (half of the original $120,000) already recognized over the first 6 months
- Separate Contract:Â
Revenue Recognition AdjustmentsÂ
- Original Contract Revenue (First 6 Months)Â
- Base Subscription Fee: $10,000/month * 6 months = $60,000 recognized
- Assume no usage-based fees or performance bonuses were earned
- Modification Impact
- Remaining Base Subscription Fee: $100,000 (new annual fee) – $60,000 (already recognized) = $40,000 for the remaining 6 months
- New Monthly Base Fee: $40,000 / 6 months = $6,667 per month
- Advanced Analytics ModuleÂ
- Separate contract: Recognized over the remaining period (12 months if treated as a new contract starting from modification date)
- Monthly Recognition: $40,000 / 12 months = $3,333 per month
Summary of Monthly Revenue Post-Modification
- Base Subscription Fee: $6,667 per month
- Advanced Analytics Module: $3,333 per month
Final Monthly Revenue Post-Modification
- Total Monthly Revenue: $6,667 (Base Fee) + $3,333 (Analytics Module) = $10,000 per month
In this scenario, CloudPrompt modifies an existing contract by reducing the base subscription fee and adding a new service for Client A. The modification is assessed to determine whether it constitutes a separate contract or should be integrated into the existing contract. Based on the nature of the changes, the company adjusts its revenue recognition approach accordingly, ensuring compliance with ASC 606. This structured approach helps maintain accurate financial reporting and provides clarity on the impact of contract modifications on revenue streams.
Conclusion: SaaS and Revenue Recognition
In summary, the SaaS business model introduces complexities in allocation, variable consideration, and contract management that must be accounted for in accordance with revenue recognition standards. The SaaS company must keep pace with current contracts and be ready for the demands of future clients. A Revenue Management System is a great way to apply revenue recognition standards to these complex scenarios, such as variable consideration. SOFTRAX RMS is this type of solution, offering the only comprehensive, multi-tenant cloud software solution, supporting all forms of complex billing, dynamic pricing, contract renewal management, and revenue recognition to meet the needs of today’s SaaS business.
To stay up to date with the latest from SOFTRAX, follow us on LinkedIn, X, and subscribe to us on YouTube.




