Latem 2005 Caracciolo za 8 milionów euro przeszedł do US Palermo. W jego barwach zadebiutował 28 sierpnia w zremisowanym 1:1 meczu z Parmą. W lidze zdobył 9 bramek, najwięcej w zespole, a jedną dołożył w rozgrywkach Pucharu UEFA. Z Palermo zajął 5. miejsce w lidze. W sezonie 2006/2007 Andrea spisywał się słabiej niż przed rokiem i tylko pięciokrotnie trafił do siatki rywali. Po sezonie, który Palermo znów zakończyło na 5. pozycji, został wypożyczony do Sampdorii, w której zastąpił odchodzącego do Udinese Calcio, Fabio Quagliarellę.
Na początku 2008 roku Caracciolo został graczem drugoligowej Brescii Calcio. W sezonie 2008/2009 strzelił w Serie B 15 goli.
Sezon Klub Kraj Rozgrywki Mecze Bramki 1998/99 AS Sancolombano Calcio Włochy Serie D 23 3 1999/00 AS Sancolombano Calcio Włochy Serie D 30 8 2000/01 Como Calcio Włochy Serie C1 0 0 2000/01 US Pro Vercelli Włochy Serie C2 10 0 2001/02 Brescia Calcio Włochy Serie A 7 2 2002/03 AC Perugia Włochy Serie A 22 2 2003/04 Brescia Calcio Włochy Serie A 31 11 2004/05 Brescia Calcio Włochy Serie A 34 12 2005/06 US Palermo Włochy Serie A 35 9 2006/07 US Palermo Włochy Serie A 27 5 2007/08 UC Sampdoria Włochy Serie A 12 1 2007/08 Brescia Calcio Włochy Serie B 15 7 2008/09 Brescia Calcio Włochy Serie B 31 15 2009/10 Brescia Calcio Włochy Serie B 35 24 2010/11 Brescia Calcio Włochy Serie A