SOFTRAX
Blog
Mastering the Triple Treat Accounting, Billing, and Revenue Recognition in SaaS

Mastering Revenue Recognition for SaaS

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:

  1. Identify the contract with the customer
  2. Identify the performance obligations in the contract
  3. Determine the overall transaction price for the contract
  4. Allocate the transaction price to the performance obligations
  5. 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:

  1. 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.
  2. 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.
  3. 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.
  4. 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.
  5. 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: 

  1. 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. 
  2. 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. 
  3. 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 

  1. Determine if the Modification is Approved
    • Both CloudPrompt and Client A have agreed to the modification
  2. 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
  3. 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

Revenue Recognition Adjustments 

  1. 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
  2. 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
  3. 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.

Subscribe to our newsletter
Popular Posts
ST-BL Logo RGB
Come and see us at the
2026 Channel Partner Expo
Booth #2454

Las Vegas, NV

April 13-16, 2026

ST-BL Logo Stacked RGB

+

SureTax Logo
FREE CPE WEBINAR
Avoiding Revenue Leakage in Telecom: How Better Billing and Tax Automation Drives Compliance and Profit
00
Days
:
00
Hours
:
00
Minutes
JOIN NOW