How we read CFD loss-rate warnings: method
Every figure in the CFD loss-rate series is the firm's own number, copied from its own website.
- Live figures
- 31 providers
- History
- 404 quarterly figures
- Warning-text mismatches
- 0
- Person re-reads
- 0 of 31
What the number is
The share of a firm's own retail accounts that lost money over the last 12 months, shown in a standard risk warning. Firms recalculate it every quarter.
- UKFCA rules in the Conduct of Business sourcebook (COBS 22.5), permanent from 1 August 2019.
- EUESMA's product intervention decision (Decision (EU) 2018/796, from 1 August 2018), later made permanent by national regulators such as CySEC.
We checked the UK warning wording (COBS 22.5.6R and 22.5.7R) against the FCA Handbook on 13 October 2026. We haven't yet checked the 1 August 2019 start date or the ESMA texts against their sources. We'll update this section and log the change below.
Not your odds. The figure describes the firm's clients as a group over a past year. A lower figure doesn't make a firm safer or better.
How we read each figure
- Our listCFD providers that serve UK visitors.
- Read from the UKA script reads the text a visitor sees, not hidden code. Where the homepage has no warning, we use the firm's own page that does (3 cases: CMC Markets, IG, Trading 212; noted on each firm's page).
- Strict matchA percentage counts only when the mandated wording follows it directly: "…% of retail investor accounts lose money…", or the German "…der Kleinanlegerkonten…".
- RecordedVerbatim sentence, page address after redirects, date, legal entity named on the page, SHA-256 fingerprint of the page text.
- Publish checkPublication stops if any figure doesn't match the number in its own warning sentence. On 6 October 2026: 0 mismatches across 31 live and 404 history figures.
- Second automated readA separate check re-reads each page on a later day as TradingLookupBot. It respects robots.txt, never gets round bot protection, saves the text (and a screenshot where it uses a browser) and records match, changed, not found or blocked. It isn't a person.
- DisagreementsWe flag the figure rather than overwrite it. It only changes after a fresh read from a UK connection confirms it.
Second read, 13 October 2026: 16 of 31 figures matched; 0 had changed (); 5 pages didn't show the UK warning to the check; 10 sites refused it. The check ran from a US connection, so some UK pages couldn't be reached or showed it a non-UK page. We keep the published figures and log each new reading with its date. No person has re-read these figures. Until every figure is matched by the second read, version 1.0.0 is a provisional release.
How we build the history
- One capture per quarterFrom the Internet Archive (Wayback Machine), read with the same rule.
- 404 figuresFor 18 providers, from 2018-Q3. Each links to its capture.
- Gaps stay gapsWe never fill or estimate them.
Publishing standard
| Requirement | Status for v1.0.0 |
|---|---|
| Was read from the firm's own page as a UK visitor sees it | Met for all 31 |
| Names the legal entity it belongs to | 29 of 31. Not confirmed: eToro, AvaTrade (we published these pages with a warning before confirming the entity: an exception to our own standard, not yet recorded as a joint decision) |
| Has its regulator checked on the regulator's own register | 0 of 31. Each regulator so far comes from our own list (an exception to our own standard, not yet recorded as a joint decision) |
| Has a saved copy or archive address | Not yet met for live figures: we hold a fingerprint of the page text, but no public saved copy. History figures: met (Wayback links) |
| Was re-read (our proposed standard says by a person) | By an independent automated second check on 13 October 2026: 16 of 31 matched. On 13 October 2026 the founder decided the second automated read replaces a person's re-read for v1.0.0. No figure has been re-read by a person (0 of 31). |
Limitations
- Not all UK entities22 of 31 figures belong to FCA-regulated entities. For 2 (eToro, AvaTrade) the entity, and so the regulator, isn't confirmed; they're left out of the FCA-only figures. The rest are EU entities whose sites we also read from the UK. The FCA-only median is 71.8%.
- Regulator isn't register-checked yetEach regulator comes from our own list of firms. We haven't yet checked them on the FCA, CySEC or BaFin registers.
- Same company, different figuresCity Index (68%) and Forex.com (74%) are the same legal entity but show different figures. We don't know why yet and are checking.
- Histories to treat with careeToro (entity unclear); Spreadex (same figure 6 quarters running (page may not have been updated)); AvaTrade (entity unclear; same figure 12 quarters running (page may not have been updated)); Trading 212 (same figure 10 quarters running (page may not have been updated)); FxPro (15 of 29 archived pages show two different figures). Don't use these to compare firms.
- History entityIt is today's entity, not read from each archived page. The archived page and today's page aren't always the same address.
- Firms we couldn't read (7)Admirals, Interactive Brokers, Vantage, XM, FP Markets, Freedom24, Hantec Markets. See the reasons. We never get around bot walls or use anyone else's access.
- Firms state their own figuresWe publish what they say; we can't audit how they calculate it.
Changelog
- v1.0.0
- Data as of . First public release: 31 providers, 404 archived quarterly figures for 18 providers, 7 firms listed as not readable.
Corrections and right of reply. Fixes are logged on the corrections page. Firms named here can contact us.