Situada a unos 28 km de la capital de provincia, Barcelona, y a 104 metros de altitud sobre el nivel del mar, el municipio se ubica en el litoral de la comarca barcelonesa del Maresme, entre las localidades de Vilasar de Mar y Mataró, aunque su núcleo urbano principal se encuentra a unos 2,5 km del mar, en un pequeño valle entre los montes de Burriac (donde se ubica el castillo del mismo nombre) y de Montcabrer.