UK time :

J P Fahey

Four years into his training career, J P Fahey has built a record of 34 winners since setting up his yard in 2021 — a solid foundation, though the last 12 months have been a real test of patience. This season, he has managed just 3 winners from 106 runners, which works out at roughly 1 in every 35 races. That is a sharp drop from last year, when he was winning closer to 1 in every 13, and it is the kind of dip that any trainer will tell you is the hardest part of the job — the horses are running, the entries are going in, but the winners simply are not coming.Based on TrackLab's analysis
Quick facts
Role
Trainer
Based
MonasterevIn, Co. Kildare
Record
3 wins from 106 races
Win rate
2.8%
Top jockey
Best course
Dundalk (8.3% from 12 races)
Best ground
Good to yielding (mild give)

📊 Key numbers

A snapshot of this trainer's performance over the last 12 months
106
Races
3
Wins
2.8%
Win rate
avg ~10%
26.4%
Top-3 rate
avg ~30%

🔍 Full analysis

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

The most striking detail in Fahey's recent numbers is his partnership with jockey Ronan Whelan. The two have teamed up 29 times without a single win between them. That is not necessarily a reflection of either man's ability — racing is unforgiving and sometimes combinations just do not click — but 29 races is a long run without a result, and at some point both parties will be asking whether a change might shake things up.

There is a small bright spot worth noting: on slightly soft, damp ground, Fahey's horses have won 1 from 16 races this season, a 6% win rate that sits meaningfully above his overall average. It is a thin sample, but it hints that when the ground suits, the yard can still find a way to the winner's enclosure. For anyone watching Fahey's runners, keeping an eye on the forecast might be worth doing.

Thirty-four career winners in four years tells you this is a trainer who knows what he is doing — the winners are there in the record. The current lean spell is the story of right now, not the whole story. Yards go through quiet periods, form cycles turn, and a trainer with Fahey's foundation has every reason to believe the numbers will start moving in the right direction again. The question is simply when.

📈 Form trend

How this trainer's win rate has changed month by month
Monthly win rate
2025–2026
0%
Jul
6.2%
Aug
7.7%
Sep
0%
Oct
0%
Nov
0%
Dec
0%
Jan
0%
Feb
33.3%
Mar
0%
Apr
0%
May
0%
Jun

🎯 Where this trainer does best

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

🏇 Jockeys

The riders they work with most, most rides first
Ronan Whelan Main partner
0%
Win rate
0/29
Wins / rides
0%
Win rate
0/18
Wins / rides
Peter Smithers
0%
Win rate
0/14
Wins / rides
9.1%
Win rate
1/11
Wins / rides
Aidan Kelly
0%
Win rate
0/9
Wins / rides
Reese Holohan
16.7%
Win rate
1/6
Wins / rides
0%
Win rate
0/4
Wins / rides
0%
Win rate
0/3
Wins / rides
Jack Cleary
0%
Win rate
0/2
Wins / rides
Cian Cullinan
0%
Win rate
0/2
Wins / rides
Joseph Harnett
100%
Win rate
1/1
Wins / rides
0%
Win rate
0/1
Wins / rides
0%
Win rate
0/1
Wins / rides
0%
Win rate
0/1
Wins / rides
Mr D Doyle
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 trainer right now
Form: 62-1
Form: 2242-4
Form: 33240-
Form: 5236-8
Form: 066-40
Form: 00-236
Form: 000-
Form: 42690-
Form: 9-1770
Form: 0-75

🏟 Course record

Win rate at each course, most races first
CourseRacesWinsWin rate
Dundalk 12 1 8.3%
The Curragh 12 0 0%
Naas 11 0 0%
Gowran Park 9 0 0%
Navan 8 0 0%
Down Royal 6 0 0%
Bellewstown 5 0 0%
Fairyhouse 5 0 0%
Cork 5 0 0%
Punchestown 4 1 25%
Roscommon 4 0 0%
Tipperary 3 0 0%
Limerick 3 0 0%
Wexford 3 0 0%
Thurles 3 0 0%
Galway 2 1 50%
Listowel 2 0 0%
Ballinrobe 2 0 0%
Leopardstown 2 0 0%
Kilbeggan 2 0 0%
Killarney 1 0 0%
Sligo 1 0 0%
Clonmel 1 0 0%

📅 Recent results

The last 20 results, most recent first
24 Jun
Naas · 1m1f – 1m2f · Good
17th
3 Jun
The Curragh · 1m6f – 2m · Good_To_Yielding
3rd
3 Jun
The Curragh · 5f – 6½f · Good_To_Yielding
13th
1 Jun
Gowran Park · 1m1f – 1m2f · Yielding
3rd
31 May
Kilbeggan · Long Distance (2m+) · Good_To_Yielding
11th
29 May
Down Royal · 5f – 6½f · Good
3rd
28 May
Fairyhouse · 5f – 6½f · Good
11th
20 May
Gowran Park · 1m1f – 1m2f · Good_To_Yielding
15th
18 May
Roscommon · 1m3f – 1m4f · Good_To_Yielding
—
16 May
Navan · 5f – 6½f · Good
13th
13 May
Punchestown · Long Distance (2m+) · Good
—
11 May
Roscommon · 1m6f – 2m · Good
10th
11 May
Roscommon · 7f – 1m · Good
8th
9 May
Naas · 1m1f – 1m2f · Good
—
8 May
Ballinrobe · 1m1f – 1m2f · Good_To_Yielding
8th
3 May
Sligo · 5f – 6½f · Yielding_To_Soft
4th
25 Apr
Limerick · 1m3f – 1m4f · Yielding
14th
23 Apr
Dundalk · 1m1f – 1m2f · Standard
—
23 Apr
Dundalk · 5f – 6½f · Standard
2nd
18 Apr
Bellewstown · Long Distance (2m+) · Yielding
15th