Watermelon dashboard
Green on the outside, red on the inside: summary statuses look healthy while the work underneath is failing.
Every project is green or amber, because each status is the average of its tasks.
- CRM migration78% completeOn track
- Data platform64% completeOn track
- Finance close52% completeOn track
- HR self-service81% completeOn track
- Customer portal45% completeAt risk
No critical issues reported this week.
Customer portal: vendor onboarding delayed.
The data model behind it
Project deliveryOutside, the dashboard reads agg_project_status: one averaged status per project. Inside, fact_task_status still holds every late and blocked task. The aggregate table is exactly where the red disappears.
- Tables read
- 3 of 5
- Joins
- 2
- Fact type
- Task-level fact plus a project-level aggregate built from it
- Grain
- Tasks: one row per task per week · Aggregate: one row per project per week
- Refresh
- Weekly
Highlighted: every table this view reads. Pick a widget to isolate its query.
Where it sits in the taxonomy
Its metrics are relevant and it is in use, but its roll-ups hide failure: averages, majority rules or self-reported status make a parent green while its children are late or blocked. The dishonesty is in the aggregation.
- In the last quarter, has anyone opened it and has its data refreshed?Yes
- If its headline numbers moved, would someone act differently?Yes
- Can a summary status be green while items inside it are failing?Yes
- Watermelon dashboard
At a glance
- Check failed
- Honest roll-ups
- Symptom
- Green for months, then suddenly red
- Root cause
- Status averaged or typed in at the top level
- Test
- Open one green item and count the red inside it
Not to be confused with
- Sanity dashboard
- A sanity dashboard’s status can be traced to its items and uses worst-case roll-ups. A watermelon’s cannot.
- Vanity dashboard
- Vanity metrics are the wrong numbers. Watermelon statuses summarise the right numbers dishonestly.
How to recognise it
- Status stays green for months, then jumps straight to red
- No way to go from a summary status to its items
- Status is typed in by the owner rather than computed
How to fix it
- Roll up with worst-case rules: a parent is red if any critical child is red
- Show the distribution (3 green, 1 amber, 2 red) instead of a single colour
- Compute status from facts such as due dates and blockers, not opinion