Monte Carlo Simulation in Horse Racing: How to Build a Better Odds Line

Run a race ten thousand times, count the wins, and you get a fair odds line to hold against the market. Here is how it works and what the numbers show.

7 min read

It is ten minutes before the off in a ten-runner handicap. The top-rated horse is 3.0 on the exchange. Is that a fair price, too short, or too big?

A rating on its own cannot tell you. It says who is ahead, not by how much, and not how often the others would still get home first. Monte Carlo simulation puts a number on that. It does not ask who will win. It asks: if this race were run ten thousand times, how often would each horse cross the line first, and what price does that frequency imply?

In short. Monte Carlo simulation means running a race many thousands of times in software, nudging each horse’s ability rating by a small random amount each time, and counting how often each horse wins. The win frequency converts into a fair odds line (the price at which a bet would break even over many repeats), which you can hold up against the market price.

What does Monte Carlo simulation actually do in racing?

The method has a grand name and a simple idea inside it. Pick a number that represents how good each horse is. A speed figure, an Official Rating (the number the official handicapper gives a horse), one of Race Advisor’s own ratings, whatever you trust. Then accept that the number is not exactly right. The horse’s true ability sits somewhere in a small range either side of it.

So instead of asking “which horse has the highest rating today”, you ask the same question ten thousand times, with a random wobble inside each horse’s range every time. Sometimes the second favourite gets the better draw of the dice and wins the simulated race. Sometimes the top-rated horse wins again and again. Count the wins and divide by the number of runs. You now have a probability for each horse that reflects the rating and the uncertainty around it.

The computer does not claim to know the winner. It shows you the shape of the uncertainty, which is far more useful.

Why is one rating not enough?

It is easy to treat a rating like a verdict. A horse rated 92 gets labelled better than one rated 88, end of discussion. But ratings are estimates. They were worked out from earlier races, on different ground, against different fields, with different pace set-ups. A gap of a few pounds can easily sit inside that uncertainty.

A simulation builds the uncertainty into the answer. If two horses are close, they get similar win probabilities. If one is clear of the field, the wins pile up on that one runner. You see a spread of outcomes rather than a single ranked list, and a spread is something you can compare with a price. A top-rated tag is not.

How do you turn simulated wins into a fair odds line?

Once the simulation has run, the conversion is simple arithmetic. If a horse wins 3,400 of 10,000 simulated races, its probability is 0.34. The fair decimal odds are 1 divided by 0.34, which is 2.94.

Now compare that with the market. Say you expect the Betfair SP (the exchange’s starting price) to land at 4.0. That is bigger than your fair price of 2.94, so the price is worth a closer look. If the market is 2.4 instead, it is shorter than your fair price, and the sensible move is to wait for a bigger price.

This is the point of the exercise. You stop asking only who might win and start asking whether the price is big enough for the chance. For a deeper look at that idea, see what value means in horse racing betting and how a rating becomes an odds line.

If you want to try a one-race version yourself, remember that more runs reduce the random noise in the percentages, which matters most for outsiders and for close price comparisons, so run plenty and check the results settle. The rating you feed in matters more than the number of runs. Use a rating built for the type of racing you are looking at, so a flat speed figure stays with flat races and a jumps rating with the jumps.

How does Race Advisor’s Race Predictor use the method?

Race Advisor’s Race Predictor is our model that applies a simulation across the whole field and gives every runner a win percentage, plus place percentages. Those percentages are the model’s version of an odds line. A simulated percentage becomes a fair price you can lean on when, across many races, horses given 25% win about a quarter of the time. Checking that against real results is what makes the comparison with market odds worth making, and the A/E column below is one such check.

Here is how its top horse in each race compares with two simple yardsticks over the same stretch of racing. A/E means actual wins divided by the wins the odds implied, so 1.00 means the horses won exactly as often as their prices suggested.

SignalSampleWin rateA/EReturnLongest losing run
Betfair SP favourite167,257 races34.4%1.00-1.4%28
VDW Rank 1 (one of our rating systems)153,920 races21.6%0.99-3.8%59
Race Predictor top horse167,314 runners25.5%1.010.0%36

The figures cover Great Britain and Ireland from 1 July 2013 to 14 October 2026, at Betfair SP, with one point level stakes (the same stake on every bet) and 2% commission taken off. Fallers and pulled-up horses count as losers. They describe that stretch of racing and will not repeat exactly, so read them as a snapshot, not a forecast.

Return is profit or loss as a percentage of the points staked. Longest losing run is the most bets in a row without a winner, and it is a reminder that even the favourite had a stretch of 28 races without a win.

What the table tells you is useful. The Race Predictor’s top horse is the Betfair favourite in about 41% of races, so it agrees with the market a lot of the time, and its A/E of 1.01 and return of 0.0% say it landed very close to the market’s own pricing. Its top pick makes a great starting point. What a simulated probability gives you is a number to compare with the price on each runner, and any value would sit in the runners where your number and the price disagree. The percentage helps you judge the price yourself. That is something to test on your own results, and our guide to testing a system live shows one way.

What does the rest of the win-rate ladder look like?

In an earlier analysis of more than 1.5 million UK runners between July 2013 and March 2026, the runner Race Predictor ranked second in its race won 18.6%, the one ranked third 14.4% and the one ranked fourth 11.1%. Horses ranked fifth or lower won 5.1%. The bottom fifth by Race Predictor Win %, more than 306,000 runners, won 2.0%.

Those win rates step down smoothly, which is what you would expect from a model that separates strong chances from weak ones. They describe that earlier stretch of racing, and a different period would give slightly different numbers.

What can a full model add to a spreadsheet version?

A one-rating simulation is a good way to learn the idea. A full model can feed in more than one input, for example ability ratings, pace, going, course profile, days since last run and trainer and jockey form, and that is where the work gets harder. More inputs give you more to check, so test any model against real results before you rely on it. Our guide on combining ratings covers that side of it.

Where does the method work best?

A simulation is only as good as what goes into it, so it shines in races with plenty of form to build on, such as established handicaps. In races where the form is thin, such as many maidens and first-time-out runners, a rating has less to work with, so expect a wider spread of outcomes.

It pairs well with calm, steady staking. What it gives you is a probability on each horse that you can compare with the market without emotion, and a sense of how big the gap is. After that the decision is yours, and the next race is along in twenty minutes.

If you want to see win percentages sitting next to the market price on a live card, open today’s race cards and look at a handicap you know well.