Saint-Nazaire liegt in der Landschaft Salanque zwischen Perpignan (etwa neun Kilometer westnordwestlich) und der Mittelmeerküste (etwa drei Kilometer östlich). Der Fluss Réart entspringt an der westlichen Gemeindegrenze. Im Osten liegt die Lagune Étang de Canet. Umgeben wird Saint-Nazaire von den Nachbargemeinden Canet-en-Roussillon im Norden und Osten, Alénya im Süden, Saleilles im Westen und Südwesten sowie Cabestany im Westen und Nordwesten.