Castel San Pietro Terme sorge nella pianura bolognese, a 75 metri sul livello del mare, ai margini delle prime colline dell'Appennino. Il territorio, con 148,4 km², si estende tra la vetta del Monte Grande (607 m) e quella del Monte Calderaro (568 m), dove si trovano piccole cascate e sorgenti. La città, con 20.702 abitanti e una densità di 140 ab/km², è un crocevia tra l'area imolese e il contado bolognese.
Il reddito medio è di 27.596 €, il prezzo delle case di 1.687 €/m², mentre la copertura FTTH raggiunge il 56% delle abitazioni.
Il clima è temperato, con 14,3 °C di media annua e 776 mm di pioggia. Il patrimonio monumentale conta 47 edifici storici, e la città è riconosciuta come Cittaslow. L'età media è di 48,5 anni, l'indice di vecchiaia di 257, con un saldo naturale negativo (-152).