The display-currency conversion that drives every non-USD value in the app runs against a live FX feed, refreshed on its own schedule, separate from the spot price feed.
This article is the read on how often that FX feed updates, what you should expect to see during quiet windows, and why we settled on a cadence slower than the one we use for spot prices.
The short version
FX rates in Gold Silver Ledger refresh once every five minutes during market hours, for all fourteen non-USD display currencies simultaneously. Outside market hours — weekends, holidays — the rates hold at the most recent quote.
The rest of this article is the detail under that one sentence.
What "during market hours" means for FX
The foreign-exchange market runs effectively continuously through the trading week, with no central exchange and no daily settlement break:
Sunday evening through Friday evening (Wellington open to New York close): FX is trading somewhere in the world at almost every moment. The major sessions roll across the globe — Wellington, Tokyo, Hong Kong, Singapore, London, New York — passing the baton without significant gaps.
Friday evening through Sunday evening: Weekend closure. FX trading effectively pauses; quoted rates hold at the late-Friday close.
Within an open session, our FX feed refreshes every five minutes. So at 10:32 AM ET on a Tuesday, the rate you see is from a fetch at or just after 10:30; at 10:35, the new sample arrives; at 10:40, the next.
What you see between refreshes
The app holds the most recent FX rate until the next refresh lands. Between five-minute marks, the displayed values aren't ticking sub-minute — they're using the same rate as they were a minute ago, until the new one comes in.
This usually goes unnoticed because FX rates move slowly in human terms. A USD-to-EUR rate might shift by a fraction of a basis point over the course of five minutes in calm market conditions — far less than the noise in your portfolio's USD side from spot ticks.
Where you might notice the cadence is at the boundary between two refreshes during a sharp FX move (around a major central-bank announcement, for instance), when the displayed value steps once at the refresh rather than gliding. That's the same sampled-snapshot behavior the spot feed has, just at a slower cadence.
Weekend and holiday behavior
When FX markets are closed, rates in the app hold at the last quote from before the close. Same model as the spot feed.
Friday evening through Sunday evening: The non-USD values you see Friday at midnight and Saturday afternoon will be computed against the same FX rate. The number can still tick slightly on the spot side if you're between Friday's spot close and the moment you check, but the FX leg of the calculation is frozen.
Major global holidays: A handful of holidays — Christmas Day, New Year's Day — close enough of the major FX centres that the feed effectively pauses for the day. Trading resumes the next business day and refreshes pick up.
Single-region holidays: Most national holidays don't close FX globally, since the major centres span enough time zones to keep trading active somewhere. Rates continue to refresh on those days.
If you open the app on a Saturday afternoon and the EUR-converted value of your portfolio is exactly what it was Friday at the close, that's expected. FX isn't trading, so the conversion factor isn't moving.
FX and spot are independent feeds
A useful detail: the FX feed and the spot-price feed are completely separate. They source from different markets, refresh on different schedules, and can be in different states at the same moment.
Spot feed: Once-per-minute cadence during precious-metals market hours. See How often spot prices update.
FX feed: Once-per-five-minutes cadence during FX market hours.
At any given moment: Spot might have refreshed seconds ago while FX is four minutes into its cycle, or vice versa. Both surfaces show the most recent fetch on each side.
For users on non-USD display, the value on screen is the product of the latest spot fetch and the latest FX fetch — both as-of-last-fetch, but on slightly offset timelines.
Why five minutes
Five minutes for FX is deliberately slower than the one minute we use for spot prices. Three reasons it lands where it does:
FX moves more slowly than precious-metals spot: In percentage terms, a major currency pair moves a fraction of what gold or palladium move over the same window. A five-minute sample captures every meaningful FX move with room to spare.
The user-side impact is invisible: A few-second-old FX rate, applied to a USD value that itself updates every minute, produces a displayed number that's essentially indistinguishable from a real-time-converted one. Faster refreshes wouldn't change what you see.
A slower FX cadence is calmer: Five-minute steps in the converted value are easier on the eye than continuous re-conversion. Stackers are tracking long-term holdings, not arbitraging sub-minute FX moves.
The cadence is consistent across all fourteen non-USD currencies. The pegged ones (HKD to USD, DKK to EUR) refresh on the same five-minute schedule even though their rates barely move — uniformity is easier to reason about than special-casing the pegs.
Where to go next
How currency conversion works: The storage-vs-display model the FX feed plugs into.
Choosing your display currency: The setting that turns the FX feed on for your account.
The 15 supported display currencies: What the feed covers.
How often spot prices update: The parallel cadence article for the spot feed.
