The town of Bad Gandersheim lies between the Leine Uplands, Weser Uplands, and Harz Foreland in the valley of the Gande River, into which its tributary, the Eterna, empties within the town's territory.
The borough of Bad Gandersheim consists of the following subdivisions based on the surrounding villages:.