Executive overview
Operational health across pipeline, service and productivity.
Revenue against target
10 monthsClosed-won revenue by month against a $1.9M monthly target. Three months under, seven over.
Deal source mix
Share of pipelineStalled deals
5 stalledRecent activity
What moved this week
Rule-derivedEvery figure on this screen resolves to a definition in the metric catalogue. If you disagree with a number, the argument is about the definition, and it happens once.
Pipeline
Funnel health, stage velocity and rep performance.
Stage funnel
| Stage | Deals | Value | Average days | Conversion |
|---|---|---|---|---|
| Appointment scheduled | 13 | $1,641,000 | 3.9 | 68% |
| Qualified to buy | 15 | $1,537,000 | 7.2 | 74% |
| Presentation scheduled | 15 | $1,436,000 | 7.8 | 61% |
| Contract sent | 17 | $1,842,000 | 5.0 | 58% |
| Closed won | 44 | $4,709,000 | 1.9 | - |
Quota attainment
This quarterDeals by owner
Won, open and lostStalled deals
5 stalledService and SLA
Response times, attainment and backlog health.
Tickets created against resolved
14 daysCreated per day. Resolution has not kept pace since day nine, which is where the backlog came from.
Attainment by priority
Resolved within targetUrgent is the worst-served priority, which is the opposite of what the target intends.
Backlog by age
Open ticketsBreaching next
3 at riskAttainment is measured against the target that applied when the ticket was raised. Changing a target does not retroactively improve last quarter.
Data quality
Completeness, staleness and ownership gaps across records.
Field completeness
Required fields populatedOrphaned owners
7 recordsRecords needing attention
| Record | Type | Owner | Issue | Last touched |
|---|---|---|---|---|
| Cannot sign in to the dashboard | Ticket | Ingrid Solberg | Missing priority | 3 days ago |
| Dashboard loading slowly | Ticket | Bram de Vries | Missing priority | 4 days ago |
| Export stuck processing | Ticket | Chiara Moretti | Missing priority | Yesterday |
| Fenwick Group, new business | Deal | Chiara Moretti | Missing amount | 11 days ago |
| Aviato Systems, new business | Deal | Unassigned | Orphaned owner | 38 days ago |
| Tyrne Corporation, renewal | Deal | Unassigned | Orphaned owner | 42 days ago |
Metric catalogue
What each number means, who owns it and when it changed.
Metric catalogue
6 metrics| Metric | Definition | Owner | Status | Last changed |
|---|---|---|---|---|
| Pipeline value | Sum of open deal amounts, excluding Closed lost | Revenue operations | Agreed | 14 Jun 2026 |
| Win rate | Closed won divided by Closed won plus Closed lost, by close date | Revenue operations | Agreed | 02 Mar 2026 |
| SLA attainment | Tickets resolved within the target that applied when raised | Service operations | Agreed | 19 May 2026 |
| Sales cycle | Days from deal creation to Closed won, median not mean | Revenue operations | In review | 28 Aug 2026 |
| Activities per rep | Calls, emails and meetings logged, per active rep per working day | Revenue operations | Agreed | 11 Jan 2026 |
| Qualified pipeline | Superseded by Weighted value | Revenue operations | Deprecated | 05 Feb 2026 |
Alerts
Thresholds, who is notified and what is firing.
Firing now
2 firing| Alert | Metric | Condition | Notify | Status |
|---|---|---|---|---|
| Urgent SLA attainment | SLA attainment | Below 70% for 1 day | Service leads | Firing |
| Source failure | Source health | Any failed run | Revenue operations | Firing |
| Pipeline coverage | Weighted value | Below 3x quota | Sales managers | Acknowledged |
| Backlog growth | Open backlog | Up more than 15% week on week | Service leads | Resolved |
| Completeness | Field completeness | Below 95% on any required field | Revenue operations | Muted |
Scheduled delivery
Reports that go out on their own, with what they contained.
Scheduled delivery
| Report | Recipients | Frequency | Format | Last sent | Status |
|---|---|---|---|---|---|
| Executive overview | Leadership, 6 people | Monday 08:00 | Monday | Active | |
| Pipeline by team | Sales managers, 4 people | Daily 07:30 | CSV and PDF | Today | Active |
| SLA attainment | Service leads, 3 people | Monday 09:00 | Monday | Active | |
| Data quality exceptions | Revenue operations, 2 people | Daily 06:00 | CSV | Today | Active |
| Quarterly board pack | Board, 7 people | Quarterly | 01 Jul | Paused |
Data sources
Where the numbers come from and how fresh they are.
Data sources
1 failing| Source | Type | Schedule | Last run | Rows | Status |
|---|---|---|---|---|---|
| CRM | API | Every 15 minutes | 11 minutes ago | 412,800 | Healthy |
| Service desk | API | Every 15 minutes | 9 minutes ago | 186,200 | Healthy |
| Billing export | SFTP file | Nightly, 02:00 | 6 hours ago | 0 | Failed |
| Product telemetry | Warehouse | Hourly | 38 minutes ago | 1,102,400 | Healthy |
| Directory | API | Nightly, 01:00 | 7 hours ago | 1,284 | Healthy |
| Marketing | API | Every 6 hours | 2 hours ago | 142,600 | Stale |
Freshness is stamped on every screen. "Data as of" is not decoration: a dashboard that cannot tell you how old it is should not be trusted.
Governance
Access, rules and the definition change log.
Access
Rules
Audit log
Append only| When | Who | What changed | Detail |
|---|---|---|---|
| Yesterday | Ruth Vasari | Metric definition | Sales cycle moved from mean to median |
| 3 days ago | Chiara Moretti | Alert | Completeness alert muted until 30 September |
| Last week | Ruth Vasari | Access | Mid-market manager scope extended to Service |
| Last week | Ruth Vasari | Source | Marketing sync moved from hourly to six-hourly |
On-time delivery
One metric, its definition and everything that trusts it.
On-time delivery
Rose from 88% to 94% in July. Nothing about the operation changed; the definition started measuring against the revised promised date rather than the original one.
What changed
Which is right
What depends on this
Define a metric
What it counts, who owns it, and when it may change.
The metric
What certification means
When the definition changes
Do nothing is available and is never the right answer for a certified metric. It is listed so that choosing it is an act rather than an oversight.
Lineage
Where a number comes from, and what breaks if a source does.
Trace
1 stale source| Layer | Object | Owner | Last changed | Freshness | Status |
|---|---|---|---|---|---|
| Source | orders (warehouse) | Data platform | 14 Jul | 2 hours | Healthy |
| Source | deliveries (warehouse) | Data platform | 14 Jul | 2 hours | Healthy |
| Source | promised_dates (manual upload) | Operations | 22 Aug | 16 days | Stale |
| Transform | fct_delivery_performance | Astrid Vang | 14 Jul | 2 hours | Changed |
| Metric | On-time delivery | Astrid Vang | 14 Jul | 2 hours | Certified |
| Consumer | Board pack, 3 customer reports | Various | - | Monthly | External |
The transform and the metric changed on the same day the definition did. That is how the change is traceable at all, and it was found six weeks later by somebody asking why the chart had a step in it.
Data quality
What is missing, late or contradictory.
Failing tests
18 failing| Test | Table | Expected | Found | Failing for | Affects |
|---|---|---|---|---|---|
| Not null | promised_dates.date | 100% | 94.2% | 16 days | On-time delivery |
| Freshness | promised_dates | Daily | 16 days old | 16 days | On-time delivery |
| Unique | orders.order_id | 100% | 99.98% | 3 days | 4 metrics |
| Accepted values | deliveries.status | 6 values | 9 values | 11 days | 2 metrics |
| Row count | returns | ±20% | −62% | 2 days | Nothing yet |
Twenty-two tables have no tests at all. A passing test suite over two thirds of the warehouse is a statement about the two thirds, and it is usually read as a statement about all of it.
Dashboard adoption
What is built, what is opened, and what is trusted.
By dashboard
96 dormant| Dashboard | Team | Viewers | Last opened | Metrics | Verdict |
|---|---|---|---|---|---|
| Operations weekly | Operations | 41 | Today | All certified | Keep |
| Board pack | Executive | 9 | 2 days ago | All certified | Keep |
| Delivery deep dive | Operations | 2 | 4 months ago | 3 uncertified | Retire |
| Regional split v2 | Commercial | 0 | Never | 5 uncertified | Retire |
| Costs, old | Finance | 1 | 7 months ago | Duplicates ledger | Retire |
Fourteen dashboards define the same measure fourteen slightly different ways. That is not a tooling problem; it is what happens when building a new one is easier than finding the existing one.
Reports: activity
Volume and throughput, by owner and by domain.
By metric owner
This quarter| Metric owner | Open | Closed | Median days | Overdue |
|---|---|---|---|---|
| Astrid Vang | 12 | 18 | 2 | 1 |
| Marek Sobol | 9 | 14 | 4 | 2 |
| Iona Ferris | 8 | 11 | 3 | 0 |
| Petra Nagy | 5 | 9 | 6 | 3 |
| Unassigned | 41 | 0 | - | 41 |
Volume over time
12 weeksQueries run per week. Half of them serve dashboards nobody has opened in three months, and every one of those is a table somebody is maintaining.
By domain
This quarterReports: performance
Against target, with the gap named.
Against target by domain
100 is the targetThe team with the fewest certified metrics has the most dashboards. Building is easier than agreeing, and the ranking here is what that produces.
What moved
Rule-derivedReports: exceptions
What breached, what is late and what nobody owns.
Exceptions
18 open| Object | Problem | Failing for | Affects | Owner |
|---|---|---|---|---|
| promised_dates upload | 16 days stale, 6% null | 16 days | 3 external reports | Operations |
| On-time delivery | Definition changed, history not restated | 6 weeks | Board pack, a bonus | Astrid Vang |
| 41 metrics | No owner, cannot be certified | 4 months | 62 dashboards | Nobody |
| 22 tables | No data quality tests at all | Always | Unknown | Data platform |
| 14 definitions | Same measure, different answers | Ongoing | 14 dashboards | Various |
A definition change moved a bonus threshold from missed to met and nobody chose that. Restating the history is the expensive fix; notifying consumers at the time was the cheap one, and it is a checkbox on the definition screen.
People
Who has an account, and what they own.
People
34 accounts| Name | Role | Domain | Last active | Status |
|---|---|---|---|---|
| Vera Lindqvist | Administrator | Data platform | 11 minutes ago | Active |
| Astrid Vang | Analytics lead | Operations | 25 minutes ago | Active |
| Marek Sobol | Analyst | Commercial | 1 hour ago | Active |
| Iona Ferris | Analyst | Finance | 2 hours ago | Active |
| Petra Nagy | Analyst | People | Yesterday | Active |
| Osian Pryce | Data engineer | Data platform | 40 minutes ago | Active |
Roles
What each role is scoped to and what it may approve.
Recent changes
Why custom roles exist
- An analyst can define anything as provisional, and it is labelled everywhere
- Only an analytics lead can certify, and certification is what a board pack requires
- A data engineer can change a transform and cannot change what a metric means
- Nobody can change a certified definition without notifying every consumer
Roles
5 roles| Role | Type | People | Scope | Can approve to | Status |
|---|---|---|---|---|---|
| Administrator | Built in | 2 | Everything | No limit | Active |
| Analytics lead | Built in | 3 | All metrics | Certifies metrics | Active |
| Analyst | Built in | 14 | Own domain | Defines provisional | Active |
| Data engineer | Built in | 6 | Pipelines and tables | Changes transforms | Active |
| Viewer | Custom | 9 | Dashboards only | - | Active |
Permissions
Every capability against every role, as enforced.
What each role can do
10 capabilities| Capability | Administrator | Analytics lead | Analyst | Data engineer | Viewer |
|---|---|---|---|---|---|
| View a dashboard | Yes | Yes | Yes | Yes | Permitted |
| Define a provisional metric | Yes | Yes | Yes | No | No |
| Certify a metric | Yes | Yes | No | No | No |
| Change a certified definition | No | With approval | No | No | No |
| Change one without notifying | No | No | No | No | No |
| Edit a transform | Yes | Yes | Own domain | Yes | No |
| Publish externally | Yes | Certified only | No | No | No |
| Retire a dashboard | Yes | Yes | Own | No | No |
| Add a data quality test | Yes | Yes | Yes | Yes | No |
| Read the change log | Yes | Yes | Yes | Yes | Yes |
Only certified metrics can be published outside the company. The on-time delivery figure met that bar and still changed meaning silently, which is why the row below it exists.
Notifications
What the system sends, to whom, and when.
What is sent
Quiet hours
Notification rules are yours to set. What is here is a starting point drawn from how the queue actually behaves.
Integrations
Connected systems and their sync history.
Connected
5 connectedWhat breaks without them
- Without version control a definition change is invisible, which is how a six-point step went six weeks without an explanation
- Without dashboard telemetry there is no way to retire anything safely
- Manual uploads are connected and are still the weakest source, because nothing makes a person upload on time
- Numbers keep appearing; nobody can say where they came from
Sync history
Last 24 hours| When | Source | Records | Result |
|---|---|---|---|
| Every 2 hours | Data warehouse | 84 tables | 18 tests failing |
| Continuous | Source systems | 9 systems | Live |
| Daily | Dashboard tool | 188 dashboards | 96 dormant |
| Expected daily | Manual uploads | promised_dates | 16 days late |
Import and export
Bulk load and extract, with per-row validation.
Import
Validated before anything is written. A file with one bad row imports the rest and tells you which line failed and why.
Export
Recent imports and exports
Last 30 days| When | What | Rows | Result | By |
|---|---|---|---|---|
| 4 Sep 08:00 | Import | 188 | Complete | Vera Lindqvist |
| 1 Sep 18:00 | Export | 34 | Complete | Astrid Vang |
| 22 Aug 09:20 | Import | 284 | Complete | Osian Pryce |