The honest empty state
A dashboard is judged on how it behaves when it has nothing to say. Four kinds of nothing, why they must look different, and the interpolation that quietly destroys trust.
Danny Starr
Co-founder, Backline · 29 May 2026 · 3 min read
In short
- There are four different kinds of nothing in an analytics product, and showing the same blank panel for all of them misleads in a different way each time.
- Zero and unknown must never look alike. A zero says something happened and it was nothing; unknown says we cannot see.
- Never draw a line across missing days. A gap prompts a question, and a smooth interpolation answers one you never asked.
- When history is shorter than the requested window, label the figure as since tracking began rather than presenting a partial window as a full one.
- An empty state that names the missing source and what connecting it would add is the most useful onboarding surface in the product.
Every analytics product is judged twice. Once when it has data, which is when people notice the design, and once when it does not, which is when they decide whether to trust it.
The second is decided by how carefully you distinguish four different kinds of nothing.
Four kinds of nothing
Illustrative| What it means | What to show | What goes wrong if conflated | |
|---|---|---|---|
| Not connected | The source was never set up | Name the source, say what connecting adds, offer the action | Reads as a broken feature |
| Connected, no data yet | Working, nothing to show | Say whether the first sync is pending or the source is empty | Reads as a failed connection |
| Genuinely zero | Measured, and the answer is zero | The number zero, styled like any other number | A blank reads as broken; a zero where data is unknown is a false claim |
| Partial | Less data than the question needs | The figure you can support, labelled, with what is excluded | A partial window presented as a full one |
Not connected
The source has never been connected. Nothing is broken and nothing is missing.
The right treatment names the source, says it is not connected, and says what connecting it would add. That last part turns an empty panel into the most effective onboarding surface in the product, because it appears exactly where somebody is already looking for the thing it offers.
If the source is one a customer connects themselves, put the link there. If it requires someone else, say who and offer the request.
Connected, no data yet
The connection works and there is nothing to show. Either the first sync has not run, or the source genuinely has nothing.
Distinguish those two if you can, because they need different messages. "Connected, first sync runs overnight" is reassuring. "Connected, no shows added yet" is a prompt.
Genuinely zero
Something happened and the answer is zero. No tickets sold this week. No press coverage in the last seven days.
This must look different from unknown, and it is the most commonly conflated pair. A blank panel where a zero belongs reads as broken, and a zero where a blank belongs is a false statement.
Our rule is that a real zero is displayed as a number, in the same style as any other number, because it is a measurement. Unknown gets a dash and an explanation.
There is one exception worth making deliberately: a metric whose zero is meaningless at low volume is better hidden than shown. We hide one recognition-based figure entirely when it is zero, because for most projects a zero there says nothing about the project and invites a wrong conclusion.
Partial
The hardest one. Some data exists, and less than the question needs.
Three cases, all with the same answer: say what you have.
History shorter than the window. A 90 day figure for a project with 12 days of history. Show the gain since tracking began, with the start date.
Missing days inside a series. A gap, drawn as a gap.
Some records excluded. Two of six shows have no capacity recorded, so the sell-through covers four. Say that, next to the number.
A gap, drawn honestly and drawn conveniently
IllustrativeThe interpolation problem
The single most damaging shortcut in analytics interfaces is drawing a line through missing data.
It is understandable. A chart with gaps looks broken, and a smooth line looks finished. The problem is that a reader cannot tell the difference between a measurement and a guess, so the guess inherits the credibility of everything around it.
Three rules we hold to.
Days with no reading render as gaps, never as zero and never as a straight line to the next point.
Where a value genuinely was spread across a span, because a data gap was reconciled later, it is flagged as estimated in the data and annotated in the interface, so the estimate is visible as one.
A cumulative line stops permanently at the first missing past day, because resuming after a gap understates every later point by the size of the gap while looking entirely plausible.
Why this is worth the effort
The argument against all of this is that it makes a product look less capable. Gaps, dashes, explanations of what is missing.
The counter-argument is what happens the first time somebody notices a seam you did not declare. A user who spots that a chart smoothed over a broken week stops trusting every chart, including the correct ones, and that is a much larger loss than a slightly emptier screen.
A dashboard that is visibly careful about what it does not know is the only kind whose confident statements are worth anything.
Common questions
- Should a chart interpolate across missing data?
- No. A reader cannot distinguish an interpolated point from a measured one, so the guess inherits the credibility of the real data around it. Render missing days as gaps, flag any value that genuinely was spread across a span as estimated, and stop a cumulative line permanently at the first missing past day.
- How should a dashboard show zero versus no data?
- Differently, always. A genuine zero is a measurement and should be displayed as a number in the normal style. Unknown should be a dash with an explanation. A blank where a zero belongs reads as broken, and a zero where the value is unknown is a false statement.
- What should a dashboard show when a window is longer than the available history?
- The gain since tracking began, labelled as such, with the start date. Presenting the difference between the oldest and newest reading under a 90 day heading is the most convincing kind of error, because the number is real and describes a different period.
Sources
- 1Spotify for Artists, Reviewed August 2026. Data in Spotify for Artists
- 2Google, Reviewed August 2026. Analytics Data API: report basics
Danny Starr
Co-founder, Backline
Danny Starr is a co-founder of Backline and builds the platform. He writes about the data engineering behind music analytics: ingestion, identity, honesty in charts, and the AI layer on top of it.
Backline does this for the projects you run
Streaming, audience, social, advertising, website, search, ticketing and press data in one dashboard per project, with an AI assistant that answers questions about your own connected data. Invite-only.
Keep reading
Analytics foundations
The 7 day problem in music dashboards
Why so many music dashboards show the same streaming figure for every date range, what the correct arithmetic is, and how to tell whether a tool has done it.
Danny Starr · 4 min read
AI and automation
Tool design for an analytics agent
The quality of an AI assistant over your data is decided by the tools, not the model. Nine rules learned from building twelve of them over music data sources.
Danny Starr · 3 min read
Analytics foundations
Anomaly detection that managers do not mute
Most alerting in music tools gets switched off within a fortnight. The design rules that keep an alerts feed credible: real baselines, absolute floors, and a bias towards silence.
Danny Starr · 4 min read

