The town is situated on the mountain spurs of the Bergische Land, between the Rhine, Ruhr and Wupper rivers.
The old town centre lies in the small valley of the Angerbach, a brook which rises nearby and flows through the town.