UK time :

Mr J M Halford(7)

Four years into his career as a jockey, Mr J M Halford has quietly built a record worth paying attention to. Over the last 12 months he has ridden 70 races and won 8 of them — roughly 1 in every 9 — which is a solid return for a rider still finding his feet at this level. The "(7)" next to his name is a weight allowance, a small advantage given to less experienced jockeys to help them compete. It tells you where he is in his journey: not a beginner, but not yet the finished article either.Based on TrackLab's analysis
Quick facts
Role
Jockey
Record
8 wins from 70 races
Win rate
11.4%
Top trainer
Best course
Roscommon (100% from 1 race)
Best ground
Yielding (slightly soft)

📊 Key numbers

A snapshot of this jockey's performance over the last 12 months
70
Races
8
Wins
11.4%
Win rate
avg ~10%
32.9%
Top-3 rate
avg ~30%

🔍 Full analysis

Our model's view, based on this jockey's record and recent runs
TrackLab's jockey breakdown

The most compelling number in his profile is the one attached to his partnership with trainer Gordon Elliott. When Halford rides for Elliott's yard, the results jump sharply — 6 wins from 24 rides, meaning he wins 1 in every 4 races in that combination. That is more than double his overall rate, and it is not a coincidence. Elliott is one of the leading trainers in Ireland, and when a yard of that quality keeps putting a young jockey up, it means they like what they see. Getting 24 rides from a top trainer in four years is an opportunity, and Halford has converted it at a rate that suggests he is making the most of it.

There is also a small but interesting pattern on wet or muddy ground. With 2 wins from 11 races in those conditions, he wins roughly 1 in every 5 or 6 races when the ground is soft — noticeably better than his overall average. Whether that reflects the types of horses he rides in those conditions or a genuine feel for riding on a testing surface is hard to say from the numbers alone, but it is a thread worth watching.

At four years in, Halford is at exactly the stage where careers either take off or flatten out. The

📈 Form trend

How this jockey's win rate has changed month by month
Monthly win rate
2025–2026
20%
May
16.7%
Jun
0%
Jul
0%
Aug
40%
Sep
0%
Oct
18.2%
Nov
11.1%
Dec
0%
Jan
0%
Feb
14.3%
Mar
0%
Apr

🎯 Where this jockey does best

Results split by ground, race level and track shape
🌧 Ground
Yielding (slightly soft)
Loves
Soft (muddy)
Loves
Good (a little give)
Soft to heavy (wet)
Good to yielding (mild give)
Ok
Standard (all-weather)
Unknown
Standard to slow (all-weather)
Unknown
Heavy (very wet)
Avoids
Yielding to soft (damp)
Avoids
🏅 Race level
Class 5 (entry-level)
Unknown
Class 6 (grassroots)
Unknown
🏟 Track shape
Right-handed, long straights
Loves
Right-handed, tight turns
Loves
Left-handed, tight turns
Long straights
Unknown
Left-handed, long straights
Avoids
Right-handed, tight
Avoids
Right-handed, hilly
Avoids

🏇 Trainers

The trainers they work with most, most rides first
Gordon Elliott Main partner
25%
Win rate
6/24
Wins / rides
14.3%
Win rate
1/7
Wins / rides
0%
Win rate
0/6
Wins / rides
20%
Win rate
1/5
Wins / rides
0%
Win rate
0/2
Wins / rides
0%
Win rate
0/2
Wins / rides
John C McConnell
0%
Win rate
0/2
Wins / rides
0%
Win rate
0/2
Wins / rides
0%
Win rate
0/2
Wins / rides
0%
Win rate
0/2
Wins / rides
0%
Win rate
0/1
Wins / rides
0%
Win rate
0/1
Wins / rides
0%
Win rate
0/1
Wins / rides
0%
Win rate
0/1
Wins / rides
0%
Win rate
0/1
Wins / rides
0%
Win rate
0/1
Wins / rides
0%
Win rate
0/1
Wins / rides
0%
Win rate
0/1
Wins / rides
0%
Win rate
0/1
Wins / rides
0%
Win rate
0/1
Wins / rides

⭐ Top horses

The highest-rated horses linked to this jockey right now
Form: 40-524
Form: 1
Form: 122
Form: 111203
Form: 121419
Form: -8P638
Form: 3/6422
Form: 2FF411
Form: 693564
Form: FF1

🏟 Course record

Win rate at each course, most races first
CourseRacesWinsWin rate
Punchestown 7 1 14.3%
Clonmel 6 1 16.7%
Naas 5 0 0%
Galway 5 0 0%
Limerick 4 1 25%
Thurles 4 0 0%
Down Royal 3 2 66.7%
Kilbeggan 3 0 0%
Fairyhouse 3 0 0%
Navan 3 0 0%
Sligo 3 0 0%
Leopardstown 3 0 0%
Wexford 2 1 50%
Listowel 2 1 50%
Bellewstown 2 0 0%
The Curragh 2 0 0%
Tipperary 2 0 0%
Killarney 2 0 0%
Dundalk 2 0 0%
Roscommon 1 1 100%
Tramore 1 0 0%
Gowran Park 1 0 0%
chelmsford 1 0 0%
Downpatrick 1 0 0%
Doncaster 1 0 0%
Cheltenham 1 0 0%

📅 Recent results

The last 20 results, most recent first
30 Apr
Punchestown · Long Distance (2m+) · Yielding
2nd
28 Apr
Punchestown · Long Distance (2m+) · Yielding
11th
28 Apr
Punchestown · Long Distance (2m+) · Yielding
9th
24 Apr
Kilbeggan · Long Distance (2m+) · Good_To_Yielding
11th
29 Mar
Downpatrick · Long Distance (2m+) · Yielding_To_Soft
2nd
17 Mar
Down Royal · Long Distance (2m+) · Yielding
Won
17 Mar
Down Royal · Long Distance (2m+) · Good_To_Yielding
3rd
12 Mar
Cheltenham · Long Distance (2m+) · Good
—
7 Mar
Gowran Park · Long Distance (2m+) · Heavy
4th
6 Mar
Dundalk · Long Distance (2m+) · Standard
7th
3 Mar
Leopardstown · Long Distance (2m+) · Yielding
8th
19 Feb
Thurles · Long Distance (2m+) · Soft_To_Heavy
—
12 Feb
Clonmel · Long Distance (2m+) · Heavy
—
7 Feb
Naas · Long Distance (2m+) · Heavy
4th
7 Feb
Naas · 1m6f – 2m · Soft_To_Heavy
3rd
5 Feb
Thurles · Long Distance (2m+) · Soft
2nd
25 Jan
Naas · Long Distance (2m+) · Heavy
6th
18 Jan
Thurles · Long Distance (2m+) · Yielding
4th
12 Jan
Punchestown · Long Distance (2m+) · Soft_To_Heavy
2nd
11 Jan
Gringo dAubrelle
Punchestown · Long Distance (2m+) · Soft_To_Heavy
—