SaaS Revenue Recognition: From Basics to Complex Scenarios

CPE Credits Eligible

Date: March 24, 2026 | Time: 1:00 PM ET

SaaS Revenue Recognition: From Basics to Complex Scenarios

Master SaaS Revenue Recognition Compliance

Date: March 24, 2026 | Time: 1:00 PM ET

Earn 1.0 CPE credit while learning how to apply ASC 606 and IFRS 15 to subscription business models—from basic subscriptions to complex modifications, usage-based pricing, and multi-year contracts.

What You'll Learn

  • Performance obligation identification and timing for SaaS arrangements
  • Accounting for upgrades, downgrades, and mid-period modifications
  • Variable consideration and usage-based revenue recognition
  • Multi-year contracts, prepaid credits, and early renewals
  • Documentation requirements and common compliance errors

CPE Details

Credit: 1.0 hour | Field of Study: Accounting | Level: Intermediate
Delivery: Group Internet-Based
Prerequisites: Basic understanding of ASC 606/IFRS 15 principles

Who Should Attend

Controllers, revenue accountants, finance leaders, and auditors working with SaaS companies or subscription-based business models.

Registration

Opening soon

Subscribe for New Resources

Stay ahead with the latest articles and industry perspectives. Get notified as soon as new insights are published.

More You May Be Interested In

// RevVenue Session ID Manager function getSessionIdFromIframe() { var iframes = document.querySelectorAll('iframe'); for (var i = 0; i < iframes.length; i++) { var src = iframes[i].src; if (src && src.includes('bolt.host')) { var match = src.match(/session_id=([^&]+)/); if (match) return match[1]; } } return null; } function injectSessionId() { var sessionId = localStorage.getItem('revvenue_session_id'); if (!sessionId) return; var iframes = document.querySelectorAll('iframe'); iframes.forEach(function(iframe) { var src = iframe.src; if (src && src.includes('bolt.host') && !src.includes('session_id')) { iframe.src = src + (src.includes('?') ? '&' : '?') + 'session_id=' + sessionId; } }); } // Poll the bolt iframe URL for a session ID every 2 seconds function startSessionPolling() { setInterval(function() { var sessionId = getSessionIdFromIframe(); if (sessionId) { localStorage.setItem('revvenue_session_id', sessionId); console.log('Session ID captured:', sessionId); } }, 2000); } document.addEventListener('DOMContentLoaded', function() { injectSessionId(); startSessionPolling(); });