| Loss | 0–1 | Mar 2008 | Turkey F2, Antalya | Futures | Clay | United Kingdom Edward Seator | Romania Andrei Mlendea Romania Gabriel Moraru | 3–6, 1–6 |
| Loss | 0–2 | May 2008 | Great Britain F7, Bournemouth | Futures | Clay | United Kingdom Edward Seator | United Kingdom Ken Skupski France Ludovic Walter | 6–7(2–7), 6–2, [6–10] |
| Win | 1–2 | May 2009 | Great Britain F5, Bournemouth | Futures | Clay | Republic of Ireland Colin O'Brien | United Kingdom Richard Gabb United Kingdom Ashley Hewitt | 6–3, 6–2 |
| Win | 2–2 | May 2009 | Great Britain F6, Edinburgh | Futures | Clay | United Kingdom Marcus Willis | United Kingdom Richard Gabb United Kingdom Ashley Hewitt | 6–7(3–7), 6–3, [14–12] |
| Loss | 2–3 | Aug 2009 | Belgium F1, Eupen | Futures | Clay | United Kingdom Maniel Bains | France Dorian Descloix France Maxime Teixeira | 6–7(1–7), 6–2, [5–10] |
| Loss | 2–4 | Sep 2009 | Portugal F4, Porto | Futures | Clay | United States Greg Ouellette | Spain Carlos Calderon-Rodriguez Spain Pedro Clar | 6–7(5–7), 3–6 |
| Loss | 2–5 | May 2010 | Italy F6, Vicenza | Futures | Clay | Denmark Frederik Nielsen | Italy Nicola Remedi Italy Andrea Stoppini | 2–6, 4–6 |
| Loss | 2–6 | Jan 2011 | USA F1, Plantation | Futures | Clay | United Kingdom Alexander Ward | Moldova Roman Borvanov United States Denis Zivkovic | 4–6, 4–6 |
| Win | 3–6 | May 2011 | Sweden F2, Båstad | Futures | Clay | Belgium Germain Gigounon | Sweden Carl Bergman Finland Timo Nieminen | 3–6, 7–6(7–2), [10–7] |
| Win | 4–6 | Oct 2011 | Sweden F6, Falun | Futures | Hard (i) | United Kingdom Oliver Golding | Sweden Pierre Bonfre Sweden Viktor Stjern | 7–6(7–2), 7–6(8–6) |
| Loss | 4–7 | Oct 2011 | Great Britain F17, Cardiff | Futures | Hard (i) | United Kingdom Daniel Cox | United Kingdom Oliver Golding United Kingdom Sean Thornley | 4–6, 4–6 |
| Win | 5–7 | May 2012 | Great Britain F8, Newcastle | Futures | Clay | United Kingdom Liam Broady | United Kingdom Jack Carpenter United Kingdom Ashley Hewitt | 7–6(8–6), 6–0 |
| Win | 6–7 | Jul 2012 | Belgium F2, Havré | Futures | Clay | United Kingdom James Feaver | United Kingdom Jack Carpenter Slovakia Michal Pazicky | 6–3, 6–7(5–7), [12–10] |
| Loss | 6–8 | Jul 2012 | Austria F3, Bad Waltersdorf | Futures | Clay | United Kingdom James Marsalek | Austria Maximilian Neuchrist Croatia Mate Pavić | 4–6, 3–6 |
| Win | 7–8 | Mar 2013 | Great Britain F8, Sunderland | Futures | Hard (i) | United Kingdom Alexander Ward | United Kingdom Lewis Burton United Kingdom Dan Evans | 7–5, 7–6(7–4) |
| Loss | 7–9 | Apr 2013 | France F8, Ajaccio | Futures | Clay | United Kingdom James Marsalek | Belgium Niels Desein Belgium Yannick Mertens | 2–6, 2–6 |
| Win | 8–9 | Aug 2013 | Belgium F10, Jupille-sur-Meuse | Futures | Clay | United Kingdom Ashley Hewitt | France Maxime Forcin France Romain Gaborieau | 6–1, 6–2 |
| Win | 9–9 | Oct 2013 | USA F27, Mansfield | Futures | Hard | United Kingdom Edward Corrie | United States Jean-Yves Aubone United States Kevin King | 6–3, 7–5 |
| Win | 10–9 | Nov 2013 | Champaign, US | Challenger | Hard (i) | United Kingdom Edward Corrie | United States Austin Krajicek United States Tennys Sandgren | 7–6(7–5), 0–6, [10–7] |
| Loss | 10–10 | Jan 2014 | Great Britain F1, Glasgow | Futures | Hard (i) | United Kingdom Edward Corrie | United Kingdom David Rice United Kingdom Sean Thornley | 3–6, 1–6 |
| Win | 11–10 | Feb 2014 | Great Britain F3, Sheffield | Futures | Hard (i) | United Kingdom Edward Corrie | United Kingdom David Rice United Kingdom Sean Thornley | 3–6, 6–2, [10–8] |
| Win | 12–10 | Feb 2014 | Great Britain F3, Wirral | Futures | Hard (i) | United Kingdom Edward Corrie | United Kingdom Luke Bambridge United Kingdom Ross Hutchins | 5–7, 7–6(8–6), [10–6] |
| Win | 13–10 | Mar 2014 | Canada F1, Gatineau | Futures | Hard (i) | United Kingdom Edward Corrie | Canada Kamil Pajkowski Canada Filip Peliwo | 7–6(7–4), 6–1 |
| Win | 14–10 | Mar 2014 | Canada F2, Sherbrooke | Futures | Hard (i) | United Kingdom Edward Corrie | Slovenia Tom Kočevar-Dešman Germany Torsten Wietoska | 3–6, 6–3, [10–1] |
| Win | 15–10 | Mar 2014 | Rimouski, Canada | Challenger | Hard (i) | United Kingdom Edward Corrie | Belgium Germain Gigounon Belgium Olivier Rochus | 6–2, 6–1 |
| Loss | 15–11 | Apr 2014 | USA F10, Harlingen | Futures | Hard | United Kingdom Edward Corrie | United States Evan King United States Devin McCarthy | 3–6, 6–7(2–7) |
| Win | 16–11 | Jul 2014 | Binghamton, US | Challenger | Hard | United Kingdom Daniel Cox | Romania Marius Copil Ukraine Sergiy Stakhovsky | 6–7(3–7), 6–2, [10–6] |
| Win | 17–11 | Mar 2015 | Canada F1, Gatineau | Futures | Hard (i) | Belgium Germain Gigounon | United States Kevin King South Africa Dean O'Brien | 6–4, 6–4 |
| Loss | 17–12 | Mar 2015 | Canada F2, Sherbrooke | Futures | Hard (i) | United Kingdom Edward Corrie | United States Kevin King South Africa Dean O'Brien | 4–6, 6–2, [10–5] |
| Win | 18–12 | May 2015 | Egypt F19, Sharm El Sheikh | Futures | Hard | United Kingdom Marcus Willis | Egypt Karim-Mohamed Maamoun Syria Issam Haitham Taweel | 6–4, 6–4 |
| Win | 19–12 | May 2015 | Egypt F20, Sharm El Sheikh | Futures | Hard | United Kingdom Marcus Willis | Egypt Karim-Mohamed Maamoum Syria Issam Haitham Taweel | 6–1, 6–3 |
| Win | 20–12 | Jul 2015 | Great Britain F6, Frinton | Futures | Grass | United Kingdom Marcus Willis | United Kingdom Evan Hoyt Australia Bradley Mousley | 6–4, 6–4 |
| Win | 21–12 | Feb 2016 | Great Britain F1, Glasgow | Futures | Hard (i) | United Kingdom David Rice | United Kingdom Scott Clayton United Kingdom Jonny O'Mara | 6–1, 6–4 |
| Win | 22–12 | Feb 2016 | Great Britain F3, Shrewsbury | Futures | Hard (i) | United Kingdom Edward Corrie | United Kingdom Jonathan Gray United Kingdom Stefan Sterland-Markovic | 6–1, 6–3 |