Giacomo Beretta muove i primi passi nell’US Bosto di Capolago, piccolo centro del Varesotto, per passare al Varese, squadra della sua città natale, nella quale resta fino all’estate del 2008 quando si trasferisce all’AlbinoLeffe. Nell’estate successiva passa in comproprietà dall’AlbinoLeffe al Milan e nella stagione 2009-2010 vince la Coppa Italia Primavera con il club rossonero. Nel 2010 metà cartellino viene ceduto al Genoa, ma il giocatore rimane al Milan, con cui esordisce in serie A il 1º maggio 2011 contro il Bologna. Nella stagione 2011-2012 gioca in Serie B all’Ascoli, con cui colleziona 15 presenze in campionato, prima di essere ceduto in gennaio alla Juve Stabia. Nella stagione 2012-2013 viene girato nuovamente in prestito al Pavia, in Lega Pro Prima Divisione. Mette a segno 10 gol in 29 presenze. Gioca poi in Lega Pro con il Lecce (con cui perde una finale play-off) e successivamente in Serie B con la Pro Vercelli (con cui mette insieme 57 presenze e 8 gol in due anni). Il 24 agosto 2016 il Milan lo cede in prestito all’Entella, sempre in B. A fine stagione ritorna al Milan. Il 26 luglio 2017 passa a titolo definitivo al Foggia prima di riapprodare nuovamente in quel di Ascoli durante l’attuale sessione di calciomercato estiva.