The municipality comprises the towns of Oudenaken, Ruisbroek, Sint-Laureins-Berchem, Sint-Pieters-Leeuw proper and Vlezenbeek. On January 1 2006 Sint-Pieters-Leeuw had a total population of 30,846. The total area is 40.38 km² which gives a population density of 764 inhabitants per km².
The official language is Dutch (as everywhere in Flemish Region). Small local minorities consist of nationals from many European Union-countries, USA and Canada, and from French-speakers that came from Wallonia or Brussels.