Design Stale Data Indicators
Feedback & States · status, real-time, dashboards
Updated 2026-07-28
- Decide how old is too old for each number on the screen. A follower count can be minutes behind without harm. An account balance or a stock level cannot.
- Show data first and freshness second. Blanking the screen to re-fetch something the user is already reading is worse than showing what you have with a note.
- Say when it was last updated in words the user can act on. "Updated 2 minutes ago" is more useful than a spinning icon that means nothing in particular.
- Distinguish the three states clearly:
- Live and current.
- Loading an update, with the previous value still readable.
- Stale, because the last refresh failed.
- Never let a failed refresh silently keep showing old numbers. Users will make decisions on them, and the interface will have implied they are current.
- Escalate with age. A subtle timestamp is enough at one minute and not enough at one hour, when the value should be visibly marked as out of date.
- Give a manual refresh for anything people are watching. Automatic updates are convenient, but during an incident users want to force the question themselves.
- Do not refresh under the user's hands. Re-sorting a list or replacing a row mid-read loses their place and can cause the wrong click.
Trust in a dashboard is built on knowing how old the numbers are, not on the numbers always being new.
Related guides