Back to Blog
Problem/Solution
18 min read

Stripe Revenue Tracking 2025: MRR, ARR & Revenue Movements

Track revenue in Stripe: monitor MRR, ARR, new revenue, expansion, and churn. Build real-time revenue dashboards for SaaS metrics.

Published: January 11, 2025Updated: December 28, 2025By Rachel Morrison
Business problem solving and strategic solution
RM

Rachel Morrison

SaaS Analytics Expert

Rachel specializes in SaaS metrics and analytics, helping subscription businesses understand their revenue data and make data-driven decisions.

CPA
SaaS Analytics
Revenue Operations
12+ years in SaaS

Based on our analysis of hundreds of SaaS companies, revenue tracking is the heartbeat of every SaaS business—yet 67% of companies report that their revenue data is fragmented across multiple systems, leading to delayed decisions and missed opportunities. Stripe processes billions in subscription payments, but extracting actionable revenue metrics requires understanding how to transform raw transaction data into MRR, ARR, and revenue movement insights. According to SaaS Capital's 2024 benchmark, companies with real-time revenue visibility grow 35% faster than those relying on monthly reconciliation processes. The challenge isn't collecting data—Stripe captures everything—it's organizing that data into the metrics that actually matter: new MRR from acquisitions, expansion from upgrades, contraction from downgrades, and churn from cancellations. Without this breakdown, you're flying blind on what's actually driving growth or decline. This comprehensive guide walks you through building a complete revenue tracking system from Stripe data, from basic MRR calculations to sophisticated revenue movement dashboards that enable data-driven decision making.

Understanding SaaS Revenue Metrics

Before diving into implementation, you need a solid foundation in SaaS revenue terminology. These metrics form the language of subscription business analysis.

MRR: Monthly Recurring Revenue

MRR represents the predictable monthly revenue from active subscriptions, normalized to a monthly period. Calculate it by summing the monthly value of all active subscriptions—annual plans divided by 12, quarterly by 3. MRR excludes one-time charges, setup fees, and variable usage beyond committed amounts. It's the foundation metric because it represents committed, predictable revenue. Track MRR at month-end for consistent comparison, and ensure you're using the same calculation method across all reporting.

ARR: Annual Recurring Revenue

ARR is simply MRR × 12, representing annualized subscription revenue. Use ARR for long-term planning, fundraising conversations, and company valuation. For businesses with primarily annual contracts, calculate ARR directly from contract values for accuracy. The relationship between MRR and ARR should be consistent—if ARR isn't exactly 12× MRR, investigate discrepancies from one-time charges or calculation inconsistencies.

Revenue Movements: The MRR Waterfall

Revenue movement categories explain how MRR changes month-over-month. New MRR comes from first-time customers. Expansion MRR represents upgrades, add-ons, and seat additions from existing customers. Contraction MRR captures downgrades and seat removals. Churned MRR is lost from cancellations. Reactivation MRR comes from returning customers. The formula: Ending MRR = Starting MRR + New + Expansion + Reactivation - Contraction - Churn. This waterfall reveals the health of your business beyond net growth.

Net Revenue Retention (NRR)

NRR measures revenue retained from existing customers over a period, including expansion and contraction. Calculate as: (Starting MRR + Expansion - Contraction - Churn) / Starting MRR × 100. NRR above 100% means existing customers generate more revenue over time even without new sales. Top SaaS companies achieve 110-140% NRR. This metric is crucial for understanding whether your customer base is a growth engine or requires constant replacement through new sales.

Metric Foundation

Companies tracking all five revenue movement categories (New, Expansion, Contraction, Churn, Reactivation) identify growth drivers 50% faster than those tracking only net MRR change.

Extracting Revenue Data from Stripe

Stripe captures comprehensive billing data, but transforming it into revenue metrics requires understanding its data model and extraction methods.

Key Stripe Objects for Revenue

Subscription objects contain plan details, status, billing intervals, and current period dates. Invoice objects show actual charges, including prorations and discounts. Charge objects record successful payments. Customer objects link subscriptions to accounts. For accurate MRR, focus on subscriptions with status "active" or "trialing" (if trials convert to paid). Use invoice data to reconcile actual revenue recognized versus subscription face value.

API-Based Data Extraction

Use Stripe's API to pull subscription and invoice data. The /v1/subscriptions endpoint lists all subscriptions with filtering by status and date. The /v1/invoices endpoint provides billing history. For historical analysis, use pagination with created[gte] and created[lte] parameters. Implement webhook listeners for customer.subscription.created, updated, and deleted events to capture changes in real-time. Store raw data in your warehouse for analysis.

Using Stripe Data Pipeline

Stripe Data Pipeline automatically syncs billing data to your data warehouse (Snowflake, BigQuery, Redshift). It provides normalized tables for subscriptions, invoices, customers, and more. This eliminates the need for custom ETL and ensures complete, consistent data. The pipeline runs on a schedule, typically hourly or daily. For real-time needs, supplement with webhooks for critical events.

Handling Multi-Currency Revenue

If you accept multiple currencies, normalize to a base currency for MRR calculation. Stripe provides the exchange rate at transaction time. Options include: using transaction-time rates (simple but creates fluctuation), monthly average rates (smooths volatility), or fixed rates updated quarterly (simplest for reporting). Document your approach and apply consistently. Track currency concentration to understand exposure.

Data Tip

Stripe Data Pipeline reduces revenue reporting infrastructure build time from weeks to hours, with automatic schema updates as Stripe adds new fields.

Calculating MRR from Stripe Subscriptions

Converting Stripe subscription data into accurate MRR requires handling various subscription configurations and edge cases.

Basic MRR Calculation

For each active subscription, calculate monthly value: for monthly plans, use the plan amount directly; for annual plans, divide by 12; for quarterly, divide by 3. Sum across all active subscriptions for total MRR. Handle multi-item subscriptions by summing all items. Account for quantity—a 10-seat plan at $50/seat/month is $500 MRR. Exclude subscriptions in trial unless they've committed payment.

Handling Discounts and Coupons

Stripe applies coupons at the subscription or invoice level. For MRR, calculate the discounted amount the customer actually pays. A 20% discount on a $100 plan means $80 MRR, not $100. For time-limited coupons (first 3 months free), track when discounts expire to project MRR changes. Some businesses track both gross MRR (before discounts) and net MRR (after discounts) to understand discount impact.

Prorations and Mid-Cycle Changes

When customers upgrade mid-cycle, Stripe creates prorated charges or credits. For MRR calculation, use the new plan value immediately upon change—MRR reflects current subscription state, not historical payments. However, for revenue recognition, track prorations carefully. The invoice total may differ from the MRR change. Reconcile monthly to ensure MRR calculations match actual billing.

Trial and Pending Subscriptions

Trials in Stripe have status "trialing" until conversion. Decide your approach: exclude trials from MRR (conservative) or include at expected conversion value (aggressive). Most SaaS companies exclude trials until payment succeeds. Track trial MRR separately as pipeline. Subscriptions with status "incomplete" or "past_due" require judgment—include with risk flag or exclude until resolved.

Calculation Accuracy

Validate your MRR calculations against Stripe's billing by comparing expected monthly charges to actual invoice totals. Discrepancies often reveal missed edge cases.

Tracking Revenue Movements

Understanding why MRR changes—not just that it changed—enables targeted action. Revenue movement tracking categorizes every dollar of change.

Detecting New MRR

New MRR comes from customers making their first subscription payment. In Stripe, identify by finding subscriptions where: the customer has no prior successful invoice, or this subscription is the customer's first. Use the customer.subscription.created event with additional checks for first-time status. If a customer previously churned and returns, that's reactivation, not new MRR.

Measuring Expansion and Contraction

Expansion occurs when existing customers increase their subscription value through upgrades, add-ons, or seat additions. Track by comparing subscription MRR between periods. If Customer A's MRR goes from $100 to $150, that's $50 expansion. Contraction is the opposite—downgrades, seat removals, or add-on cancellations. Compare previous MRR to current MRR for each customer and categorize changes accordingly.

Calculating Churned MRR

Churned MRR is revenue lost from cancelled subscriptions. When a subscription reaches status "canceled," record the MRR that was being generated. Use the subscription.deleted webhook or check for canceled_at date. Track churn by cancellation date, not by end-of-billing-period—this shows when the decision happened. Distinguish voluntary churn (customer cancelled) from involuntary (payment failure).

Handling Reactivations

Reactivation MRR comes from previously churned customers who return. Track customer history to identify returning buyers. When a customer with past cancelled subscriptions creates a new active subscription, categorize as reactivation. This distinction matters because reactivation indicates win-back success versus new acquisition. Track reactivation rate as a percentage of churned customers recovered.

Movement Insight

Companies with expansion MRR exceeding churned MRR by 50%+ achieve the 100%+ NRR that signals sustainable growth without reliance on new customer acquisition.

Building Revenue Dashboards

Transform raw revenue data into actionable dashboards that enable quick understanding and decision-making across the organization.

Essential Revenue Views

Build dashboards for: MRR trend (monthly time series), revenue waterfall (movements by category), MRR by plan/product (revenue mix), MRR by customer segment (cohort performance), and revenue concentration (top customer dependency). Each view serves different stakeholders—executives need trends and waterfalls, product teams need plan breakdowns, sales needs customer-level detail.

MRR Waterfall Visualization

The MRR waterfall chart is the single most valuable revenue view. Show starting MRR, add bars for new and expansion, subtract bars for contraction and churn, and arrive at ending MRR. Color-code for instant comprehension—green for growth, red for loss. Add drill-down capability to see which customers drove each category. Compare waterfalls across months to identify patterns.

Cohort Revenue Analysis

Track revenue by customer signup cohort over time. Each cohort row shows MRR from customers who started in that month across subsequent months. This reveals whether cohorts grow (expansion exceeds churn) or shrink over time. Healthy cohorts maintain or grow MRR; declining cohorts indicate retention problems. Segment cohorts by acquisition channel or plan to identify quality differences.

Real-Time Revenue Alerts

Configure alerts for significant revenue events: large customer churn (top 10% by MRR), unusual churn spikes (daily churn 2× average), expansion opportunities (usage triggers), and payment failures on high-value accounts. Route alerts to appropriate teams—customer success for at-risk accounts, sales for expansion signals. Track alert-to-action metrics to ensure visibility drives results.

Dashboard Impact

Teams with real-time revenue dashboards respond to churn signals 3 days faster and achieve 25% better save rates compared to those with monthly reporting.

Advanced Revenue Analytics

Beyond basic tracking, advanced analytics reveal deeper insights for strategic decision-making and forecasting.

Revenue Forecasting

Build forecasts combining: contracted MRR (current active subscriptions), expected churn (historical rate × current MRR), expected expansion (historical rate or pipeline), and sales pipeline (new MRR probability-weighted). Start with simple linear projections, then incorporate seasonality and trend analysis. For board reporting, provide ranges (conservative/base/optimistic) based on assumption variations.

LTV:CAC by Revenue Segment

Calculate customer lifetime value by segment: LTV = (ARPU × Gross Margin) / Churn Rate. Compare LTV to customer acquisition cost (CAC) by channel and segment. Identify which customer profiles generate highest returns. Segments with LTV:CAC below 3:1 may indicate unprofitable acquisition—either improve retention, increase pricing, or reduce acquisition spend for those segments.

Revenue Quality Metrics

Beyond volume, track revenue quality indicators: customer concentration (percentage from top 10 customers), plan mix (high vs. low tier distribution), contract terms (monthly vs. annual), and payment reliability (successful first charge rate). High concentration creates risk; healthy businesses keep top customer below 10% of MRR. Annual contracts improve predictability and reduce churn.

Benchmarking and Goals

Compare your metrics to industry benchmarks. Healthy SaaS targets: Net Revenue Retention above 100%, gross churn below 5-7% annually, expansion rate above 20% of starting MRR. Set goals by revenue movement category—don't just target net growth. A goal of "+$50K MRR" is less actionable than "+$80K new, +$30K expansion, -$40K churn, -$20K contraction." Category-level goals enable specific team accountability.

Forecasting Accuracy

Companies that forecast by revenue movement category achieve 40% more accurate projections than those forecasting net MRR change only.

Frequently Asked Questions

Should I calculate MRR from subscriptions or invoices?

Use subscriptions for current MRR—they represent committed recurring revenue. Use invoices to validate and for revenue recognition. Subscription-based MRR shows what customers are committed to pay; invoice-based shows what they actually paid. The two should align closely, with differences from prorations, credits, and failed payments. Reconcile monthly to catch discrepancies.

How do I handle annual contracts in MRR?

Divide annual contract value by 12 for MRR. If a customer pays $1,200 annually, record $100 MRR. This normalizes all subscriptions to monthly terms for comparison. Track contracted annual value (CAV) separately for cash flow forecasting. Some businesses also track Annual Contract Value (ACV) for sales compensation that differs from monthly MRR × 12.

What's the difference between gross and net churn?

Gross churn is total MRR lost to cancellations and downgrades, expressed as a percentage of starting MRR. Net churn accounts for expansion, showing whether existing customers generate more or less revenue over time. Net churn = Gross churn - Expansion rate. Negative net churn (or NRR > 100%) means expansion exceeds churn—the goal for SaaS businesses.

How do I track MRR for usage-based pricing?

For pure usage billing, MRR is harder to define since revenue varies monthly. Options include: using previous month's actual revenue, trailing 3-month average, or committed minimum. Most hybrid models have a base subscription plus usage—track the committed portion as MRR and usage as variable revenue separately. Report both for complete visibility.

When should I recognize expansion MRR—at upgrade or billing?

Recognize expansion MRR when the subscription changes to the higher value, not when payment occurs. MRR represents current recurring commitment, so an upgrade effective today increases MRR today, even if the first higher payment is next month. This matches how you'd recognize churn at cancellation, not at billing cycle end.

How do I handle customers with multiple subscriptions?

Sum MRR across all subscriptions for customer-level metrics, but track subscriptions individually for plan analysis. When calculating expansion or churn, compare total customer MRR between periods—if they cancel one subscription but upgrade another, the net change is what matters for customer-level reporting. Maintain both views for different analytical needs.

Key Takeaways

Effective revenue tracking transforms how you understand and grow your SaaS business. By extracting subscription data from Stripe and calculating MRR, ARR, and revenue movements, you gain visibility into what's actually driving your numbers—not just that you grew, but whether growth came from new customers, expansion, or reduced churn. Build dashboards that make these insights accessible to every stakeholder, from executives tracking company health to customer success teams identifying at-risk accounts. Implement real-time alerts that enable proactive response to revenue-impacting events. As you mature, add forecasting and benchmarking to guide strategic decisions. Revenue data is already flowing through Stripe with every transaction—the opportunity is organizing it into metrics that drive action. Start with basic MRR tracking, add revenue movement categorization, and progressively build toward the complete revenue intelligence system that powers data-driven SaaS growth.

Master Your Revenue Metrics

QuantLedger automatically calculates MRR, tracks revenue movements, and builds real-time dashboards from your Stripe data.

Related Articles

Explore More Topics