The brief for a SaaS reporting product listed eleven screens. The one the client's team opens every morning is a twelfth we built as a two-day side project, unbilled, because we could not stop thinking about the question it answered.
The question nobody had put on a ticket
Deep in discovery, an account manager said, almost as an aside, "what I actually want to know when I open this thing is just — is today normal." Not a chart of every metric. One judgement: normal or not.
Why the eleven planned screens did not answer that
Each screen answered a specific, named question well — churn this month, revenue by segment, support volume by category. None of them answered the more basic question underneath all of them, because "normal" requires comparison against a baseline, and none of the screens carried one.
What we built instead
A single page: each key metric, its current value, and a simple comparison against its typical range for that day of the week — not a straight average, because Mondays are not like Fridays and neither should be compared against a Tuesday's number. Anything outside its usual range is flagged, nothing else is.
- No configuration. The moment a dashboard needs setup before it is useful, most people never open it a second time.
- No drill-down on the summary page itself. It answers one question; the existing eleven screens are one click away for anyone who needs to go deeper.
- Refreshed on the same schedule as the underlying data, not faster, so the number on screen never claims more freshness than it has.
What it cost and what it was worth
Two days of engineering time that was not in the statement of work. It has become, by the client's own account, the first thing three different people open every morning, ahead of every screen that was actually specified.
The requirement people can articulate is usually a proxy for the question they actually want answered. Sometimes it is worth building the question directly.
Why we do not always do this
Unscoped work is how budgets and timelines quietly slip, and two days on this occasion easily could have become two weeks on a worse one. We built it because it was small, self-contained, and testable against a single sentence — "is today normal" — which kept it from growing while we built it.
