Tracking · Dashboard & KPI Spec

Spec a Revenue-by-Cohort Dashboard

Spec a client-cohort revenue dashboard so you see retention, expansion, and churn by signup cohort.

founderAdvanced6-10 hours
When to use
Use when MRR feels flat and you can't tell if new sales are masking churn. Run before any retention or pricing initiative so you have a real cohort baseline. Best when you have at least 12 months of monthly client revenue data.
The prompt
You are a RevOps lead spec'ing a revenue-by-cohort dashboard. You expose retention truth that aggregate MRR hides.
Agency: [AGENCY_NAME] — [SERVICES] | BI: [BI_TOOL] | CRM/Billing: [BILLING_TOOL] | Audience: founder + CFO | Cohort granularity: [COHORT_GRANULARITY] (monthly / quarterly) | Months of history: [HISTORY_MONTHS] | Avg contract length: [CONTRACT_LENGTH] | Service lines: [SERVICE_LINES]
Spec the cohort revenue dashboard widget-by-widget — chart type, metric, filter, refresh cadence, action threshold, owner. The dashboard must show retention curves, NRR by cohort, expansion vs contraction, and churn timing — segmented by service line and acquisition source.

- Max 8 widgets
- Must include a cohort retention triangle (the foundational view)
- Show NRR (Net Revenue Retention) per cohort, not just logo retention
- Segment by service line and lead source
- Action thresholds must trigger retention / pricing / packaging decisions
- No vanity metrics (no 'total clients' without retention)

Markdown table: Widget # | Widget Name | Chart Type | Metric | Filter | Refresh | Action Threshold | Owner. Add a 3-bullet 'strategic decisions this dashboard unlocks'.
Variables
  • [AGENCY_NAME] — Agency name
  • [SERVICES] — Services sold
  • [BI_TOOL] — BI tool
  • [BILLING_TOOL] — Stripe, QuickBooks, etc.
  • [COHORT_GRANULARITY] — Monthly or quarterly cohorts
  • [HISTORY_MONTHS] — Months of billing history
  • [CONTRACT_LENGTH] — Avg contract length in months
  • [SERVICE_LINES] — Service lines to segment by
Example input
Agency: Halo Growth — SEO + paid retainers | BI: Looker Studio | Billing: Stripe + QuickBooks | Audience: founder + CFO | Cohorts: monthly | History: 36 months | Contract: 6-mo min | Services: SEO, Paid, Bundle
Example output
| # | Widget | Chart | Metric | Filter | Refresh | Action Threshold | Owner |
|---|---|---|---|---|---|---|---|
| 1 | Cohort Retention Triangle | Heatmap | % of cohort still active by month | Last 24 cohorts | Monthly | 30% = delivery problem | Founder |
| 4 | Expansion vs Contraction $ | Stacked bar | Up vs down $ per cohort | Last 12mo | Monthly | Contraction > expansion = pricing review | Founder |
| 5 | Retention by Service Line | Line | % retained at mo 6 per service | Last 18mo | Quarterly | Any service <60% = redesign offering | Founder |
| 6 | Retention by Lead Source | Line | % retained at mo 6 per source | Last 18mo | Quarterly | Low-retention source = stop investing | Founder |
| 7 | LTV by Cohort | Bar | Avg revenue per client over life | Last 18mo | Monthly | Declining = packaging issue | CFO |
| 8 | Time-to-First-Churn | Histogram | Months to first churn | Last 24mo | Monthly | Cluster at month 3 = onboarding cliff | Founder |

Strategic decisions: 1) Where to invest in onboarding (widget 1+8). 2) Which service line to redesign or sunset (widget 5). 3) Which acquisition source to defund based on retention (widget 6).
Pro tips
  • If NRR <100% you are running on a leaky bucket — new sales are subsidizing churn. Fix retention before scaling acquisition.
  • Cohort by sign-up month, not by service — service-line analysis is widget 5, not the primary axis.
  • Re-run the heatmap quarterly — onboarding changes show up first in the cohort triangle, often before any other metric moves.
Works with
ClaudeChatGPTGemini
Done with prompts? Time to install the system
Book a STAOS call
Related prompts