Label freshness so people do not misread how current the data is
Aliases: as-of timestamp · freshness badge · delayed quote · snapshot label
What it is
A number that looks like “now” will be used as now. Freshness has to be labelled: whether this region is live, delayed fifteen minutes, as-of the close, or a snapshot from when the page opened, belongs in a place that can be read again. Which band the budget sits in, and how new people expect a type to be, are separate questions. Here the band is already chosen; the only issue is whether people will misread one band as another.
Why it happens
Interfaces default to coding a visible value as the current world. With no freshness label, a delayed quote is taken as a tradable last; a cached headcount is taken as who is in the room now; yesterday’s report is taken as just-run. The cost of the misread scales with use: looking is cheap, placing an order, dispatching a car, giving a dose is acting on an expired map.
A label turns the time-semantics of this value from tacit to explicit: live, delayed, as-of an instant, still generating. It has to be checkable, not a shrug of “data for reference only”. An instant (as of 14:32) lets someone decide whether they still dare use it, more than an adjective (may not be latest). The label has to travel with the value: if the value is in a table, the label cannot live only in a footer, or after a scroll the value remains and the semantics are gone.
Where it stops holding
Genuinely live, and already typed as live (a jumping conversation): labelling every message “live” is noise; a channel-level connected / disconnected is enough. A read-only historical snapshot already titled with an absolute instant does not need another “not realtime” layer. Labels themselves go stale: a page still open at 16:00 that says “as of 14:32” must refresh the label or retire the value; an old caption cannot underwrite forever. Regulated delayed quotes must name the delay; a live-flavoured motion of jumping digits must not imply instant unless the value is instant.
Applying it
- Next to non-live values, write freshness: how long a delay, as of which instant, whether a snapshot from open. Adjectives are not enough; carry a checkable time or a minute count.
- Stick the label to the value so it does not scroll away. Channel-level connection and value-level freshness must not pose as each other.
- Do not use jumping digits or a green dot to imply live unless the value is live.
- How to check: give an unseen delayed-fifteen-minutes quote to someone and ask “can I trade at this price”. Unlabelled, it should be taken as last; labelled “delayed 15 minutes”, it should not. Put the label only in the footer, scroll the table, ask again; no answer is a fail.
Related
- Same group: I4.07.1 Different features need different freshness; not everything must be latest · I4.07.2 Freshness expectations follow content type, not what the system can do · I4.07.4 Strong consistency and high freshness usually trade off; products must pick
- Nearby: I3.01 Visibility of system status · I2.12 Cache and stale content
- Search terms:
freshness label·as-of timestamp·delayed quote