The municipality of São João da Madeira is situated in the extreme north of the district of Aveiro, in the historical region of Beira Litoral, occupying a position central in the subregion of Entre Douro e Vouga. It is approximately 18 kilometres from the Portuguese Atlantic coast, 32 kilometres from the regional capital of Porto, 40 kilometres from Aveiro and 275 kilometres from the national capital. It straddles the a hilltop portion of the geomorphological massif that extends from 50 to 400 metres above sea level. It is crossed at its farthest limit by the River Ul, which runs north to south.