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.

Rachel Morrison
SaaS Analytics Expert
Rachel specializes in SaaS metrics and analytics, helping subscription businesses understand their revenue data and make data-driven decisions.
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
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
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
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
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
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
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

Expansion Revenue Tracking 2025: Upsells, Cross-sells & Upgrades
Track expansion revenue in Stripe: measure upsell MRR, cross-sell conversions, and upgrade rates. Achieve 100%+ net revenue retention.

SaaS Revenue Audit Guide 2025: Stripe Reconciliation & Accuracy
Audit SaaS revenue from Stripe: reconcile MRR, verify subscription billing, and ensure accurate revenue recognition. Complete audit checklist.

SaaS Revenue Forecasting Guide 2025: Predict MRR Growth
Forecast SaaS revenue from Stripe: build MRR projections, model growth scenarios, and create investor-ready ARR forecasts. Data-driven predictions.