Four kinds of dashboards, one confusing name
- Operational – live events, updated as they happen: signups, payments, errors, jobs.
- Strategic – quarterly or yearly goals, reviewed by leadership on a schedule.
- Analytical / BI – historical data from a warehouse, built for deep exploration, not real time.
- Product analytics – every click and screen, instrumented to study funnels and behavior in depth.
This guide is about the first kind – built from the same events that also trigger your alerts.
Three operational dashboard examples
Revenue operations
Watch payments, failed renewals, cancellations, MRR and revenue at risk from the billing events your application sends.
Product operations
Follow signups, activation, upgrades and key feature usage to see whether users are reaching value.
Reliability operations
Track failed jobs, business errors and deployments so operational problems appear before customers report them.
A starter operational dashboard template
Start with one compact view. Add a widget only when it answers a recurring question or changes an action.
- Top row – MRR, signups, churn and failed payments.
- Trend row – signup-to-activation funnel, revenue over time and business error rate.
- Live context – the latest payment, cancellation, deployment and failed job events.
12 SaaS metrics worth seeing live
Each one has a decision attached – if you can't name the decision, skip the metric.
| Metric | Formula | Frequency | Source event | Decision it drives |
|---|---|---|---|---|
| MRR | Sum of active subscription amounts | Daily | subscription.created / .updated |
Catch revenue dips early |
| New signups | Count of signup events | Daily | signup |
Watch top-of-funnel health |
| Activation rate | Activated signups ÷ total signups | Weekly | signup, activation |
Diagnose onboarding friction |
| Trial-to-paid conversion | Converted trials ÷ started trials | Weekly | trial.started, subscription.created |
Evaluate pricing and onboarding |
| Churn rate | Canceled subscriptions ÷ active at period start | Monthly | subscription.canceled |
Flag retention problems |
| Failed payments | Count of failed charges | Daily | invoice.payment_failed |
Trigger dunning follow-up |
| Revenue at risk | Sum of amount on failed payments | Daily | invoice.payment_failed (amount) |
Prioritize recovery outreach |
| Average revenue per account | MRR ÷ active accounts | Monthly | subscription events | Track pricing health |
| Support requests | Count of support events | Daily | support.requested |
Staff support appropriately |
| Business error rate | Business errors ÷ requests | Daily | business error events | Catch quality regressions |
| Job failure rate | Failed jobs ÷ jobs run | Daily | job.failed, job.completed |
Catch infrastructure issues |
| Active users | Distinct users with an event | Daily or weekly | any event with a user field | Gauge real engagement |
Don't build a decorative dashboard
A widget earns its place only if it changes what you do. Before adding one, finish this sentence: "If this number moves, I will...". If you can't, leave it off – a dashboard nobody acts on is just wallpaper.
Frequently asked questions
How is this different from a BI dashboard?
A BI dashboard reports on historical data pulled from a warehouse on a schedule. An operational dashboard updates as events happen, and the same event can also trigger a native alert.
Do I need all 12 metrics from day one?
No. Start with signups, MRR and failed payments – the three that catch the most common early problems – and add the rest as questions come up.
Can the same events power alerts and this dashboard?
Yes. Every event you send can trigger a native notification and feed a metric or chart at the same time – no separate integration for each.



