| Result | W–L | Date | Tournament | Tier | Surface | Partner | Opponents | Score |
|---|
| Win | 1–0 | Jul 2004 | Denmark F3,Lyngby | Futures | Clay | Bart Beks | Iouri Barkov
Juho Paukku | 6–2, 6–1 |
| Loss | 1–1 | Aug 2004 | Italy F18,Foligno | Futures | Clay | Ismar Gorčić | Stefano Mocci
Giancarlo Petrazzuolo | 6–4, 6–7(6–8), 5–7 |
| Win | 2–1 | Sep 2004 | Sweden F2,Gothenburg | Futures | Hard | Fabio Colangelo | Ervin Eleskovic
Pablo Figueroa | 7–6(7–3), 6–1 |
| Loss | 2–2 | Mar 2005 | Italy F5,Catania | Futures | Clay | Yordan Kanev | Flavio Cipolla
Francesco Piccari | 3–6, 4–6 |
| Win | 3–2 | May 2005 | Italy F11,Valdengo | Futures | Clay | Marco Crugnola | Mattia Livraghi
Giuseppe Menga | 6–2, 6–1 |
| Win | 4–2 | Nov 2005 | USA F29,Honolulu | Futures | Hard | Marco Crugnola | Brendan Evans
Pete Stroer | 1–6, 6–3, 7–6(7–4) |
| Win | 5–2 | Jun 2006 | Italy F18,Bassano | Futures | Clay | Fabio Colangelo | Andrey Golubev
Denis Istomin | 6–4, 6–4 |
| Win | 6–2 | Jul 2006 | Italy F20,Castelfranco | Futures | Clay | Alberto Giraudo | Matteo Galli
Marco Gualdi | 6–3, 7–6(7–4) |
| Win | 7–2 | May 2007 | USA F10,Orange Park | Futures | Clay | Adriano Biasella | Colin Ebelthite
Clinton Thomson | 4–6, 6–3, 7–6(7–5) |
| Win | 8–2 | Aug 2008 | Lithuania F1,Vilnius | Futures | Clay | Uros Vico | Tim Goransson
Thomas Kromann | 6–2, 6–3 |
| Loss | 8–3 | Aug 2008 | Lithuania F2,Vilnius | Futures | Clay | Laurent Bondaz | Fabio Colangelo
Uros Vico | 2–6, 4–6 |
| Loss | 8–4 | Jan 2009 | USA F2,Hollywood | Futures | Clay | Mattia Livraghi | Grigor Dimitrov
Todor Enev | 1–6, 2–6 |
| Loss | 8–5 | Mar 2009 | Spain F10,Barcelona | Futures | Clay | Mattia Livraghi | Marc Fornell Mestres
Gerard Granollers Pujol | 4–6, 6–3, [5–10] |
| Loss | 8–6 | May 2009 | USA F9,Vero Beach | Futures | Clay | Andrea Falgheri | Treat Huey
Gregory Ouellette | 2–6, 2–6 |
| Win | 9–6 | Jul 2009 | San Benedetto, Italy | Challenger | Clay | Cristian Villagrán | Niels Desein
Stéphane Robert | 7–6(7–3), 1–6, [10–6] |
| Loss | 9–7 | Aug 2009 | Italy F21,La Spezia | Futures | Clay | Davide Della Tommasina | Claudio Grassi
Walter Trusendi | 2–6, 6–4, [7–10] |
| Win | 10–7 | Sep 2009 | Italy F27,Siena | Futures | Clay | Matteo Volante | Manuel Jorquera
Mikhail Vasiliev | 6–3, 6–4 |
| Loss | 10–8 | Oct 2009 | Italy F30,Quartu Sant'Elena | Futures | Hard | Uros Vico | Oscar Burrieza-Lopez
Javier Martí | 5–7, 4–6 |
| Win | 11–8 | Oct 2009 | Italy F31,Napoli | Futures | Hard | Matteo Volante | Claudio Grassi
Luca Vanni | 6–4, 1–6, [10–6] |
| Win | 12–8 | Jan 2010 | USA F1,Plantation | Futures | Clay | Deniss Pavlovs | Marcus Fugate
Timothy Neilly | 6–2, 6–2 |
| Win | 13–8 | Jan 2010 | USA F2,Hollywood | Futures | Clay | Matteo Viola | Arnau Brugués Davi
Víctor Estrella Burgos | 6–7(1–7), 6–1, [10–7] |
| Loss | 13–9 | Jan 2010 | USA F3,Tamarac | Futures | Clay | Matteo Viola | Catalin-Ionut Gard
Christian Guevara | 6–2, 4–6, [6–10] |
| Loss | 13–10 | Jun 2010 | Italy F11,Bergamo | Futures | Clay | Matteo Volante | Alessandro Giannessi
Frederik Nielsen | 4–6, 6–7(3–7) |
| Win | 14–10 | Jul 2010 | Italy F17,Fano | Futures | Clay | Claudio Grassi | Alexandros Jakupovic
Max Raditschnigg | 6–3, 7–5 |
| Win | 15–10 | Jul 2011 | Italy F19,Fano | Futures | Clay | Luca Vanni | César Ramírez
Nima Roshan | 6–7(2–7), 6–3, [10–6] |
| Loss | 15–11 | Aug 2011 | Trani, Italy | Challenger | Clay | Giulio Di Meo | Jorge Aguilar
Andrés Molteni | 4–6, 4–6 |
| Win | 16–11 | Aug 2011 | Italy F22,Appiano | Futures | Clay | Alessandro Giannessi | Andrés Molteni
Marco Trungelliti | 6–2, 6–0 |
| Win | 17–11 | Aug 2011 | San Sebastián, Spain | Challenger | Clay | Simone Vagnozzi | Daniel Gimeno Traver
Israel Sevilla | 6–3, 6–4 |
| Win | 18–11 | Sep 2011 | Todi, Italy | Challenger | Clay | Luca Vanni | Martin Fischer
Alessandro Motti | 6–4, 1–6, [11–9] |
| Loss | 18–12 | Jun 2012 | Monza, Italy | Challenger | Clay | Teymuraz Gabashvili | Andrey Golubev
Yuri Schukin | 6–7(4–7), 7–5, [7–10] |
| Win | 19–12 | Jun 2012 | Italy F14,Busto Arsizio | Futures | Clay | Walter Trusendi | Antonio Comporto
Boris Pashanski | 6–3, 6–3 |
| Loss | 19–13 | Jul 2012 | San Benedetto, Italy | Challenger | Clay | Gianluca Naso | Brydan Klein
Dane Propoggia | 6–3, 4–6, [10–12] |
| Win | 20–13 | Jul 2012 | Orbetello, Italy | Challenger | Clay | Dane Propoggia | Alessio di Mauro
Simone Vagnozzi | 6–3, 6–2 |
| Loss | 20–14 | Aug 2012 | San Marino, San Marino | Challenger | Clay | Matteo Viola | Lukáš Dlouhý
Michal Mertiňák | 6–2, 6–7(3–7), [9–11] |
| Win | 21–14 | Aug 2012 | Segovia, Spain | Challenger | Hard | Florin Mergea | Konstantin Kravchuk
Nikolaus Moser | 6–2, 6–3 |
| Loss | 21–15 | Apr 2013 | Barranquilla, Colombia | Challenger | Clay | Fabiano de Paula | Facundo Bagnis
Federico Delbonis | 3–6, 5–7 |
| Win | 22–15 | May 2013 | Napoli, Italy | Challenger | Clay | Potito Starace | Andrey Golubev
Alessandro Giannessi | 6–1, 6–3 |
| Loss | 22–16 | Sep 2013 | Como, Italy | Challenger | Clay | Marco Crugnola | Rameez Junaid
Igor Zelenay | 5–7, 6–7(2–7) |