StableBet
Back to Strategies

Best AI Horse Racing Predictor UK? We Built One, Here's What Happened

An honest, detailed look at building an AI model to predict UK horse racing — what worked, what didn't, and what it really tells punters about how efficient the market is. The model is now live, calibrated, and we publish every result.

13 min readUpdated 2026-06-11Pillar guide

Every month, someone asks us the same question: "Can AI predict horse races?" Usually they've read a breathless piece about a neural network that "found value the bookies missed," and they want to know whether they should be betting on machine picks. We got tired of giving the hedge-everything answer, so we built one. A real model, on a real database of UK racing — every runner's form, the weather at every course, the trainer and jockey figures, the lot — and then we tested whether it could beat bookmaker starting prices. This is the honest story of what happened: no hype, no "subscribe for our AI picks," just the numbers. You can read our free AI horse racing predictor for yourself, including free horse racing predictions for today's racing, and it stays free precisely because it does not beat the market.

Update — June 2026

Since we first published this, we've shipped the upgrades it called for: the model is now an XGBoost + LightGBM-LambdaRank ensemble, we've extended it to Flat racing as well as jumps, and it runs live every day at the AI Race Predictor. The headline conclusion hasn't changed — it doesn't beat the market — but it is a genuinely accurate, calibrated read on a race, and that's exactly how we present it now: an honest estimate of each horse's chance, not a tipping service.

The question we set out to answer

We wanted something specific and falsifiable: can a sensible machine-learning model, built from freely available UK racing data, consistently find value against bookmaker starting prices? To test that properly we needed three things:

  • Data. Years of it — we scraped public Sporting Life pages for complete UK National Hunt seasons: every horse's finish position, starting price, weight, official rating, jockey, trainer and how it finished. We cross-referenced each race against 200,000 hourly weather readings from Open-Meteo's free archive.
  • Features. About 30 numbers per horse, each using only information available before the off (otherwise the result is fantasy): age, weight, handicap rating, days since last run, career strike rate, course/distance/going strike rates, trainer and jockey 14-day form, field size, class, going firmness, weather, and more.
  • A model + a backtester. Gradient-boosted trees with a calibration step so the probabilities mean what they say, and a strict walk-forward backtest: train on everything before date D, predict from D onwards, check whether the "value bets" would actually have made money at starting price.

The first result looked brilliant — it wasn't

We trained on four months and tested on February–April, the stretch with Cheltenham and the National. The first backtest gave us a very tempting number:

+15.73% ROI on 330 bets over three months. That sounds like a working strategy. Here's the problem: we'd swept over 150 filter combinations and picked the one that made the most money on the test data. That's selection bias — test 150 strategies against the same period and some will look good by chance alone. The only honest check is a period you haven't touched. So we ran the exact same filter on an untouched December–January window: −17% ROI. The "edge" vanished the moment we stepped outside the optimised window. It had been mostly coincidence.

Three fixes, the same answer

Rather than bin the model, we tried three standard fixes in sequence. Each helped a little; none turned it into a money-printer — and the failure is the interesting part.

  • More features (19 → 30): the optimised window ticked up, the untouched one stayed broken.
  • More data (added another full season): the optimised window improved again (+26.9%), the untouched one didn't budge.
  • Isotonic calibration (the textbook fix for "probabilities don't match reality"): small improvement everywhere, no step change. Combined, the sweep found what looked stable: positive ROI on two separate February–April windows (+29% and +26%). So we pre-registered the exact filter and tested it on a window we'd never touched — October–November of the prior season:

−16.81% ROI on 119 bets. It lost. The "cross-window stability" was just coincidence across two correlated windows from the same part of the calendar. That pre-registered figure is the only one untouched by hindsight — which is why we keep it pinned on the track record.

What this actually tells you about the market

The losing result is, paradoxically, the real finding — and it's more useful than if the model had worked. The UK racing market is very efficient. A sensible model trained on every publicly available feature — the things a thoughtful punter looks at — doesn't find persistent edges over starting prices. Every apparent edge dissolved under wider testing. That isn't because the model is stupid. Its accuracy is genuinely good:

  • Top pick wins ~26% of races. For typical fields, random guessing gets ~11–12%, so the model is roughly twice as accurate as chance — it's genuinely learning what a winner looks like.
  • Its probabilities are well-calibrated. When it says a horse has a 25% chance, those horses win about 25% of the time; when it says 5%, they win about 5%. (In a 148,000-runner development backtest, run before the model went live, it scored a Brier of ~0.095 against the market's ~0.087; on the live published record it stays close to, but not quite as sharp as, the market, and the current figures update nightly on the track record. See what a Brier score actually measures for the full explainer.)
  • Feature importance matches a human's priorities — the top drivers are jockey and trainer 14-day form, field size, and recent finishing positions. It independently rediscovered what the form book already says. So why doesn't a model that's twice as accurate as random make money? Because the bookies are twice as accurate as random and then some. The starting price isn't a guess — it's the consensus of a well-funded market settled against real money in the minutes before the off, converging very close to the true probability and then adding ~10–20% overround as margin. We measured that margin ourselves: backing every favourite at flat stakes loses on the order of the overround, year in, year out. That's the bar any strategy has to clear — and the model couldn't clear it consistently. That margin isn't even uniform — it scales with how many ways there are to hide it:
    MarketTypical overround
    Major race win markets (e.g. the Gold Cup)102–105%
    Standard UK racing win markets110–120%
    Small fields (≤5 runners)108–115%
    Big-field handicaps (15+ runners)120–135%
    Each-way (place portion)125–140%
    Forecasts & tricasts130–160%
    Ante-post markets130–150%
    A 20-runner handicap gives a bookmaker far more room to bury its edge than a two-horse match — which is part of why a model has the least chance in big-field handicaps and exotics, and the most in small, sharply-priced fields. The pros who do beat these markets aren't using 30 features and a free weather API. They use speed figures and sectional times, breeding data, stable whispers, decade-deep proprietary ratings, and live exchange prices — and even they bet selectively, a handful of races a week, not a flat strategy across 500 random bets a quarter.

Three rules any punter can use

The project didn't produce a money-printer, but it did produce three rules of thumb worth internalising.

1. Long-shot "value" is almost always an illusion

The single most catastrophic strategy across all our backtests was "bet horses the model thinks are three times more likely to win than the market implies" — the definition of an apparent monster value bet. It lost between −52% and −64% of turnover in every window we tried. If you want to see what any price is really saying, our free tool lets you convert and read any racing price into the chance it implies, which is the first step to spotting when a "value" gap is just noise.

Trust the market on big prices

When the market prices a horse at 25/1, it's usually right — that horse is almost certainly a 2–3% chance, not the 6–8% a model might think. The market has priced in things the model can't see (a 400-day layoff, stable virus, collapsing trainer form). Any time a model disagrees dramatically with a bookmaker at long odds, the correct default is to trust the bookmaker. Don't chase model-flagged "value" beyond about 10/1 without specific, verifiable reasons.
We later checked this against the raw record across thousands of jumps races, and it's stark: horses sent off at 50/1 or bigger win under 1% of the time and lose roughly 40–60% of stakes — the classic favourite–longshot bias the bookmakers rely on.

2. Trainer and jockey recent form are the two biggest signals

In every version of the model, the top two features were the trainer's and jockey's 14-day strike rates — nothing else came close, not weight, class, distance, or even the horse's own career record. Trainers and jockeys go through measurable hot and cold streaks, and that's the single biggest adjustment to a raw read of the form book. Practical tip: when you read a race card, look up the trainer's 14-day form box before anything else.

3. The overround is brutal — you can't outrun it with volume

Every "blind" reference strategy we ran — back every favourite, every second-favourite, every model top pick — lost 10–20% of turnover over 90 days. Not because any one was bad, but because the margin is built into every price, and volume betting just pays it more often. A punter firing five flat-stake bets a day is being charged ~12–20% by the market on each one. The only approach that survives is fewer, better-reasoned bets where you have a genuine information advantage. Volume is the enemy.

Where the model is now, and what's next

We didn't give up on it — we did the things this article originally listed as "next." Two of them are already shipped:

  • A rank-aware model. It's now an ensemble of XGBoost and LightGBM's LambdaRank, which trains directly on the within-race ordering rather than treating each horse as an independent coin-flip.
  • More racing. We extended the whole pipeline to Flat as well as jumps. The verdict was the same — it doesn't beat the Flat market either (Flat is, if anything, more efficient) — but the probabilities are just as honestly calibrated. Still on the list, in roughly descending order of promise:
  • Speed and sectional figures — our biggest likely leverage point, and the one thing the pros have that we don't. A horse that won hard-held from the front is a different proposition from one that scrambled home; our features can't see that yet.
  • A decade of history rather than a few seasons, to stabilise calibration across any window.
  • Retrieval-augmented commentary — pulling free preview text into the model as a qualitative complement to the structured data. None of these is guaranteed to find a profitable edge. They might all land on the same answer: the market is efficient, deal with it. But each sharpens the question, and we'll publish whatever they show — you can follow it on the betting strategies hub.

If you're reading this as a punter

  • Be sceptical of services selling AI picks. If a model genuinely beat UK racing, the people running it would bet the picks, not sell them — one person with modest capital would compound a real 15% edge into millions in a season. They sell because it doesn't. The AI Lab put this to the test with real data: see does following an AI tipster make money? for the honest answer.
  • Flat-staking model picks is a faster way to lose than random betting, because models concentrate on the same short-priced favourites. We tested this specifically — are the AI's highest-confidence picks more profitable? — and the result is not what most people expect.
  • Use a model to understand a race, not to beat the bookies. Ours is a calibrated, twice-as-accurate-as-random read on each horse's chance — a genuinely useful way to see the shape of a race and where to look harder. That's exactly how we present it on the AI Race Predictor, with every result checked against the full track record, win or lose — and we stress-test the betting systems people ask about against the model's own data in the Lab, with every common betting system tested and ranked on tens of thousands of real races. It is not a value detector, and we never pretend it is. For the direct question this whole piece is built around, see can AI beat the bookies? We also run five AI models against each other on live UK and Irish racing in the Silicon Tipster League, settled and scored the same honest way.
  • The genuine edge is at the margins — situations a computer is unlikely to see (local knowledge, first-time headgear, a stable turnaround), and markets less efficient than racing.

Responsible gambling

This is about the mathematics of an ML backtest, not an invitation to bet more. The model lost money on a pre-registered test window. Anyone reading it as a green light to pump volume through a racing market is reading it wrong. If you bet, use money you can afford to lose, set limits before you start, and stop when you hit them. If betting is becoming a problem, BeGambleAware offers free, confidential support. If you take one thing from this piece, let it be this: the long-shot that "looks like value" almost never is, and the trainer's form box tells you more than any single feature of an individual horse.

Please gamble responsibly. If you feel you may have a problem, visit BeGambleAware.org or call the National Gambling Helpline on 0808 8020 133.