This season has seen him ride 54 winners from 685 races — that's roughly 1 in every 13, or an 8% win rate. In a sport where most jockeys would be thrilled with a handful of winners in a year, racking up 54 in a single season while taking on nearly 700 races is a serious workload. It speaks to someone who is trusted by trainers to fill their books and who rarely turns down a ride.
His most consistent relationship is with trainer Alice Haynes, where he has produced 9 wins from 172 races together — about 1 in every 19, or a 5% win rate. At first glance that might sound modest, but a partnership that generates 172 rides is a deep one. That kind of volume means Haynes trusts O'Neill as a genuine first call, and when the right horse comes along in that yard, he is on it. Nine winners from that arrangement is a real and meaningful contribution.
The high point of his career so far came at Bath, where he landed a Class 1 race — one of the top races in Britain. Getting your name on a result at that level is not routine, and it proves that when O'Neill is handed a horse capable of competing at the very top, he can deliver.
There is one footnote that stands out for different reasons. His partnership with Beachborough Girl has produced zero wins from eight races together. Eight attempts, no reward. That kind of repeated near-miss can happen in racing for all sorts of legitimate reasons — the ground, the draw, a horse just not quite finding form on the day — but it's the sort of stat that sticks in the mind. O'Neill keeps getting the call, which suggests the yard believe it's a matter of when, not if. At 281 career winners and still only four years in, the same could probably be said of his career as a whole.
| Course | Races | Wins | Win rate |
|---|---|---|---|
| Wolverhampton | 157 | 17 | 10.8% |
| Southwell | 114 | 8 | 7.0% |
| Lingfield Park | 82 | 7 | 8.5% |
| Kempton Park | 42 | 1 | 2.4% |
| chelmsford | 35 | 4 | 11.4% |
| Great Yarmouth | 24 | 2 | 8.3% |
| Doncaster | 23 | 2 | 8.7% |
| Chepstow | 22 | 2 | 9.1% |
| Bath | 21 | 3 | 14.3% |
| Newcastle | 20 | 3 | 15% |
| Windsor | 16 | 0 | 0% |
| Ffos Las | 15 | 1 | 6.7% |
| Chester | 12 | 1 | 8.3% |
| Nottingham | 11 | 0 | 0% |
| Leicester | 10 | 0 | 0% |
| Thirsk | 10 | 0 | 0% |
| Brighton | 9 | 1 | 11.1% |
| Sandown Park | 9 | 0 | 0% |
| Newmarket | 9 | 0 | 0% |
| Newbury | 7 | 0 | 0% |
| Ripon | 6 | 1 | 16.7% |
| Haydock Park | 5 | 0 | 0% |
| Salisbury | 5 | 0 | 0% |
| York | 4 | 1 | 25% |
| Ayr | 4 | 0 | 0% |
| Goodwood | 3 | 0 | 0% |
| Redcar | 3 | 0 | 0% |
| Hamilton Park | 2 | 0 | 0% |
| Epsom Downs | 2 | 0 | 0% |
| Pontefract | 1 | 0 | 0% |
| Beverley | 1 | 0 | 0% |
| Carlisle | 1 | 0 | 0% |