The short answer
Separate when a value was observed, when the source published it and when your page fetched it. Refreshing a page changes only the last of those unless the source releases a new observation.
Three clocks, three questions
Observation time tells you which market moment or period the value describes. Publication time tells you when the source released it. Retrieval time tells you when your system received it. These are analytical definitions for reading a data record, not a promise that every source supplies all three fields.
When the source does not expose a clock, display “not supplied” rather than substituting your server time. That small admission preserves the difference between known metadata and a convenient guess. It is especially important when comparing a daily reference with a continuously changing quote.
Schedules explain many apparent gaps
LBMA states that its precious-metal benchmarks are not published on weekends or designated UK bank holidays. The ECB publishes its reference rates on working days except TARGET closing days. These calendars describe different sources and should not be collapsed into a universal “markets open” flag.[1][3]
A weekend page can show an older observation that remains the latest published one. “Latest available” is more accurate than “live” in that case. However, a schedule alone does not prove a feed is healthy: you still need to check whether an expected publication was missed.
Latest and today are different queries
NBP’s API documentation distinguishes current data—the last released data at query time—from data published today, data for a specific date and ranges of observations. The endpoint choice is therefore part of the meaning of the result. In the official field definitions, EffectiveDate for exchange rates and Date for gold are publication dates; TradingDate is a trading date supplied only for table C. These dates must not be relabelled as retrieval times or assumed to be intraday observation timestamps.[6]
A successful request for the latest value does not establish that a new observation exists today. Conversely, no publication for a requested day is not a numeric zero. Keep absence, an explicit zero and a failed network request as three separate states.
A small audit you can perform
Hypothetical record: observation on Friday, publication on Friday afternoon, retrieval on Sunday morning. Label it “Friday observation, retrieved Sunday”; do not relabel the observation Sunday. If another screen was retrieved on Saturday but uses the same Friday release, both can contain the same underlying information.
Record source URL, source observation date, any supplied publication time, retrieval time with timezone, unit and currency. If a value was transformed, retain the formula and input dates too. This checklist does not require storing a historical market database.
Know when to stop the comparison
Do not calculate a precise premium from a fresh retail quote and a benchmark of unknown age without flagging the mismatch. Do not infer intraday changes from repeated downloads of one daily value. And do not call an unavailable series unchanged merely because the last cached number still displays.
This article is a method note, reviewed on 20 September 2026, not a feed-health report. We have not verified every upstream release today. The useful next step is to inspect the named source’s publication record, not to assign a reassuring green dot to an unverified number.
Sources & scope
Links support definitions and methodology. Worked examples are hypothetical, not quotes; the review date is not the observation date of a market value.