Example dashboard · invented company
A weekly KPI dashboard, with the checks first
AI agents build the dashboard from your billing, CRM and product data, and it arrives each week as a simple web page. It opens with what was loaded and which checks fired, then the week’s numbers against last week and the 8 weeks before, then the detail behind them. Nothing is installed on your systems. Building it is a sprint, from €12k, fixed before work starts; the weekly refresh is repeat work, on an async retainer from €8k a month. Below is one week’s dashboard for an invented subscription company.
The example · invented company
Dashboard, week to Sunday 27 September 2026
The agents ran it on Monday 28 September at 07:00. The company is the one in the revenue forecast demo and the monthly revenue report, in the same simulated run, so at each month-end its recurring revenue is the report’s to the euro. Every figure is computed when this page is built. To pick another week or switch the planted faults off, run the weekly dashboard demo.
What we pulled
Three of four sources hold data to Sunday 27 September. Product events stop at Thursday 24 September: the last load ran on Friday 25 September at 06:00, and nothing has loaded since. Each source loads at 06:00 with the day before.
| Source | State | Data to | Feeds | Rows this week | What a row is |
|---|---|---|---|---|---|
| Billing | Fresh | Sun 27 Sep | Recurring revenue, net new, both churn rates, plans | 103 | subscription changes |
| CRM | Fresh | Sun 27 Sep | Trial conversion | 132 | trials that ended |
| Product events | Stale | Thu 24 Sep | Sign-ups | 11,607 | sign-ups and logins |
| Web analytics | Fresh | Sun 27 Sep | The sign-up cross-check | 7,841 | sessions |
Sign-ups, the one figure that reads product events, count Monday to Thursday this week, and their tile compares the same four days of every earlier week. The other five figures read billing and the CRM, both loaded to Sunday. Web analytics holds the whole week, but it misses the visitors who block tracking, so it cross-checks the sign-up count and does not replace it.
What is broken
One of four checks fired. Scripts run the checks before any figure is printed.
| Check | Result | This week | What it tests |
|---|---|---|---|
| Totals reconcile | Passed | 30 new customers in billing and 30 paid trials in the CRM; 86 sign-ups in product events and 79 in web analytics | Billing's new customers, after the duplicate match, are the trials the CRM marks as paid. Product events and web analytics count sign-ups within 10% of each other on the days both hold. |
| No duplicate customers | Fired | 2 of the 6 returning customers came back under a new customer ID | Each customer has one customer ID in billing, matched by email. |
| The bridge adds up | Passed | €342,498 + €2,024 − €2,591 = €341,931 | Last Sunday's recurring revenue, plus what new and returning customers and upgrades added, less what cancellations and downgrades took, is this Sunday's. |
| No plan with a negative count | Passed | Lowest at any day's end: Scale, 468 | Every plan holds zero customers or more at the end of every day. |
What it means. Billing gave two of this week’s six returning customers a new customer ID, so billing on its own reads them as new customers. The check matches each new ID to an old one by email, and on this dashboard they count as returning. Unmatched, the week would show 32 new customers instead of 30, and 4 returning instead of 6. Recurring revenue is the same either way: new and returning customers both join Starter at €29. Merging each pair of IDs in billing stops the check firing for them.
The numbers that matter
Recurring revenue
€341,931
At Sunday's close, down €567 on last week. Previous 8 weeks: €339,007 to €342,498. Invented company.
Net new recurring revenue
−€567
€2,024 added, €2,591 lost. Last week +€29. Previous 8 weeks: −€79 to +€1,346. Below that range. Invented company.
Customer churn
1.1%
49 of the 4,492 customers paying on Monday left. Last week 0.7%. Previous 8 weeks: 0.7% to 0.9%. Above that range. Invented company.
Revenue churn
0.8%
€2,591 lost to cancellations and downgrades, of €342,498 at the week's start. Last week 0.7%. Previous 8 weeks: 0.5% to 0.8%. Invented company.
Sign-ups, Monday to Thursday
86
Product events stop at Thursday, so every week counts the same four days. Last week 91. Previous 8 weeks: 77 to 100. Invented company.
Trial conversion
22.7%
30 of the 132 trials that ended paid. Last week 23.5%. Previous 8 weeks: 19.9% to 25.8%. Invented company.
The detail behind it
Recurring revenue at each Sunday’s close, 5 July to 27 September 2026
The 13 weeks as a table, with every KPI
| Week to | Recurring revenue | Net new | Customer churn | Revenue churn | Sign-ups, Monday to Thursday | Trial conversion |
|---|---|---|---|---|---|---|
| Sun 5 Jul | €336,163 | −€127 | 0.9% | 0.8% | 90 | 28.3% |
| Sun 12 Jul | €337,713 | +€1,550 | 0.5% | 0.3% | 71 | 29.2% |
| Sun 19 Jul | €338,403 | +€690 | 0.8% | 0.5% | 80 | 28.1% |
| Sun 26 Jul | €339,086 | +€683 | 0.7% | 0.5% | 87 | 23.5% |
| Sun 2 Aug | €339,007 | −€79 | 0.7% | 0.6% | 100 | 25.8% |
| Sun 9 Aug | €339,566 | +€559 | 0.9% | 0.7% | 79 | 22.6% |
| Sun 16 Aug | €340,126 | +€560 | 0.8% | 0.8% | 90 | 25.5% |
| Sun 23 Aug | €340,328 | +€202 | 0.8% | 0.6% | 86 | 21.8% |
| Sun 30 Aug | €340,489 | +€161 | 0.9% | 0.7% | 84 | 19.9% |
| Sun 6 Sep | €341,123 | +€634 | 0.8% | 0.6% | 77 | 22.4% |
| Sun 13 Sep | €342,469 | +€1,346 | 0.8% | 0.5% | 82 | 21.7% |
| Sun 20 Sep | €342,498 | +€29 | 0.7% | 0.7% | 91 | 23.5% |
| Sun 27 Sep | €341,931 | −€567 | 1.1% | 0.8% | 86 | 22.7% |
| Plan | Sun 20 Sep | Joined | Left | Moved, net | Sun 27 Sep | Recurring revenue |
|---|---|---|---|---|---|---|
| Starter (€29) | 2,803 | 36 | 41 | −11 | 2,787 | €80,823 |
| Growth (€99) | 1,219 | 0 | 7 | +12 | 1,224 | €121,176 |
| Scale (€299) | 470 | 0 | 1 | −1 | 468 | €139,932 |
| All plans | 4,492 | 36 | 49 | 0 | 4,479 | €341,931 |
What changed.
- Recurring revenue fell €567 to €341,931. Cancellations took €2,181 and downgrades €410, against €2,024 from 30 new customers, 6 returning and 14 upgrades.
- 49 customers left, 1.1% of those paying on Monday, above the range of the previous 8 weeks. 41 were on Starter, 7 on Growth and 1 on Scale; the 8 on Growth and Scale took €992 a month of the €2,181 lost to cancellations.
- Trial conversion fell to 22.7%, from 23.5% last week: 30 of the 132 trials that ended paid. It stays inside its 8-week range, whose low is 19.9%.
- Sign-ups were 86 from Monday to Thursday, fewer than the 91 on the same days last week and inside their range. The days after Thursday are missing until product events load again.
Checks and sign-off
Sign-off. This dashboard is a routine refresh: the same page every week, on the week’s data. It carries its checks and no signature. What the analytics director signs is what you act on, such as a decision memo drawn from it.
On your data
What an agent-made dashboard is
A recurring report, or a simple hosted page like this one, that AI agents build from your warehouse or your exported files. It is not a Looker or Power BI build, and nothing is installed on your systems.
What it reads. Billing history per customer, with plan changes and cancellations; trials from your CRM; sign-ups from your product’s events. From exported files or your warehouse. Where the data goes is set out on data handling.
How it is built. In the first sprint, agents write the dashboard’s queries and its checks: the loads, the duplicates, the totals and the bridge. The checks are scripts, not AI, and a review agent reviews the work before it reaches you (on what you act on, a panel of three reviewer agents and a judge, then the analytics director’s sign-off). Each week after that, the dashboard runs again on the week’s data, with the same checks and its method note. How the checks and the review fit together is on how it works.
How it arrives. As a simple web page like this one. The month’s view, with a forecast, is the monthly revenue report. Which KPIs a young subscription company tracks, and how each is defined, is in what KPIs a Series A startup should track.
Not covered. Building a data warehouse, or dashboards in Looker or Power BI. The dashboard reads the data where it already is.
Start here
Want this dashboard on your own numbers?
Up to thirty minutes on your billing data, then a fixed proposal.