HAHayat Amin · Operator
AI Operator for SMEs · Updated 2026-10-03

SaaS KPI Dashboard: The 8 Numbers I Would Put on It, and the System Each One Is Stuck In

A SaaS KPI dashboard for a company past its first million needs eight numbers, refreshed daily. They are MRR movement, net revenue retention by cohort, customer churn with names attached, MRR sitting in past due, CAC payback by channel, gross margin, the burn multiple, and deals closed in the CRM that aren't billing yet.

I'm Hayat Amin. I spent twenty years as a technology chief financial officer and sold three companies from that seat, so I've closed enough month ends to know what a month end report is: an accurate account of a decision you can no longer make. I now build the plumbing that makes them live, inside the company, as a forward deployed engineer. This piece is for the founder or chief executive of a software company somewhere between 1 and 20 million dollars of ARR, usually in New York, San Francisco or London, who has outgrown the board deck spreadsheet and can't yet justify a data team.

An illuminated manuscript page in the spirit of the golden age of Islamic art, lapis blue and turquoise arabesque panels framed in gold on aged cream paper. At the centre sits a round lapis vessel with a gold medallion, and inside it a turbaned figure beneath a small domed pavilion reads three brass dials on a dark console. Cream ribbons of water flow into the vessel from both sides, while two thinner streams slip out at the bottom and trail away beyond the frame. A domed arched hall rises above the vessel.
Many small streams run into one vessel, and the reader at its centre watches three dials while the water is still moving. Two thin streams leave at the bottom of the page. Nobody in the picture is waiting for the month to close before they notice.

Why month end is too late for a SaaS company

Ledge surveyed 100 finance professionals for its 2025 month end close benchmarks, and CFO.com reported the results in April 2025. Half of finance teams take six or more business days to close. Only 18 percent close in one to three days. 27 percent regularly take more than seven.

In a subscription business that delay compounds. A customer who downgraded on the 2nd shows up in the board pack around the 10th of the following month, which is close to 40 days after the decision that mattered. By then the renewal conversation that could have saved the account has already not happened. The number on the slide is right, and there's nothing left to do about it.

The data isn't missing. Stripe defines MRR, churn and cohort retention in its own billing analytics. ChartMogul lists more than 30 billing systems it can import from, from Stripe and Chargebee to QuickBooks and Xero. What's missing is the join between billing and the four other systems that own the rest of each number.

How I chose these eight

I used three tests. A number makes the list only if it changes a decision inside the week. It has to be computable from records the company already keeps, because a dashboard that needs new manual entry dies within about six weeks. And it has to decay by month end. Cash in the bank fails the third test, since the bank already shows it live, so it isn't here.

For each one I've said where it lives today. That's the real engineering problem, and it's the part most SaaS dashboard templates leave out.

1. MRR movement: new, expansion, contraction and churn

Stripe defines MRR as the sum of the monthly normalised value of all active and past due subscriptions. It excludes taxes, free plans and metered usage products. MRR growth, in Stripe's definition, starts with opening MRR, adds new, reactivation and expansion MRR, subtracts contraction and churn, and adjusts for currency.

It lives in the billing system, which is the one place on this list where the tool already does the job. Stripe Billing computes it, and ChartMogul says its Stripe import updates in real time.

The total is the least useful version. I want the four movements side by side, every day. A month where new MRR hides rising contraction looks fine in the total and is the start of a retention problem. Seen on day 6, it's a call to customer success. Seen on day 40, it's a slide.

It matters less if you sell annual contracts paid upfront and move a handful of deals a month. Then the CRM is the earlier signal, and number 8 is where to look.

2. Net revenue retention, by cohort

ChartMogul calculates net revenue retention as starting MRR plus expansion and reactivation, minus contraction and churn, divided by starting MRR. Its December 2025 analysis of 3,500 software companies put the median for B2B SaaS at 82 percent and the top quartile at 97 percent.

The billing tool computes the blended figure. The cohort split, by plan, by sales channel or by the industry the customer is in, needs fields from the CRM, because billing doesn't know which salesperson sold the account or which segment it sits in. ChartMogul's HubSpot import brings those properties across hourly as custom attributes you can segment on.

One blended NRR figure hides the decision. If customers sold through partners retain at 95 percent and direct sales accounts retain at 70, that's a hiring decision for the next quarter, and you can see it in week 2 instead of in the annual plan.

Below roughly 50 customers, cohorts are too small to mean much. Read the account list instead.

3. Customer churn rate, with the names attached

Stripe calculates subscriber churn rate as churned subscribers in the past 30 days divided by active subscribers 30 days ago plus new subscribers in the period. ChartMogul's analysis found median customer churn of 1.7 percent at companies with NRR at or above 100 percent, against 7.3 percent where NRR is under 60.

The rate lives in billing. The early warning lives elsewhere, in product usage, in the support desk and in the last time anyone spoke to the account. Those are three more systems, often Intercom or Zendesk, a product analytics tool, and the CRM.

A rate tells the board what happened. A list of the 12 accounts whose logins halved this month tells customer success who to call this afternoon. I'd put the rate on the dashboard and the list one click under it.

4. MRR sitting in past due

This is the one I'd add first, because it's the easiest to miss. Stripe counts subscriptions in past due status inside MRR. A subscription only leaves MRR as churn when it's cancelled or marked unpaid. So revenue whose card has already failed still sits in your headline number while the retries run.

Stripe shows unpaid invoice balances grouped by age on its Collections page, and its documentation says that view reflects balances as of today. The problem is that nobody running the company looks at the Collections page. The number stays in a finance screen and never reaches the chief executive.

Put past due MRR next to total MRR and the headline becomes honest. If 4 percent of MRR is past due on the 3rd, that's a dunning and payment method problem you can fix this week, before it turns into churn on the board slide.

Invoice billed enterprise customers on 30 or 60 day terms behave differently. For them this is an accounts receivable ageing question and belongs with the controller.

5. CAC payback, by channel

ChartMogul gives the formula as CAC divided by ARPA times gross margin, and says under about 12 months is commonly considered strong for SMB focused SaaS, with 12 to 24 months typical for larger contract enterprise SaaS.

This number is spread across more systems than any other on the list. Ad spend is in Google Ads and LinkedIn. Sales salaries are in payroll. Attribution is in HubSpot or Salesforce. ARPA is in billing. Gross margin is in the accounting system. That's five sources, and in most companies one person rebuilds the join in a spreadsheet once a quarter.

Quarterly is too slow for the decision it informs, which is where next month's marketing money goes. A channel paying back in 9 months and a channel paying back in 30 look identical in a blended figure. Split by channel and refreshed weekly, it moves budget while the campaign is still running.

If almost all your customers come from founder led sales and referrals, there's no channel split to make yet. Track the payroll cost of sales against new MRR and leave it there.

6. Gross margin, every month

ChartMogul defines gross margin as revenue minus cost of goods sold, over revenue. For SaaS it puts hosting and infrastructure, customer support salaries, payment processing fees and third party licences in cost of goods sold. It calls 70 to 85 percent a general industry convention for mature product led companies, not a fixed rule.

The pieces sit in the AWS, Google Cloud or Azure bill, in payroll, in Stripe's fees and in the AI model provider's invoice. The accounting system sees them only after the close.

This is the number I'd watch most closely now. A product that calls a large language model on every request has a cost line that moves with usage, and a single heavy customer can turn a profitable plan into a loss inside a fortnight. I'd want gross margin by plan, refreshed daily from the cloud and model bills, before I priced the next tier.

If your infrastructure cost is a flat contract and small against revenue, monthly from the accounts is enough.

7. The burn multiple

David Sacks of Craft Ventures introduced the burn multiple in an April 2020 essay. It's net burn divided by net new ARR. The SaaS CFO sets out his bands: below 1.0x is amazing, 1.0x to 1.5x great, 1.5x to 2.0x good, 2.0x to 3.0x suspect and above 3.0x bad.

Net burn comes from the bank and the accounting system. Net new ARR comes from billing. They're never in the same place, which is why most founders only learn their burn multiple when an investor works it out for them.

It's the one number that tells you whether growth is being bought or earned. On a trailing 90 days, updated weekly, it tells you whether the hire you're about to make is affordable. If you're profitable, skip it. It only means something while you're burning.

8. Closed won in the CRM, not yet billing

These are deals your sales team marked as won, where no subscription exists in billing yet. That covers signed contracts waiting on procurement, on onboarding or on somebody to create the plan in Stripe.

Nobody owns this number. Sales sees the deal as finished and finance hasn't seen it at all. It's the SaaS version of committed cost not yet invoiced, which I wrote about in the construction KPI dashboard piece.

Live, it does two things. It stops bookings being reported as revenue before they bill. It also shows the deals that have sat for 30 days without a subscription, and in my experience that's where a signed customer quietly changes their mind.

What it takes to make these live

None of the eight needs artificial intelligence to calculate. It's arithmetic. The reason a 30 person SaaS company doesn't have them is plumbing. Billing is in Stripe or Chargebee, the pipeline is in HubSpot or Salesforce, the ledger is in QuickBooks, Xero or NetSuite, cost is in the cloud bill, and cash is in the bank. Each was bought by a different person in a different year.

So the work is joining. Read each system through its interface on a schedule, land the records in one warehouse, agree which system is the authority for each field, compute the eight, and put them on one screen. ChartMogul already does part of this for the billing side, and it lists exports to Snowflake, BigQuery and Redshift. The CRM, ledger, cloud bill and bank still have to be joined by somebody.

AI earns its place after that, in two narrow spots. It reads the messy inputs, such as contract PDFs and cancellation reasons typed into a support ticket, and turns them into fields. Then it watches the eight numbers and tells a named person which one moved and why. That's what I mean by AI operations, and it's the work my firm, Beyond Elevation, does for software companies that want the numbers before the board asks for them.

The numbers I would leave off

A dashboard is trusted because it's short. I've taken four common tiles off SaaS dashboards and never missed them.

Lifetime value comes first. Stripe calculates it as ARPU divided by churn rate, which means a small churn change swings it wildly, and a number that swings that much invites people to argue about it instead of acting on it. CAC payback answers the same question more honestly.

Website traffic and signups belong to marketing's own screen. Net Promoter Score needs a survey nobody has time to run monthly, so it fails my second test. Headcount is a hiring plan, not a live number.

About Hayat Amin

I'm Hayat Amin, and I've spent twenty years in technology, most of it as chief financial officer of companies growing faster than their reporting. I've sold three companies from that seat, with American Express and TripAdvisor among the buyers, and been through three FT 100 fastest growing listings. Sitting on the sell side of those deals taught me that a buyer tests the numbers before anything else.

What I'm exceptional at is the work this piece describes: connecting systems that were never built to talk to each other, and turning what comes out into a real time number a chief executive can run the week on. I also value and monetise intellectual property and data assets, and I sit beside the founder from the first conversation to the wire transfer on an exit. I don't write a report about it. I build it in your systems and stay accountable until it runs without me, which is what a forward deployed engineer does.

I'm available now for fractional CFO and AI operations work through Beyond Elevation. The engineering side is at meethayat.com/services/fde, and the CFO seat at meethayat.com/cfo.

If you want a second pair of eyes on which of these eight you could have live first, I do a free audit call, at beyondelevation.com/call/hayat.

Questions people actually ask

What are SaaS KPIs?

They're the numbers that tell a subscription software company whether its recurring revenue is growing, staying and paying for itself. The core set is MRR and how it moved, net revenue retention, customer churn, CAC payback, gross margin and the burn multiple. A KPI earns the name only if somebody changes a decision when it moves inside the week.

What should a SaaS KPI dashboard show?

Eight numbers, refreshed daily. MRR movement split four ways, net revenue retention by cohort, churn with the account names attached, MRR sitting in past due, CAC payback by channel, gross margin every month, the burn multiple, and deals closed in the CRM that aren't billing yet. Each lives in a different system, so most of the build is joining them.

What are good SaaS KPI benchmarks?

ChartMogul's December 2025 analysis of 3,500 software companies puts median B2B SaaS net revenue retention at 82 percent and the top quartile at 97. ChartMogul says CAC payback under about 12 months is commonly considered strong for SMB focused SaaS, and 12 to 24 months is typical for enterprise. It treats 70 to 85 percent gross margin as a convention for mature product led companies. On the burn multiple, Sacks rates below 1.0x amazing and above 3.0x bad.

What are some SaaS KPI examples?

MRR, which Stripe defines as the monthly normalised value of all active and past due subscriptions. Net revenue retention, which ChartMogul calculates as starting MRR plus expansion and reactivation, minus contraction and churn, over starting MRR. CAC payback, which is CAC divided by ARPA times gross margin. The burn multiple, which is net burn over net new ARR. Gross margin, which is revenue less cost of goods sold, over revenue.

Can I build a SaaS KPI dashboard in Excel?

You can, and plenty of companies do. The spreadsheet isn't the problem. Billing, the CRM, accounting, the cloud bill and the bank each export on their own schedule, so the sheet is only as fresh as the last paste. Once those five are joined on a schedule, Excel, Google Sheets or a BI tool will all show the result.

Where these numbers come from

The MRR, MRR growth, subscriber churn, past due and lifetime value definitions, and the Collections page ageing view, are from Stripe's Billing analytics documentation. The net revenue retention formula and the December 2025 benchmarks across 3,500 companies are from ChartMogul on NRR, the churn figures from ChartMogul on customer churn, the payback formula and bands from ChartMogul on CAC payback and the margin formula and range from ChartMogul on gross margin. The list of billing sources and warehouse exports is from ChartMogul's integrations page, the real time Stripe sync from its Stripe integration guide and the hourly HubSpot sync from its HubSpot integration guide. The burn multiple formula, origin and bands are from The SaaS CFO. The close figures are Ledge's survey of 100 finance professionals as reported by CFO.com on 23 April 2025. Every page was read on 3 October 2026. No prices are quoted because I didn't read one on a vendor page this run. The 4 percent past due, the 95 and 70 percent cohorts, the 9 and 30 month paybacks and the 12 accounts are illustrations, not measurements of any company.