Read a gold price chart by checking what its axes measure and which period it covers. The latest daily close shown here is $3,996.20 on 23 Oct 2026. The current spot quote is $4,015.88 per troy ounce at 26 Oct 2026, 18:34 UTC. Free and keyless prices are fifteen minutes late.
- Check the currency, weight unit and time range before reading a move.
- Calculate percentage changes from matching daily closes.
- A past price change does not predict the next move.
Pick the range
The gold price chart offers 1D, 1W, 1M, 3M, 6M, 1Y, 5Y, 10Y and 20Y ranges. Pick the period that fits your comparison. A short view shows movements that can look smaller across a longer period.
The gold price history page charts month end closes since 1996 and has a table of annual figures. Daily data is available through the API. Check whether you are comparing daily closes, month end closes or annual figures before calculating a change.
Read the axis and scale
For XAU/USD, the vertical axis shows US dollars per troy ounce. The horizontal axis shows time. Check both before comparing charts, because changing the currency or weight unit changes the displayed amounts even when the underlying gold value is the same.
Check whether the vertical axis starts at zero. A narrower scale can make a small move look large. When comparing periods, use the same range and scale. Longer views smooth daily noise visually, while short views show more of it.
Calculate the percentage change
Subtract the earlier close from the latest close, then divide the difference by the earlier close. Express that fraction as a percentage. The earlier close is the comparison base, so reversing the order changes what the result describes.
For the weekly comparison, the earlier close is $4,165.45 on 16 Oct 2026. Compare it with the latest close of $3,996.20 on 23 Oct 2026. The change is -4.1%. Use these matching closing values. Avoid mixing a daily close with a newer spot reading.
Compare the closing values
The 28 day row starts at the first daily close on or after the date 28 days before today: $4,127.47 on 28 Sept 2026, changing by -3.2%. The sample requests the last 28 days, within Free's thirty days of history. The one year row needs Basic or above: $4,121.67 on 23 Oct 2025, changing by -3.0%.
Each percentage uses the earlier price in its own row as the base. The rows describe what happened over different periods. They do not say what happens next. A gold chart in another currency can also move differently because exchange rates affect its local price.
| Range | Closing date | Close then | Change to latest close |
|---|---|---|---|
| 7 days | 16 Oct 2026 | $4,165.45 | -4.1% |
| 28 days | 28 Sept 2026 | $4,127.47 | -3.2% |
| 1 year | 23 Oct 2025 | $4,121.67 | -3.0% |
Fetch daily closes from the API
Request GET /v1/bars?symbol=XAU-USD-SPOT&interval=1d&from=YYYY-MM-DD&to=YYYY-MM-DD for daily bars. The example below asks for the last twenty eight days, so it works on Free. Results list bars newest first, with bar_start, open, high, low, close and is_closed. Use close for daily closing values.
The newest bar may still be forming, with is_closed false. Use closed bars for comparisons. Free and keyless requests reach back thirty days, Basic one year, and Plus and Pro full history. The table's one year row needs Basic or above. See the prices endpoint reference for requests.
curl "https://api.goldprice.dev/v1/bars?symbol=XAU-USD-SPOT&interval=1d&from=$(date -u -d '28 days ago' +%F 2>/dev/null || date -u -v-28d +%F)&to=$(date -u +%F)"