At a glance
- Full name
- Edward Albert Francis
- Born
- 11 Sep 1999
- Age today
- 27
- Nationality
- England
Career by season
204 recorded appearances| Season | Competition | Team | Apps | Starts | Goals | Assists | Minutes | Cards |
|---|---|---|---|---|---|---|---|---|
| 26/27 | League Two | Rochdale AFC | 13 | 6 | 0 | 1 | 658 | 1 / 1 red |
| 26/27 | EFL Cup | Rochdale AFC | 2 | 1 | 0 | 0 | 118 | 0 |
| 25/26 | National League | Rochdale AFC | 12 | 1 | 0 | 1 | 181 | 0 |
| 25/26 | League One | Exeter City | 9 | 2 | 0 | 0 | 226 | 0 |
| 25/26 | FA Cup | Exeter City | 1 | 0 | 0 | 0 | 8 | 0 |
| 25/26 | EFL Cup | Exeter City | 1 | 1 | 0 | 0 | 90 | 1 |
| 24/25 | League One | Exeter City | 42 | 34 | 2 | 6 | 3,053 | 3 / 1 red |
| 24/25 | FA Cup | Exeter City | 4 | 2 | 0 | 0 | 245 | 1 |
| 23/24 | National League | Gateshead FC | 40 | 38 | 3 | 5 | 3,382 | 10 |
| 23/24 | International Friendly Games | England C | 1 | 1 | 0 | 0 | 90 | 0 |
| 23/24 | FA Cup | Gateshead FC | 1 | 1 | 0 | 0 | 90 | 0 |
| 22/23 | National League | Gateshead FC | 14 | 12 | 0 | 0 | 1,122 | 4 |
| 22/23 | National League | Notts County | 10 | 6 | 1 | 0 | 533 | 4 |
| 21/22 | National League | Notts County | 33 | 17 | 1 | 1 | 1,603 | 7 |
| 21/22 | FA Cup | Notts County | 1 | 0 | 0 | 0 | 1 | 0 |
| 20/21 | League Two | Harrogate Town | 20 | 15 | 1 | 0 | 1,345 | 2 |
Appearances in our supported competitions. Goals, assists and minutes come from match reports where we have them.
Match log
Newest first| Date | Competition | Match | Score | Minutes | Goals |
|---|---|---|---|---|---|
| 17 Mar 2026 | National League | Southend United v Rochdale AFCSubstitute, on 82′ | 3 – 2 | 8 | |
| 14 Mar 2026 | National League | Eastleigh FC v Rochdale AFCSubstitute, on 79′ | 1 – 3 | 11 | |
| 07 Mar 2026 | National League | Rochdale AFC v Boston UnitedSubstitute, on 90′ | 1 – 0 | 1 | |
| 03 Mar 2026 | National League | Rochdale AFC v Brackley Town | 3 – 2 | 63 | |
| 28 Feb 2026 | National League | Aldershot Town v Rochdale AFCSubstitute, on 66′ | 0 – 2 | 24 | |
| 21 Feb 2026 | National League | Rochdale AFC v Woking FCSubstitute, on 79′ | 3 – 0 | 11 | |
| 17 Feb 2026 | National League | Rochdale AFC v Scunthorpe UnitedSubstitute, on 90′ | 1 – 1 | 1 | |
| 10 Jan 2026 | FA Cup | Manchester City v Exeter CitySubstitute, on 82′ | 10 – 1 | 8 | |
| 29 Dec 2025 | League One | AFC Wimbledon v Exeter CitySubstitute, on 76′ | 0 – 1 | 14 | |
| 29 Nov 2025 | League One | Bradford City v Exeter CitySubstitute, on 80′ | 1 – 0 | 10 | |
| 08 Nov 2025 | League One | Exeter City v Wigan AthleticSubstitute, on 90′ | 1 – 1 | 1 | |
| 18 Oct 2025 | League One | Stockport County v Exeter CitySubstitute, on 86′ | 1 – 0 | 4 | |
| 27 Sep 2025 | League One | Exeter City v Huddersfield TownSubstitute, on 81′ | 0 – 1 | 9 | |
| 13 Sep 2025 | League One | Exeter City v Port Vale FCSubstitute, on 11′ | 0 – 2 | 79 | |
| 30 Aug 2025 | League One | Exeter City v Peterborough UnitedSubstitute, on 85′ | 3 – 0 | 5 | |
| 23 Aug 2025 | League One | Northampton Town v Exeter City | 2 – 0 | 45 | |
| 13 Aug 2025 | EFL Cup | Cheltenham Town v Exeter City | 2 – 0 | 90 | |
| 02 Aug 2025 | League One | Doncaster Rovers v Exeter City | 1 – 0 | 59 | |
| 03 May 2025 | League One | Mansfield Town v Exeter CitySubstitute, on 57′ | 3 – 0 | 33 | |
| 21 Apr 2025 | League One | Crawley Town v Exeter City | 3 – 1 | 90 |
Career transfers
15 recorded movesAll recorded career moves, newest first.
| Date | From | To | Move | Fee |
|---|---|---|---|---|
| 10 Feb 2026 | Exeter City | Rochdale AFC | Transfer | — |
| 04 Jul 2024 | Gateshead FC | Exeter City | Transfer | — |
| 01 Jul 2023 | Notts County | Gateshead FC | Transfer | Free |
| 31 May 2023 | Gateshead FC | Notts County | Loan return | |
| 03 Mar 2023 | Notts County | Gateshead FC | Loan | — |
| 20 Jul 2021 | Harrogate Town | Notts County | Transfer | Free |
| 15 Dec 2020 | Without club | Harrogate Town | Transfer | — |
| 05 Oct 2020 | Wolverhampton Wanderers U21 | Without club | Released | — |
| 31 Aug 2020 | Grasshopper Club Zurich | Wolverhampton Wanderers U21 | Loan return | |
| 18 Feb 2020 | Wolverhampton Wanderers U21 | Grasshopper Club Zurich | Loan | — |
| 18 Jan 2019 | Manchester City U21 | Wolverhampton Wanderers U21 | Transfer | — |
| 17 Jan 2019 | Almere City FC | Manchester City U21 | Loan return | |
| 04 Jul 2018 | Manchester City U21 | Almere City FC | Loan | — |
| 01 Jul 2017 | Manchester City U18 | Manchester City U21 | Internal move | — |
| 01 Jul 2016 | Manchester City Youth | Manchester City U18 | Internal move | — |
Contracts and market values are not available yet.