Donati speelde van 2003 tot 2008 in de jeugd van Lucchese, waarna Internazionale hem in juli 2008 overnam. Hiervoor nam hij deel aan enkele voorbereidingswedstrijden op het seizoen 2009/10. Donati debuteerde op 16 december 2009 in het eerste elftal van Inter in een wedstrijd in het toernooi om de Coppa Italia, tegen AS Livorno. De club verhuurde hem op 25 juni 2010 aan het dan net gepromoveerde US Lecce, waarvoor hij debuteerde in de Serie A. Het seizoen erna werd hij uitgeleend aan Calcio Padova, waarmee hij uitkwam in de Serie B. Donati debuteerde voor Padova tegen UC Sampdoria. Inter verhuurde hem tijdens het seizoen 2012/13 weer, nu aan US Grosseto FC, op dat moment ook actief in de Serie B.
Inter bereikte op 21 juni 2013 een akkoord met Bayer Leverkusen over een transfersom van drie miljoen euro om Donati definitief over te nemen. De Italiaan tekende vervolgens een vierjarig contract bij Die Werkself, waar hij de naar Real Madrid teruggekeerde Daniel Carvajal moest doen vergeten. Na het seizoen 2013/14, waarin hij in 19 competitiewedstrijd een plaats in het basiselftal kreeg, verloor Donati in de twee daaropvolgende jaargangen zijn plek in de selectie. In januari 2016 tekende hij een contract voor drie seizoenen bij Mainz 05.