Tanger est située dans la baie éponyme, ouverte sur l'extrémité occidentale du détroit de Gibraltar, à environ 15 kilomètres des côtes espagnoles. D'abord établie sur la colline de la kasbah, la ville s'est progressivement étendue sur les massifs la bordant à l'ouest en direction du cap Spartel (plateau du Marshan, Vieille Montagne), puis, au long de la plage, en direction du cap Malabata.