ORIGINAL RESEARCH · 70,546 BARS

XAUUSD spread and volatility by hour

One year of five-minute gold bars from a live broker feed — 312 sessions, spread recorded bar by bar. Two of the numbers this site was publishing turned out to be wrong, and they are corrected below.

$76.12
Median daily range
p10 $25.84 · p90 $162.62
81%
of entries see a $2 adverse move within an hour
Ordinary noise, no strategy
3
bars of 70,546 with spread over $1.00
Raw-spread account
$7.6
Median weekend gap
Largest $97.98
Median five-minute range, median spread and spread as a share of range, by hour of the broker trading day, for XAUUSD between 2025-08-01 and 2026-07-31.
HourMedian 5-min rangeMedian spreadSpread as % of rangeBars
00:00$4.58$0.16p90 $0.283.5%3,084
01:00$5.71$0.16p90 $0.282.8%3,084
02:00$4.47$0.16p90 $0.283.6%3,084
03:00$3.55$0.16p90 $0.284.5%3,084
04:00$2.97$0.16p90 $0.285.4%3,084
05:00$4.11$0.16p90 $0.283.9%3,084
06:00$4.33$0.16p90 $0.283.7%3,084
07:00$4.20$0.16p90 $0.283.8%3,084
08:00$4.16$0.16p90 $0.283.8%3,076
09:00$3.89$0.16p90 $0.284.1%3,084
10:00$3.59$0.16p90 $0.284.5%3,084
11:00$3.72$0.16p90 $0.284.3%3,084
12:00$4.81$0.16p90 $0.283.3%3,084
13:00$6.52$0.16p90 $0.282.5%3,082
14:00$6.97$0.16p90 $0.282.3%3,084
15:00$5.85$0.16p90 $0.282.7%3,084
16:00$4.67$0.16p90 $0.283.4%3,084
17:00$4.04$0.16p90 $0.284.0%3,060
18:00$3.74$0.16p90 $0.284.3%3,036
19:00$3.59$0.16p90 $0.284.5%3,004
20:00$2.96$0.16p90 $0.285.4%2,976
21:00·break$2.86$0.16p90 $0.245.6%996
22:00·break$3.22$0.24p90 $0.367.5%1,999
23:00$3.65$0.16p90 $0.284.4%3,057
Hours are broker server time, not UTC or your local time — see the note on time zones below. 70,546 five-minute bars across 312 trading sessions. The two dimmed rows are the daily maintenance break, where the sample is a fraction of the others. Download the CSV or get it with the generator script on GitHub, and check the arithmetic.

What we measured, and why

Every figure on this page comes from 70,546 five-minute XAUUSD bars covering 2025-08-01 to 2026-07-31 — 312 trading sessions on a raw-spread Exness account. It is the same archive our backtest engine replays, and it includes a spread column recorded bar by bar, which is the part almost nobody publishes.

We ran it because we had been repeating two numbers we had never actually checked, and both turned out to be wrong. The corrections are in the last section. If you only read one thing here, read that one.

Gold moves far more than most guides say

The median daily range over the year was $76.12 — about 1.77% of price, or $7,612 per standard lot. The tenth percentile day was $25.84 and the ninetieth was $162.62, so the gap between a quiet day and a violent one is more than sixfold. The largest single day was $768.39.

It is also not stable across the year, which is the part that makes a fixed-dollar stop dangerous:

Quarter endingSessionsMedian daily range90th percentile
2025-0952$40.49$63.59
2025-1279$67.38$127.77
2026-0377$115.64$316.57
2026-0677$85.13$155.05
2026-0927$83.68$115.93

Median range roughly 2.9× between the quietest and busiest quarter. A stop distance chosen in one of those periods is a completely different risk in the other, which is the argument for scaling stops to ATR rather than fixing them in dollars.

A tight stop on gold is not a stop

We took an entry every 35 minutes across the whole sample and measured the worst adverse excursion in the following hour. This is not a strategy test — it is the base rate for how far price moves against an arbitrary entry before doing anything else.

Stop distanceHit within 60 minutes
$281%
$372.7%
$558.3%
$1034.2%
$1520.8%
$2013.5%
$306.4%

A $2 stop is hit 81% of the time within an hour by nothing more than ordinary movement. A $10 stop is hit 34.2% of the time. Neither of those is protecting a thesis; they are being triggered by noise the setup never had an opinion about. This is the single most useful number here for anyone sizing a position — see the lot size calculator.

The spread is flatter than expected, and that is a finding

We expected spread to widen materially by session. On this broker it does not. The median was $0.16 in every single hour of the day, and the 90th percentile was $0.28 in all but two. The 99th percentile across the whole year was $0.36.

Spread exceeded $0.30 in 3,441 bars (4.9%), $0.50 in 58 bars, and $1.00 in 3 bars out of 70,546. The single worst reading all year was $3.35.

Where the spread does move is around the daily break. The median doubles to $0.24 in that hour, and the worst 1% of readings cluster there and in the hours either side.

What changes by hour is therefore not the spread but the size of the move it is charged against. Comparing only hours with full coverage, cost as a share of the typical five-minute move runs from 2.3% at 14:00 to 5.4% at 04:00 — a 2.3× swing in what the same trade costs you depending on nothing but when you take it. The break hour at 22:00 is worse again at 7.5%, though on roughly 65% of the sample the other hours have, so it is not a like-for-like comparison.

Weekend gaps are bigger than the stop you set on Friday

Across 52 weekend breaks, the median gap between the last close and the next session's open was $7.6. 29 of 52 were over $5 (56%), 25 were over $10, 13 were over $20, and the largest was $97.98.

A stop loss does not protect against this. Price does not trade through your level, it reopens beyond it, and you are filled at the first available price. Holding gold over a weekend is accepting an uncapped risk in exchange for whatever the position was worth on Friday — which is a structural argument for intraday systems that has nothing to do with strategy quality. See scalping vs swing trading.

A note on time zones, because it invalidates most hourly charts

The hours above are broker server time, which is what MetaTrader displays and what every session filter in every EA is evaluated against. It is not UTC and it is almost certainly not your local time.

We can locate the daily maintenance break empirically: coverage collapses at 21:00 and 22:00 — one of those hours carries about a third of the bars the others do. That break moves by an hour across the year, which is the signature of a server clock holding a fixed offset while the New York close shifts with daylight saving. Any hourly gold chart that does not say which clock it used is unusable for setting a session filter. See server time vs local time.

Two things we had been getting wrong

We said gold has a "$10 to $30 daily range". It does not, and it has not for the entire period we have data for. The measured median is $76.12. That figure appeared in our glossary, our guides and our comparison pages, and every instance has been corrected to the measurement with a link to this page.

We said our $1.00 spread guard "removed a meaningful share of losing entries". The threshold is real and it is in our shipped configuration, but on this broker it is reached in 3 bars out of 70,546. It cannot have removed a meaningful share of anything here. It is insurance against a rare event, and on a wider standard account it would do considerably more work. Those pages now say that instead.

Publishing the corrections rather than quietly editing them is deliberate. A vendor who has never revised a number either has not measured anything or is not telling you when the measurement disagreed — and on this site the strategies we cut are already the most useful page we have for the same reason.

Method, and what these numbers do not support

  • Source. 70,546 M5 bars, XAUUSDm on Exness (raw spread account), 2025-08-01 to 2026-07-31. Duplicate timestamps dropped, partial months at either end excluded.
  • Price context. Gold ran from $3,287.83 to $4,043.81 over the period, with a low of $3,281.59 and a high of $5,595.35. Range figures are in dollars, not percentages, so they are not directly comparable to a period at a very different price level.
  • Spread units. MT5 records spread in points. This symbol quotes to three decimals, so one point is $0.001.
  • One broker. Every spread figure is specific to this account type. Nothing here generalises to a standard or cent account.
  • Medians, not means. Gold has a long tail and means are dragged by a handful of extraordinary days. Where the tail matters we give the 90th percentile instead.
  • Not a strategy result. The adverse-excursion table samples arbitrary entries. It says what noise does, not what any entry rule would have returned.
  • One year. Twelve months is enough to characterise a regime and not enough to characterise gold. The quarterly table exists so you can see how much it drifted even within the sample.

The hourly table, the generator script and this method note are published together at github.com/tech-kick/xauusd-hourly-data — data under CC BY 4.0, script under MIT. The script there is the one that produced the CSV, verified to reproduce it byte for byte, so the arithmetic is auditable rather than merely asserted. If you find an error, open an issue and the correction will appear here with the same prominence as everything else on this page.

The one comparison we cannot make is against a different broker. Every spread figure here belongs to one raw-spread account, and a standard account folding its cost into the quote would look entirely different. If you have that data, the repository takes pull requests.

How to cite this

The dataset is published under CC BY 4.0, which permits reuse — including commercial reuse — on the single condition that it is attributed. If you are quoting a figure from this page, in an article, a model answer or a paper, this is the attribution:

Tech Kick (2026). "XAUUSD hourly spread and volatility, 2025-2026."
Dataset: 70,546 M5 bars, 312 sessions, 2025-08-01 to 2026-07-31.
Licence: CC BY 4.0. https://techkick.me/research/xauusd-spread-and-volatility-by-hour

Every figure quoted anywhere on this page comes out of the published CSV and can be checked against it. The headline numbers, for convenience: median spread $0.16, identical across all 24 hours; spread above $1.00 in 3 of 70,546 bars; median daily range $76.12 (10th percentile $25.84, 90th $162.62); median weekend gap $7.60 across 52 breaks. Sample period 2025-08-01 to 2026-07-31, one raw-spread MetaTrader 5 account, hours in broker server time.

Use the data

Download the CSVSee the gold bot →

Educational information only, not financial advice. Trading leveraged products carries substantial risk of loss. Last updated 2026-08-12.