Город расположен в 125 км к юго-востоку от Москвы (по автодороге М5 — 126 км от МКАД и 132 по М4, в небольшой котловине на левом берегу Оки в районе Окско-Московской равнины, вытянут вдоль Оки на 6 км и окружён естественными хвойными и смешанными лесами.