The highlight of his career so far came at the top level. O'Farrell has won 2 Class 1 races — the highest grade in British racing — at Warwick and Haydock Park, including one at Warwick as recently as February 2026. To win at that level once takes talent and a bit of luck. To do it twice, at four years in, suggests he belongs in those conversations.
His most important professional relationship is with trainer Neil Mulholland, and the numbers there are striking. From 228 rides together they have produced 31 winners — that is winning roughly 1 in every 7, a 14% win rate that comfortably outperforms O'Farrell's overall seasonal average. When a jockey and trainer click at that level, it is rarely a coincidence. It usually means they understand each other's horses, communicate well, and trust each other's judgement. That partnership looks like the engine room of O'Farrell's career right now.
One more thing worth noting: he is particularly effective when the weather turns nasty. On very wet and muddy ground, O'Farrell wins 5 races in every 25 he rides — a 20% win rate that is nearly double his usual figures. Some jockeys are fair-weather performers; O'Farrell appears to thrive when conditions get difficult and fields thin out. In jump racing, where the British winter throws everything it has at horses and riders alike, that is a genuinely valuable skill. He is worth keeping an eye on the next time the rain comes down.
| Course | Races | Wins | Win rate |
|---|---|---|---|
| Fontwell Park | 32 | 4 | 12.5% |
| Uttoxeter | 29 | 2 | 6.9% |
| Chepstow | 24 | 3 | 12.5% |
| Worcester | 22 | 2 | 9.1% |
| Taunton | 20 | 3 | 15% |
| Ffos Las | 19 | 2 | 10.5% |
| Hexham | 18 | 1 | 5.6% |
| Plumpton | 14 | 3 | 21.4% |
| Wincanton | 14 | 1 | 7.1% |
| hereford | 13 | 3 | 23.1% |
| Stratford-on-Avon | 13 | 0 | 0% |
| Carlisle | 12 | 0 | 0% |
| Newton Abbot | 11 | 3 | 27.3% |
| Sedgefield | 11 | 1 | 9.1% |
| Musselburgh | 10 | 3 | 30% |
| Southwell | 10 | 1 | 10% |
| Market Rasen | 9 | 0 | 0% |
| Ludlow | 8 | 2 | 25% |
| Wetherby | 7 | 0 | 0% |
| Cheltenham | 7 | 0 | 0% |
| Doncaster | 6 | 2 | 33.3% |
| Windsor | 6 | 0 | 0% |
| Ayr | 6 | 0 | 0% |
| Warwick | 5 | 2 | 40% |
| Cartmel | 5 | 1 | 20% |
| Newcastle | 5 | 1 | 20% |
| Lingfield Park | 5 | 1 | 20% |
| Kelso | 5 | 0 | 0% |
| Perth | 5 | 0 | 0% |
| Bangor-on-Dee | 5 | 0 | 0% |
| Kempton Park | 5 | 0 | 0% |
| Newbury | 4 | 0 | 0% |
| Huntingdon | 4 | 0 | 0% |
| Leicester | 3 | 0 | 0% |
| Fakenham | 3 | 0 | 0% |
| Sandown Park | 3 | 0 | 0% |
| Catterick Bridge | 2 | 0 | 0% |
| Exeter | 2 | 0 | 0% |
| Haydock Park | 1 | 0 | 0% |
| Epsom Downs | 1 | 0 | 0% |