De vlag van Zagreb toont op een blauw doek het wapen van Zagreb: een schild met daarop een kasteel met drie torens en een open poort tussen een halve maan en een ster. De vlag werd op 14 december1999 officieel aangenomen door het stadsbestuur van Zagreb.[1]
Het wapen stamt uit de 13e eeuw. Het kasteel moest uitdrukken dat de stad Zagreb bereid is zich te verdedigen tegen aanvallers, terwijl de open poorten moesten symboliseren dat Zagreb een vrije marktstad was, sinds Béla IV dat in 1292 verordonneerde. De halve maan en ster zijn twee oude Kroatische symbolen, die ook in het huidige wapen van Kroatië zijn terug te vinden.[2]
Het blauw van de vlag is de symbolische kleur van Zagreb, die ook op bijvoorbeeld trams en telefooncellen is terug te vinden.[2] In het straatbeeld zijn veel verticale varianten van de vlag te zien, waarbij de vlag een kwartslag is gedraaid, maar het schild wel recht geplaatst is.