Zemianske Kostoľany ležia na ľavom brehu rieky Nitry, 5 km južne od Novák. Na západe je chotár obce ohraničený južnými výbežkami Malej Magury, na východe svahmi a hrebeňmi Vtáčnika. Cez obec preteká potok Lazný z Vtáčnika a ďalší potok z Lelovskej doliny. Oba potoky v chotári obce ústia do rieky Nitry.
Zemianske Kostoľany sa nachádzajú v okrese Prievidza v Trenčianskom kraji.
Obec Zemianske Kostoľany sa rozprestiera na rozlohe 12,77 km2. Katastrálne územie je rozdelené do dvoch častí obce : Zemianske Kostoľany a Dolné Lelovce. Vlastné štatistické zistenia, ktorých zdrojom boli daňové priznanie k dani z nehnuteľnosti v roku 2012, nám poskytli údaje o nasledovných rozlohách kultúr na našom území :
- orná pôda: 3,05 km2
- trvalé trávnaté porasty: 2,36 km2
- záhrady: 0,30 km2
- lesné pozemky: 2,53 km2
- zastavaná plocha a nádvorie: 1,43 km2
- stavebné pozemky: 0,02 km2
- ostatné plochy: 0,70 km2
