Det avgörande målet kom efter en rejäl målvaktstavla av Marc-André ter Stegen.
Den tyske målvakten prickade inhopparen Alvaro Negredo med bollen när han skulle rensa undan och Cadizspelaren kunde enkelt sätta segermålet i tomt mål.
Även det första målet var en bjudning från Barcelona då mittbacken Oscar Mingueza nickade en hörna mot eget mål, ter Stegen fick en hand på bollen men kunde inte hindra Cadizforwarden Alvaro Gimenez från att stöta in 1–0.
Det var Barcelonas fjärde förlust för säsongen och Ronald Koemans och Henrik Larssons lag ligger sjua i tabellen, tolv poäng efter ledande Atletico Madrid.