170 cm
Height
3
Shirt
28 yrs
14 Jul 1998
Scotland
Country
€580K
Transfer value
Left
Foot
LB
Left-Back
2026/27
15 games1
Goals
1
Assists
7.02
Rating
1121
Minutes
Skills & potential
Per 90
| Goals | 0.08 |
| Assists | 0.08 |
| xG | 0.14 |
| xA | 0.25 |
| Shots | 1.36 |
| Key passes | 1.2 |
Attacking totals
| Goals | 1 |
| Assists | 1 |
| xG | 1.8 |
| xA | 3.1 |
| Shots (on target) | 17 (3) |
| Key passes | 15 |
| Pass accuracy | 74.7% |
Defending totals
| Tackles won | 14 |
| Interceptions | 8 |
| Clearances | 43 |
| Duels won | 73 |
| Aerials won | 27 |
| Recoveries | 44 |
Shot map
18 shots · 1.83 xGGoalOn targetOff / blocked● size = xG
18
Shots
1
Goals
2
On target
1.83
Total xG
| Match | Min | G | A | Rtg |
|---|---|---|---|---|
| vs Burton Albion | 90' | 0 | 0 | 7.1 |
| @ AFC Wimbledon | 90' | 0 | 0 | 7.9 |
| @ Cambridge United | 90' | 0 | 0 | 6.9 |
| vs Notts County | 90' | 0 | 1 | 7.0 |
| vs Luton Town | 90' | 0 | 0 | 7.6 |
| vs Reading | 90' | 0 | 0 | 6.6 |
| @ Wigan Athletic | 90' | 0 | 0 | 7.5 |
| @ Leyton Orient | 90' | 1 | 0 | 6.8 |
| vs Sheffield Wednesday | 41' | 0 | 0 | 6.3 |
| @ Stockport County | 90' | 0 | 0 | 5.8 |
| vs Plymouth Argyle | 90' | 0 | 0 | 7.8 |
| @ Blackpool | 90' | 0 | 0 | 6.6 |
| vs Stevenage | 90' | 0 | 0 | 7.3 |
| vs Ipswich Town | 0' | 0 | 0 | — |
| @ Queens Park Rangers | 0' | 0 | 0 | — |
2023
| Competition | MP | G | A |
|---|---|---|---|
| 42 | 3 | 0 |
2020
| Competition | MP | G | A |
|---|---|---|---|
| 36 | 3 | 3 |
2021
| Competition | MP | G | A |
|---|---|---|---|
| 43 | 1 | 3 |
2022
| Competition | MP | G | A |
|---|---|---|---|
| 34 | 3 | 2 |
2024
| Competition | MP | G | A |
|---|---|---|---|
| 30 | 1 | 4 |
2025
| Competition | MP | G | A |
|---|---|---|---|
| 45 | 1 | 2 |
2026
| Competition | MP | G | A |
|---|---|---|---|
| 12 | 1 | 1 |
2026
| Competition | MP | G | A |
|---|---|---|---|
| 2 | 0 | 0 |
2020
| Competition | MP | G | A |
|---|---|---|---|
| 3 | 0 | 0 |
2021
| Competition | MP | G | A |
|---|---|---|---|
| 1 | 0 | 0 |
2022
| Competition | MP | G | A |
|---|---|---|---|
| 2 | 0 | 0 |
2023
| Competition | MP | G | A |
|---|---|---|---|
| 1 | 0 | 0 |
2024
| Competition | MP | G | A |
|---|---|---|---|
| 2 | 0 | 0 |
2025
| Competition | MP | G | A |
|---|---|---|---|
| 2 | 0 | 0 |
2021
| Competition | MP | G | A |
|---|---|---|---|
| 1 | 0 | 0 |
2022
| Competition | MP | G | A |
|---|---|---|---|
| 3 | 0 | 0 |
2023
| Competition | MP | G | A |
|---|---|---|---|
| 1 | 0 | 0 |
2024
| Competition | MP | G | A |
|---|---|---|---|
| 3 | 0 | 0 |
2025
| Competition | MP | G | A |
|---|---|---|---|
| 1 | 0 | 0 |
2026
| Competition | MP | G | A |
|---|---|---|---|
| 1 | 0 | 0 |
2014
| Competition | MP | G | A |
|---|---|---|---|
| 2 | 0 | 0 |
2015
| Competition | MP | G | A |
|---|---|---|---|
| 4 | 0 | 0 |
2017
| Competition | MP | G | A |
|---|---|---|---|
| 7 | 0 | 0 |
2017
| Competition | MP | G | A |
|---|---|---|---|
| 4 | 0 | 0 |
2018
| Competition | MP | G | A |
|---|---|---|---|
| 2 | 0 | 0 |
Build this page with the API
Every number here is public data. This is the exact sequence of calls to recreate this page — all free, just add your token.
-
GET
/api/v2/players/29968/Bio: position, age, nationality, foot, value, team. -
GET
/api/v2/players/29968/stats/Season stats + per-90 for the Overview & Stats tabs. -
GET
/api/v2/players/29968/career/Season-by-season totals — powers the Career tab. -
GET
/api/v2/players/29968/transfers/Transfer history for the Transfers tab. -
GET
/api/v2/events/{EVENT_ID}/stats/Per-shot xG shotmap — aggregate a player’s matches for the shot map. -
GET
/api/v2/players/29968/social/Highlight videos & news for the Overview feed.
Try step 1 right now
cURL
curl -H "Authorization: Token YOUR_KEY" https://sports.bzzoiro.com/api/v2/players/29968/
Free football tier — no subscription. Get a token →