MRR (Monthly Recurring Revenue) is the most important number for any subscription business. If you're a SaaS founder or operator and you don't have a clean MRR tracker, this guide will fix that. You don't need a fancy billing tool — a well-built spreadsheet handles everything you need for accurate MRR tracking and reporting.
What You're Actually Tracking
MRR isn't just total revenue in a month. The useful version breaks it into movements:
- New MRR — Revenue from customers who didn't exist last month
- Expansion MRR — Revenue from existing customers who upgraded
- Contraction MRR — Revenue lost from customers who downgraded
- Churned MRR — Revenue lost from customers who cancelled
- Net New MRR — New + Expansion - Contraction - Churn
- Total MRR — Last month's MRR + Net New MRR
These five movements explain everything about your growth. Total MRR alone doesn't — it just tells you where you ended up, not how you got there.
Your Subscription Log
Start with a flat subscription log: one row per customer per month. Columns: customer ID, customer name, month, plan, MRR amount, and status (Active, New, Expanded, Contracted, Churned).
This is the most important structural decision. One row per customer per month, not one row per customer total. This lets you calculate movements between months with simple formulas.
Calculating MRR Movements
For each month, calculate each movement type using SUMIFS against your subscription log:
New MRR (customers with status "New" this month):
=SUMIFS(Log!E:E, Log!C:C, A2, Log!F:F, "New")
Expansion MRR:
=SUMIFS(Log!E:E, Log!C:C, A2, Log!F:F, "Expanded")
Churned MRR (as a negative number):
=-SUMIFS(Log!E:E, Log!C:C, A2, Log!F:F, "Churned")
Where A2 is the month, Log!C is the month column, Log!E is the MRR amount, and Log!F is the status.
Net New MRR:
=B2+C2+D2+E2
Where B, C, D, E are New, Expansion, Contraction, Churn.
Total MRR this month:
=F1+F2
Where F1 is last month's Total MRR and F2 is Net New MRR. Chain this down for every month.
Churn Rate
Monthly churn rate is churned MRR divided by last month's total MRR:
=ABS(E2)/F1
Format as percentage. Track this every month. A churn rate above 2-3% monthly is a serious problem for most SaaS businesses.
Visualizing MRR Growth
Build a stacked bar chart from your MRR movements table. Each month is a bar. New MRR and Expansion are positive segments, Contraction and Churn are negative. The net height of the bar represents Net New MRR. This is the standard way to visualize MRR waterfall in investor reports and board decks.
The Easy Way: Using SheetXAI in Google Sheets or Excel
Example 1: You have subscription data already in the sheet.
"I have a subscription log on Sheet 1 with customer name, month, MRR, and status. Build an MRR tracker showing New, Expansion, Contraction, Churned, and Net New MRR by month, calculate monthly churn rate, and add a waterfall chart."
SheetXAI reads your data, calculates all five MRR movements, builds the monthly table, and generates the waterfall chart.
Example 2: Your billing data lives in Stripe or another billing system.
"Connect to Stripe and build an MRR tracker showing monthly MRR movements — new, expansion, contraction, and churn — with a churn rate and a chart showing the trend over the last 12 months."
SheetXAI pulls from Stripe, calculates the movements, and builds the full MRR dashboard.
Try SheetXAI free and see what it builds for you.
Published May 2026. See also: How to Create a Cash Flow Forecast in Google Sheets, How to Build a Profit and Loss Report in Google Sheets, and Google Sheets AI Guide.