Metric design: grain, naming, and why two dashboards show “different” revenue
A practical lens on definitions, time zones, and slowly changing dimensions—so teams stop relitigating the same numbers every quarter.
Most “data quality” escalations are not mysterious bugs; they are two correct answers to slightly different questions. Revenue can mean booked, recognized, or cash. Users can mean accounts, workspaces, or seats. Until those distinctions are named and documented, every new dashboard is a fresh opportunity for confusion.
Name the grain out loud
Every metric should carry an implicit answer to: at what level is this counted, and over what window? Daily active users computed at UTC midnight is not the same metric as local-time DAU, even when the label on the tile is identical. Publishing grain and timezone choices next to the metric—yes, in the UI—saves endless Slack archaeology.
One source of truth is a process, not a database
Central warehouses help, but agreement is still a social outcome. Useful teams pair technical consolidation with a small metric catalog: owners, definitions, refresh cadence, and known caveats. Reviews when definitions change beat heroic reconciliations after executives compare two tools in a meeting and discover a gap.