Mark Harris
Season2025-26
Shot map
Every shot is plotted where it was taken, with distances in real metres and each marker the same size. Colour shows the outcome, not the chance quality. New to xG? See what xG means.
33% on target2 shots were taken from beyond 40 m and fall outside the map. Still counted above.
- Goal
- On target
- Off target
View shot data as a table
| Date | Opponent | Min | Outcome | Situation | Body part | xG |
|---|---|---|---|---|---|---|
| 2026-05-02 | Millwall | 83' | Saved | Open play | Header | 0.35 |
| 2026-04-21 | Wrexham | 73' | Off target | Free kick delivery | Right foot | 0.10 |
| 2026-04-18 | Derby County | 90+6' | Off target | Open play | Right foot | 0.54 |
| 2026-04-11 | Watford | 90+2' | Goal | Open play | Right foot | 0.07 |
| 2026-04-03 | Hull City | 90+1' | Off target | Counter-attack | Left foot | 0.73 |
| 2026-04-03 | Hull City | 77' | Off target | Open play | Right foot | 0.01 |
| 2026-02-07 | Coventry City | 76' | Off target | Open play | Right foot | 0.00 |
| 2026-01-31 | Birmingham City | 3' | Blocked | Open play | Right foot | 0.01 |
| 2026-01-24 | Leicester City | 71' | Goal | Counter-attack | Left foot | 0.86 |
| 2025-12-20 | Charlton Athletic | 68' | Blocked | Open play | Right foot | 0.04 |
| 2025-12-20 | Charlton Athletic | 45+1' | Off target | Open play | Right foot | 0.01 |
| 2025-12-09 | Blackburn Rovers | 44' | Off target | Open play | Right foot | 0.08 |
| 2025-11-28 | Ipswich Town | 28' | Saved | Counter-attack | Right foot | 0.01 |
| 2025-11-28 | Ipswich Town | 24' | Goal | Open play | Left foot | 0.18 |
| 2025-11-28 | Ipswich Town | 24' | Saved | Open play | Right foot | 0.14 |
| 2025-11-25 | Norwich City | 53' | Blocked | Open play | Right foot | 0.04 |
| 2025-11-25 | Norwich City | 43' | Off target | Open play | Header | 0.02 |
| 2025-10-25 | Sheffield Wednesday | 90+1' | Off target | Counter-attack | Left foot | 0.21 |
| 2025-10-04 | Watford | 90+5' | Saved | Open play | Right foot | 0.04 |
| 2025-08-23 | Birmingham City | 90+2' | Off target | Open play | Right foot | 0.22 |
| 2025-08-09 | Portsmouth | 67' | Blocked | Open play | Right foot | 0.04 |
| 2025-05-03 | Swansea City | 89' | Off target | Open play | Header | 0.05 |
| 2025-04-26 | Sunderland | 27' | Off target | From throw-in | Left foot | 0.03 |
| 2025-04-05 | Sheffield United | 11' | Blocked | Open play | Left foot | 0.01 |
| 2025-03-29 | Middlesbrough | 41' | Off target | Open play | Left foot | 0.12 |
| 2025-03-12 | Hull City | 50' | Saved | Open play | Right foot | 0.08 |
| 2025-03-07 | Norwich City | 18' | Goal | From throw-in | Right foot | 0.25 |
| 2025-02-11 | Derby County | 70' | Blocked | Open play | Right foot | 0.04 |
| 2025-02-01 | Bristol City | 78' | Blocked | From corner | Right foot | 0.03 |
| 2025-02-01 | Bristol City | 77' | Blocked | Open play | Right foot | 0.06 |
| 2025-01-18 | Blackburn Rovers | 55' | Saved | Open play | Right foot | 0.29 |
| 2025-01-18 | Blackburn Rovers | 16' | Saved | Open play | Right foot | 0.27 |
| 2024-12-29 | Plymouth Argyle | 36' | Saved | From throw-in | Right foot | 0.21 |
| 2024-12-29 | Plymouth Argyle | 19' | Saved | Open play | Right foot | 0.08 |
| 2024-12-26 | Cardiff City | 62' | Off target | Open play | Right foot | 0.02 |
| 2024-12-26 | Cardiff City | 41' | Goal | Open play | Left foot | 0.94 |
| 2024-12-26 | Cardiff City | 35' | Off target | Open play | Right foot | 0.01 |
| 2024-11-26 | Sheffield United | 75' | Blocked | Counter-attack | Right foot | 0.03 |
| 2024-11-23 | Middlesbrough | 41' | Saved | Open play | Right foot | 0.03 |
| 2024-11-08 | Watford | 88' | Off target | Free kick delivery | Left foot | 0.92 |
| 2024-11-08 | Watford | 84' | Saved | Open play | Right foot | 0.05 |
| 2024-11-05 | Hull City | 90+6' | Blocked | Open play | Right foot | 0.02 |
| 2024-11-02 | Swansea City | 49' | Off target | Open play | Right foot | 0.66 |
| 2024-10-19 | West Bromwich Albion | 27' | Off target | Open play | Right foot | 0.05 |
| 2024-10-19 | West Bromwich Albion | 7' | Saved | Open play | Left foot | 0.12 |
| 2024-10-05 | Portsmouth | 45' | Saved | Open play | Right foot | 0.04 |
| 2024-10-05 | Portsmouth | 14' | Off target | Open play | Right foot | 0.63 |
| 2024-10-01 | Luton Town | 67' | Saved | Open play | Right foot | 0.12 |
| 2024-09-21 | Bristol City | 55' | Off target | Counter-attack | Left foot | 0.94 |
| 2024-09-21 | Bristol City | 36' | Saved | Open play | Right foot | 0.06 |
| 2024-09-14 | Stoke City | 84' | Blocked | Open play | Right foot | 0.07 |
| 2024-09-14 | Stoke City | 57' | Saved | Counter-attack | Right foot | 0.11 |
| 2024-09-14 | Stoke City | 12' | Saved | Open play | Right foot | 0.02 |
| 2024-08-31 | Preston North End | 20' | Goal | Open play | Header | 0.14 |
| 2024-08-24 | Blackburn Rovers | 44' | Goal | Open play | Right foot | 0.01 |
| 2024-08-24 | Blackburn Rovers | 10' | Blocked | Open play | Right foot | 0.03 |
| 2024-08-16 | Coventry City | 76' | Blocked | Counter-attack | Right foot | 0.06 |
| 2024-08-16 | Coventry City | 55' | Goal | Open play | Other | 0.56 |
| 2024-08-10 | Norwich City | 43' | Off target | Open play | Header | 0.08 |
| 2024-08-10 | Norwich City | 28' | Goal | Open play | Right foot | 0.19 |
Shot maps for this player begin in 2024-25. Earlier seasons appear in the career table without shot data.
Career
Appearances, goals, assists and expected goals for every competition on record.Figures are the competition's own season totals, not sums of the shot map. Cup and international caps are a pilot, loaded for a small number of players so far.
| Season | Competition | Team | Apps | Min | Goals | Assists | xG | Rating |
|---|---|---|---|---|---|---|---|---|
| 2026-27 | League League One | Oxford United | 4 | 338 | 3 | 0 | — | 7.25 |
| 2026 | Club Friendly Club Friendly Games | Oxford United | 4 | 0 | 0 | 0 | — | — |
| 2026 | National team World Cup Qualification, UEFA | Wales | 9 | 278 | 0 | 0 | — | 6.57 |
| 2026-27 | Cup League Cup | Oxford United | 1 | 86 | 0 | 0 | — | 6.60 |
| 2026 | National team Int. Friendly Games | Wales | 1 | 0 | 0 | 0 | — | — |
| 2025-26 | League Championship | Oxford United | 35 | 918 | 2 | 0 | 2.96 | 6.52 |
| 2025-26 | Cup FA Cup | Oxford United | 2 | 31 | 0 | 0 | — | 7.00 |
| 2025-26 | Cup League Cup | Oxford United | 2 | 93 | 0 | 0 | — | 6.60 |
| 2025 | National team Int. Friendly Games | Wales | 2 | 104 | 0 | 0 | — | 6.50 |
| 2024-25 | League Championship | Oxford United | 46 | 2,907 | 6 | 3 | 7.33 | 6.60 |
| 2024-25 | National team UEFA Nations League | Wales | 6 | 209 | 0 | 0 | — | 6.53 |
| 2024-25 | Cup League Cup | Oxford United | 1 | 13 | 0 | 0 | — | 6.80 |
| 2023-24 | League League One | Oxford United | 46 | 3,698 | 15 | 4 | — | 6.93 |
| 2023-24 | Cup FA Cup | Oxford United | 3 | 0 | 0 | 0 | — | — |
| 2023-24 | Cup League Cup | Oxford United | 1 | 33 | 0 | 0 | — | 6.40 |
| 2022-23 | League Championship | Cardiff City | 35 | 1,605 | 3 | 0 | — | 6.57 |
| 2022 | National team World Cup Qualification, UEFA | Wales | 7 | 79 | 0 | 0 | — | 6.40 |
| 2022-23 | National team UEFA Nations League | Wales | 6 | 45 | 0 | 0 | — | 6.80 |
| 2022-23 | Cup FA Cup | Cardiff City | 2 | 132 | 0 | 0 | — | 6.20 |
| 2022-23 | Cup League Cup | Cardiff City | 1 | 89 | 0 | 0 | — | 6.70 |
| 2022 | National team World Cup | Wales | 3 | 0 | 0 | 0 | — | — |
| 2022 | National team Int. Friendly Games | Wales | 1 | 0 | 0 | 0 | — | — |
| 2021-22 | League Championship | Cardiff City | 34 | 1,539 | 3 | 1 | — | 6.52 |
| 2021-22 | Cup FA Cup | Cardiff City | 2 | 58 | 0 | 0 | — | 6.60 |
| 2021-22 | Cup League Cup | Cardiff City | 2 | 78 | 0 | 0 | — | 6.50 |
| 2021 | National team Int. Friendly Games | Wales | 1 | 0 | 0 | 0 | — | — |
| 2020-21 | League Championship | Cardiff City | 16 | 645 | 3 | 1 | — | 6.67 |
| 2020-21 | Cup FA Cup | Cardiff City | 1 | 12 | 0 | 0 | — | 6.30 |
| 2019-20 | League National League | Wrexham | 11 | 0 | 0 | 0 | — | — |
| 2019-20 | Cup FA Cup | Wrexham | 1 | 0 | 0 | 0 | — | — |
| 2018-19 | League League Two | Port Vale | 12 | 0 | 0 | 0 | — | — |
| 2018-19 | League League Two | Newport County | 23 | 0 | 0 | 0 | — | — |
| 2018-19 | Cup FA Cup | Newport County | 3 | 1 | 0 | 0 | — | — |
| 2018-19 | Cup League Cup | Newport County | 1 | 0 | 0 | 0 | — | — |
| 2017-18 | Cup FA Cup | Cardiff City | 1 | 0 | 0 | 0 | — | — |
| 2017-18 | Cup League Cup | Cardiff City | 1 | 0 | 0 | 0 | — | — |
| 2016-17 | League Championship | Cardiff City | 2 | 80 | 0 | 0 | — | 6.35 |
Mark Harris historical transfers
- 2023-07-11Cardiff City to Oxford UnitedFree
- 2020-07-01Cardiff City U21 to Cardiff CityTransfer
- 2019-07-01Cardiff City U21 to WrexhamLoan
- 2019-01-23Cardiff City U21 to Port ValeLoan
- 2018-08-02Cardiff City U21 to Newport CountyLoan
Detailed statistics
Every figure the competition reported for this season. Fields the source did not measure are left out rather than shown as zero.
Attacking
- Shots
- 161.57 per 90
- Shots on target
- 40.39 per 90
- Shooting accuracy
- 25%
- Shots blocked
- 30.29 per 90
- Key passes
- 60.59 per 90
- Expected assists
- 0.300.03 per 90
Passing and possession
- Touches
- 28327.75 per 90
- Accurate passes
- 979.51 per 90
- Pass accuracy
- 72%
- Accurate long balls
- 60.59 per 90
- Accurate crosses
- 0
- Cross accuracy
- 0%
- Successful dribbles
- 30.29 per 90
- Dribble success
- 33%
- Dispossessed
- 70.69 per 90
- Possession lost
- 868.43 per 90
Defending
- Tackles won
- 50.49 per 90
- Tackle success
- 50%
- Interceptions
- 50.49 per 90
- Clearances
- 111.08 per 90
- Ball recoveries
- 242.35 per 90
- Duels won
- 292.84 per 90
- Duel success
- 34%
- Aerial duels won
- 10.10 per 90
- Aerial success
- 5%
Discipline
- Fouls committed
- 232.25 per 90
- Was fouled
- 151.47 per 90
- Yellow cards
- 30.29 per 90
- Red cards
- 0
Detailed statistics
Every figure the competition reported for this season. Fields the source did not measure are left out rather than shown as zero.
Attacking
- Shots
- 391.21 per 90
- Shots on target
- 190.59 per 90
- Shooting accuracy
- 49%
- Shots blocked
- 90.28 per 90
- Key passes
- 200.62 per 90
- Expected assists
- 0.580.02 per 90
- Big chances missed
- 100.31 per 90
- Expected goals on target
- 4.440.14 per 90
- Offsides
- 290.90 per 90
Passing and possession
- Touches
- 78224.21 per 90
- Accurate passes
- 3019.32 per 90
- Pass accuracy
- 73%
- Accurate long balls
- 60.19 per 90
- Accurate crosses
- 0
- Cross accuracy
- 0%
- Successful dribbles
- 130.40 per 90
- Dribble success
- 31%
- Passes in the opposition half
- 1905.88 per 90
- Dispossessed
- 310.96 per 90
- Unsuccessful touches
- 912.82 per 90
- Possession lost
- 2738.45 per 90
Defending
- Tackles won
- 190.59 per 90
- Tackle success
- 68%
- Interceptions
- 40.12 per 90
- Clearances
- 150.46 per 90
- Blocks
- 40.12 per 90
- Ball recoveries
- 662.04 per 90
- Duels won
- 892.76 per 90
- Duel success
- 32%
- Aerial duels won
- 220.68 per 90
- Aerial success
- 25%
Discipline
- Fouls committed
- 501.55 per 90
- Was fouled
- 270.84 per 90
- Yellow cards
- 40.12 per 90
- Red cards
- 0
Detailed statistics
Every figure the competition reported for this season. Fields the source did not measure are left out rather than shown as zero.
Attacking
- Shots
- 301.68 per 90
- Shots on target
- 130.73 per 90
- Shooting accuracy
- 43%
- Shots blocked
- 30.17 per 90
- Key passes
- 221.23 per 90
- Chances created
- 20.11 per 90
- Big chances missed
- 30.17 per 90
- Hit woodwork
- 10.06 per 90
- Offsides
- 60.34 per 90
Passing and possession
- Touches
- 60333.81 per 90
- Accurate passes
- 25914.52 per 90
- Pass accuracy
- 78%
- Accurate long balls
- 40.22 per 90
- Accurate crosses
- 0
- Cross accuracy
- 0%
- Successful dribbles
- 150.84 per 90
- Dribble success
- 47%
- Passes in the opposition half
- 20111.27 per 90
- Ball carries
- 10.06 per 90
- Dispossessed
- 372.07 per 90
- Unsuccessful touches
- 563.14 per 90
- Possession lost
- 19911.16 per 90
Defending
- Tackles won
- 100.56 per 90
- Tackle success
- 48%
- Interceptions
- 60.34 per 90
- Clearances
- 120.67 per 90
- Blocks
- 10.06 per 90
- Ball recoveries
- 512.86 per 90
- Duels won
- 553.08 per 90
- Duel success
- 29%
- Aerial duels won
- 60.34 per 90
- Aerial success
- 16%
Discipline
- Fouls committed
- 372.07 per 90
- Was fouled
- 130.73 per 90
- Yellow cards
- 50.28 per 90
- Red cards
- 0
Detailed statistics
Every figure the competition reported for this season. Fields the source did not measure are left out rather than shown as zero.
Attacking
- Shots
- 241.40 per 90
- Shots on target
- 80.47 per 90
- Shooting accuracy
- 33%
- Shots blocked
- 80.47 per 90
- Key passes
- 181.05 per 90
- Chances created
- 10.06 per 90
- Big chances missed
- 30.18 per 90
- Offsides
- 130.76 per 90
Passing and possession
- Touches
- 53831.46 per 90
- Accurate passes
- 23313.63 per 90
- Pass accuracy
- 78%
- Accurate long balls
- 70.41 per 90
- Accurate crosses
- 10.06 per 90
- Cross accuracy
- 10%
- Successful dribbles
- 150.88 per 90
- Dribble success
- 56%
- Passes in the opposition half
- 18410.76 per 90
- Dispossessed
- 291.70 per 90
- Unsuccessful touches
- 633.68 per 90
- Possession lost
- 18410.76 per 90
Defending
- Tackles won
- 40.23 per 90
- Tackle success
- 44%
- Interceptions
- 30.18 per 90
- Clearances
- 60.35 per 90
- Blocks
- 30.18 per 90
- Ball recoveries
- 502.92 per 90
- Duels won
- 553.22 per 90
- Duel success
- 30%
- Aerial duels won
- 90.53 per 90
- Aerial success
- 14%
Discipline
- Fouls committed
- 181.05 per 90
- Was fouled
- 221.29 per 90
- Yellow cards
- 60.35 per 90
- Red cards
- 0
Detailed statistics
Every figure the competition reported for this season. Fields the source did not measure are left out rather than shown as zero.
Attacking
- Shots
- 81.12 per 90
- Shots on target
- 50.70 per 90
- Shooting accuracy
- 63%
- Shots blocked
- 10.14 per 90
- Key passes
- 70.98 per 90
- Chances created
- 10.14 per 90
- Big chances missed
- 10.14 per 90
- Offsides
- 70.98 per 90
Passing and possession
- Touches
- 19527.21 per 90
- Accurate passes
- 8612.00 per 90
- Pass accuracy
- 78%
- Accurate long balls
- 10.14 per 90
- Accurate crosses
- 10.14 per 90
- Cross accuracy
- 17%
- Successful dribbles
- 20.28 per 90
- Dribble success
- 40%
- Passes in the opposition half
- 628.65 per 90
- Dispossessed
- 111.53 per 90
- Unsuccessful touches
- 223.07 per 90
- Possession lost
- 679.35 per 90
Defending
- Tackles won
- 30.42 per 90
- Tackle success
- 60%
- Interceptions
- 0
- Clearances
- 50.70 per 90
- Blocks
- 10.14 per 90
- Ball recoveries
- 253.49 per 90
- Duels won
- 202.79 per 90
- Duel success
- 29%
- Aerial duels won
- 70.98 per 90
- Aerial success
- 23%
Discipline
- Fouls committed
- 101.40 per 90
- Was fouled
- 60.84 per 90
- Yellow cards
- 0
- Red cards
- 0
Detailed statistics
Every figure the competition reported for this season. Fields the source did not measure are left out rather than shown as zero.
Attacking
- Shots
- 0
- Shots on target
- 0
- Shots blocked
- 0
- Key passes
- 0
Passing and possession
- Touches
- 2123.63 per 90
- Accurate passes
- 1314.63 per 90
- Pass accuracy
- 93%
- Accurate long balls
- 0
- Accurate crosses
- 0
- Successful dribbles
- 0
- Passes in the opposition half
- 89.00 per 90
- Dispossessed
- 11.13 per 90
- Unsuccessful touches
- 22.25 per 90
- Possession lost
- 44.50 per 90
Defending
- Tackles won
- 0
- Tackle success
- 0%
- Interceptions
- 0
- Clearances
- 0
- Ball recoveries
- 0
- Duels won
- 33.38 per 90
- Duel success
- 38%
- Aerial duels won
- 11.13 per 90
- Aerial success
- 33%
Discipline
- Fouls committed
- 0
- Was fouled
- 11.13 per 90
- Yellow cards
- 0
- Red cards
- 0
Data updated 29 Sept 2026, 03:02 UTC