Career snapshot
Position rank · 25/26
Among 1,246 Goalkeepers · ≥200 mins
Career highs
Born the same day
Shares 2003-05-17 · 6 players total
| Full name | Josh Keeley |
|---|---|
| Date of birth | 2003-05-17 (23 yrs) |
| Place of birth | Dunboyne, Meath, Ireland |
| Citizenship | Ireland |
| Position | Goalkeeper |
| Foot | right |
| Height | 191.00 m |
| Current club | Luton Town |
| Joined | 2025-07-19 |
| Contract expires | — |
| Agent | Tier One |
Percentile rank vs 388 other Goalkeepers with ≥500 minutes in 25/26. Higher = better (except cards, where lower = better — inverted automatically).
| Club | Seasons | First | Last | Matches | Goals | Assists | Minutes |
|---|---|---|---|---|---|---|---|
| Luton Town | 1 | 25/26 | 25/26 | 6 | 0 | 0 | 540 |
| Leyton Orient | 1 | 24/25 | 24/25 | 45 | 0 | 0 | 4,170 |
| Tottenham Hotspur U21 | 3 | 22/23 | 24/25 | 32 | 0 | 0 | 2,808 |
| Barnet FC | 1 | 23/24 | 23/24 | 18 | 0 | 0 | 1,620 |
| St. Patricks Athletic UEFA U19 | 1 | 21/22 | 21/22 | 2 | 0 | 0 | 180 |
| St. Patrick's Athletic | 4 | 2019 | 2022 | 2 | 0 | 0 | 99 |
Career trajectory — goals, assists & market value
Goals by season
Assists by season
| Season | Competition | Club | Matches | Goals | Assists | YC | RC | Minutes |
|---|---|---|---|---|---|---|---|---|
| 25/26 | EFL Cup | Luton Town | 0 | 0 | 0 | 0 | 0 | 0 |
| 25/26 | EFL Trophy | Luton Town | 0 | 0 | 0 | 0 | 0 | 0 |
| 25/26 | League One | Luton Town | 6 | 0 | 0 | 1 | 0 | 540 |
| 24/25 | EFL Cup | Leyton Orient | 1 | 0 | 0 | 0 | 0 | 90 |
| 24/25 | EFL Trophy | Leyton Orient | 1 | 0 | 0 | 0 | 0 | 90 |
| 24/25 | EFL Trophy | Tottenham Hotspur U21 | 0 | 0 | 0 | 0 | 0 | 0 |
| 24/25 | FA Cup | Leyton Orient | 4 | 0 | 0 | 0 | 0 | 450 |
| 24/25 | League One | Leyton Orient | 36 | 0 | 0 | 5 | 0 | 3,240 |
| 24/25 | League One Play-Offs | Leyton Orient | 3 | 0 | 0 | 0 | 0 | 300 |
| 24/25 | Premier League 2 | Tottenham Hotspur U21 | 2 | 0 | 0 | 0 | 0 | 180 |
| 23/24 | EFL Trophy | Tottenham Hotspur U21 | 3 | 0 | 0 | 0 | 0 | 270 |
| 23/24 | National League | Barnet FC | 17 | 0 | 0 | 2 | 0 | 1,530 |
| 23/24 | National League Playoffs | Barnet FC | 1 | 0 | 0 | 0 | 0 | 90 |
| 23/24 | PL2 Playoffs | Tottenham Hotspur U21 | 0 | 0 | 0 | 0 | 0 | 0 |
| 23/24 | Premier League 2 | Tottenham Hotspur U21 | 6 | 0 | 0 | 0 | 0 | 540 |
| 23/24 | Premier League Cup | Tottenham Hotspur U21 | 0 | 0 | 0 | 0 | 0 | 0 |
| 22/23 | EFL Trophy | Tottenham Hotspur U21 | 2 | 0 | 0 | 0 | 0 | 180 |
| 22/23 | Premier League 2 | Tottenham Hotspur U21 | 19 | 0 | 0 | 1 | 0 | 1,638 |
| 21/22 | UEFA Youth League | St. Patricks Athletic UEFA U19 | 2 | 0 | 0 | 0 | 0 | 180 |
| 2022 | Premier Division | St. Patrick's Athletic | 0 | 0 | 0 | 0 | 0 | 0 |
| 2022 | President's Cup | St. Patrick's Athletic | 0 | 0 | 0 | 0 | 0 | 0 |
| 2021 | FAI Cup | St. Patrick's Athletic | 1 | 0 | 0 | 0 | 0 | 9 |
| 2021 | Premier Division | St. Patrick's Athletic | 1 | 0 | 0 | 0 | 0 | 90 |
| 2020 | Premier Division | St. Patrick's Athletic | 0 | 0 | 0 | 0 | 0 | 0 |
| 2019 | Leinster Senior Cup | St. Patrick's Athletic | 0 | 0 | 0 | 0 | 0 | 0 |
| Season | Date | From | To | Type | Market value | Fee |
|---|---|---|---|---|---|---|
| 20/21 | 2020-11-09 | Pat's Academy | St. Pat's | Transfer | 0 | — |
| 22/23 | 2022-07-01 | St. Pat's | Tottenham U21 | Transfer | 25000 | — |
| 23/24 | 2024-01-04 | Tottenham U21 | Barnet | Loan | 200000 | — |
| 23/24 | 2024-05-31 | Barnet | Tottenham U21 | Return from loan | 200000 | — |
| 24/25 | 2024-08-30 | Tottenham U21 | Leyton Orient | Loan | 200000 | — |
| 24/25 | 2025-05-31 | Leyton Orient | Tottenham U21 | Return from loan | 300000 | — |
| 25/26 | 2025-07-19 | Tottenham U21 | Luton | Transfer | 550000 | €1.15m |
No recorded injuries.
| Date | Value |
|---|---|
| Jan 1, 1970 | €550k |
| Jan 1, 1970 | €300k |
| Jan 1, 1970 | €200k |
| Jan 1, 1970 | €25k |
| Jan 1, 1970 | €25k |
| Team | Shirt | Matches | Goals | Debut | Age at debut | Status |
|---|---|---|---|---|---|---|
| Team #23132 | #16 | 0 | 0 | — | — | former national player |
| Team #23102 | #16 | 1 | 0 | — | — | former national player |
| Team #21103 | #23 | 10 | 0 | — | — | recent national player |
| Team #3509 | #23 | 0 | 0 | — | — | recent national player |
| Teammate | PPG played with | Joint goals | Minutes |
|---|---|---|---|
| Diallang Jaiyesimi | 2 | 1 | 929 |
| Matthew Craig | 1 | 0 | 0 |
| Romaine Mundle | 1 | 0 | 0 |
| Jayden Sweeney | 2 | 0 | 0 |
| Rarmani Edmonds-Green | 2 | 0 | 0 |
| Dan Happe | 2 | 0 | 0 |
| Tom James | 2 | 1 | 0 |
| Nile John | 1 | 0 | 0 |
| Brooklyn Lyons-Foster | 2 | 0 | 0 |
| Azeem Abdulai | 2 | 0 | 0 |
| Max Robson | 2 | 0 | 0 |
| Sean Clare | 2 | 0 | 0 |
| Ollie O'Neill | 2 | 0 | 0 |
| Jamie Donley | 2 | 0 | 0 |
| Brandon Cooper | 2 | 0 | 0 |
| Yago Santiago | 1 | 0 | 0 |
| Sonny Perkins | 2 | 0 | 0 |
| Dominic Ball | 2 | 0 | 0 |
| Omar Beckles | 2 | 0 | 0 |
| Jack Currie | 2 | 0 | 0 |
Every loan spell across this player's career.
| Season | Date | From | To | Type | Fee | Value at transfer |
|---|---|---|---|---|---|---|
| 24/25 | 2025-05-31 | Leyton Orient | Tottenham U21 | Return from loan | — | €300k |
| 24/25 | 2024-08-30 | Tottenham U21 | Leyton Orient | Loan | — | €200k |
| 23/24 | 2024-05-31 | Barnet | Tottenham U21 | Return from loan | — | €200k |
| 23/24 | 2024-01-04 | Tottenham U21 | Barnet | Loan | — | €200k |
Last 50 matches for Luton Town The Availability column cross-references our injury database — matches inside a known injury window are flagged INJURED. Per-match goal attribution requires a paid feed (FBref/Sofascore) and isn't wired up yet.
| Date | Comp | Home | Score | Away | Availability |
|---|---|---|---|---|---|
| 2026-02-07 | GB3 |
Luton Town | 2–1 | Bradford City | Available |
| 2026-01-31 | GB3 |
Luton Town | 1–0 | Blackpool FC | Available |
| 2026-01-27 | GB3 |
Huddersfield Town | 1–0 | Luton Town | Available |
| 2026-01-24 | GB3 |
Plymouth Argyle | 1–0 | Luton Town | Available |
| 2026-01-17 | GB3 |
Luton Town | 2–2 | Lincoln City | Available |
| 2026-01-10 | GB3 |
Luton Town | 2–1 | Stevenage FC | Available |
| 2026-01-01 | GB3 |
Exeter City | 1–0 | Luton Town | Available |
| 2025-12-29 | GB3 |
Luton Town | 3–1 | Leyton Orient | Available |
| 2025-12-26 | GB3 |
Luton Town | 2–1 | Wycombe Wanderers | Available |
| 2025-12-18 | GB3 |
Reading FC | 0–1 | Luton Town | Available |
| 2025-12-13 | GB3 |
Luton Town | 2–0 | Port Vale FC | Available |
| 2025-12-09 | GB3 |
Leyton Orient | 1–3 | Luton Town | Available |
| 2025-11-29 | GB3 |
Luton Town | 1–1 | Bolton Wanderers | Available |
| 2025-11-22 | GB3 |
Barnsley FC | 1–2 | Luton Town | Available |
| 2025-11-15 | GB3 |
Luton Town | 1–0 | Rotherham United | Available |
| 2025-11-08 | GB3 |
Stockport County | 2–2 | Luton Town | Available |
| 2025-10-25 | GB3 |
Northampton Town | 0–1 | Luton Town | Available |
| 2025-10-18 | GB3 |
Luton Town | 0–2 | Mansfield Town | Available |
| 2025-10-04 | GB3 |
Stevenage FC | 2–0 | Luton Town | Available |
| 2025-09-30 | GB3 |
Blackpool FC | 2–2 | Luton Town | Available |
| 2025-09-27 | GB3 |
Luton Town | 1–0 | Doncaster Rovers | Available |
| 2025-09-20 | GB3 |
Lincoln City | 3–1 | Luton Town | Available |
| 2025-09-13 | GB3 |
Luton Town | 2–3 | Plymouth Argyle | Available |
| 2025-08-30 | GB3 |
Burton Albion | 0–3 | Luton Town | Available |
| 2025-08-23 | GB3 |
Luton Town | 0–1 | Cardiff City | Available |
| 2025-08-19 | GB3 |
Luton Town | 1–0 | Wigan Athletic | Available |
| 2025-08-16 | GB3 |
Bradford City | 2–1 | Luton Town | Available |
| 2025-08-09 | GB3 |
Peterborough United | 0–2 | Luton Town | Available |
| 2025-08-01 | GB3 |
Luton Town | 1–0 | AFC Wimbledon | Available |
| 2024-08-27 | CGB |
Queens Park Rangers | 4–1 | Luton Town | Available |
| 2024-02-27 | GB1 |
Luton Town | 2–6 | Manchester City | Available |
| 2023-09-26 | CGB |
Exeter City | 1–0 | Luton Town | Available |
| 2023-08-29 | CGB |
Luton Town | 3–2 | Gillingham FC | Available |
| 2022-08-09 | CGB |
Luton Town | 2–3 | Newport County | Available |
| 2022-03-02 | GB1 |
Luton Town | 2–3 | Chelsea FC | Available |
| 2021-08-10 | CGB |
Stevenage FC | 3–0 | Luton Town | Available |
| 2020-09-22 | CGB |
Luton Town | 0–3 | Manchester United | Available |
| 2020-09-15 | CGB |
Reading FC | 0–1 | Luton Town | Available |
| 2020-09-05 | CGB |
Luton Town | 3–1 | Norwich City | Available |
| 2020-06-30 | GB2 |
Leeds United | 1–1 | Luton Town | Available |
| 2020-06-27 | GB2 |
Swansea City | 0–1 | Luton Town | Available |
| 2020-06-20 | GB2 |
Luton Town | 1–1 | Preston North End | Available |
| 2020-03-07 | GB2 |
Wigan Athletic | 0–0 | Luton Town | Available |
| 2020-02-29 | GB2 |
Luton Town | 1–1 | Stoke City | Available |
| 2020-02-25 | GB2 |
Luton Town | 2–1 | Brentford FC | Available |
| 2020-02-22 | GB2 |
Charlton Athletic | 3–1 | Luton Town | Available |
| 2020-02-15 | GB2 |
Middlesbrough FC | 0–1 | Luton Town | Available |
| 2020-02-12 | GB2 |
Luton Town | 1–0 | Sheffield Wednesday | Available |
| 2020-02-08 | GB2 |
Luton Town | 0–1 | Cardiff City | Available |
| 2020-02-01 | GB2 |
West Bromwich Albion | 2–0 | Luton Town | Available |
Teams faced most often by Josh Keeley's clubs during seasons he played in those competitions (team-level results, not personal head-to-head goals — see disclaimer above).
| Opponent | P | W | D | L | GF | GA | GD | Win % |
|---|---|---|---|---|---|---|---|---|
| Stevenage FC | 12 | 3 | 4 | 5 | 8 | 17 | -9 | 25% |
| Northampton Town | 10 | 2 | 2 | 6 | 10 | 15 | -5 | 20% |
| Exeter City | 9 | 3 | 2 | 4 | 14 | 10 | +4 | 33% |
| Oldham Athletic | 9 | 3 | 2 | 4 | 12 | 12 | 0 | 33% |
| Stockport County | 9 | 3 | 3 | 3 | 12 | 16 | -4 | 33% |
| Maidenhead United | 8 | 5 | 2 | 1 | 17 | 10 | +7 | 63% |
| Wealdstone FC | 8 | 3 | 2 | 3 | 12 | 9 | +3 | 38% |
| Rochdale AFC | 8 | 6 | 1 | 1 | 18 | 9 | +9 | 75% |
| Solihull Moors | 8 | 2 | 4 | 2 | 12 | 12 | 0 | 25% |
| Woking FC | 8 | 5 | 1 | 2 | 10 | 5 | +5 | 63% |
| Bristol Rovers | 8 | 3 | 1 | 4 | 10 | 11 | -1 | 38% |
| Mansfield Town | 8 | 4 | 1 | 3 | 10 | 11 | -1 | 50% |
Yellow / second-yellow / red cards per season. Only seasons with at least one card are shown.
| Season | Matches | Mins | YC | 2nd YC | RC | Cards / 90′ |
|---|---|---|---|---|---|---|
| 25/26 | 6 | 540 | 1 | 0 | 0 | 0.17 |
| 24/25 | 47 | 4,350 | 5 | 0 | 0 | 0.1 |
| 23/24 | 27 | 2,430 | 2 | 0 | 0 | 0.07 |
| 22/23 | 21 | 1,818 | 1 | 0 | 0 | 0.05 |
Goalkeeper-specific aggregates: clean sheets and goals conceded by season.
| Season | Matches | Mins | Clean sheets | CS % | Goals conceded | GC / 90′ |
|---|---|---|---|---|---|---|
| 25/26 | 6 | 540 | 4 | 67% | 3 | 0.5 |
| 24/25 | 47 | 4,350 | 16 | 34% | 50 | 1.03 |
| 23/24 | 27 | 2,430 | 8 | 30% | 35 | 1.3 |
| 22/23 | 21 | 1,818 | 2 | 10% | 32 | 1.58 |
| 21/22 | 2 | 180 | 0 | 0% | 4 | 2 |
| 2021 | 2 | 99 | 1 | 50% | 2 | 1.82 |
Output by competition
Career goals and assists broken down by tournament.
More on Josh Keeley
Explore this player's career through different angles.
Similar players
Same position, similar age, sorted by market value.
Frequently asked about Josh Keeley
Who is Josh Keeley?
Josh Keeley is an Ireland professional footballer who plays as a goalkeeper for Luton Town.
How old is Josh Keeley?
Josh Keeley is 23 years old. He was born on May 17, 2003 in Dunboyne, Meath.
What position does Josh Keeley play?
Josh Keeley plays as a goalkeeper (Goalkeeper).
What club does Josh Keeley play for?
Josh Keeley currently plays for Luton Town.
What is Josh Keeley's market value?
Josh Keeley's most recent reported market value is €550k.
Ireland