Город расположен в двадцати пяти километрах к юго-востоку от Новороссийска, у подножия западной части горного хребта Маркотх, на побережье Геленджикской бухты Чёрного моря. Вход в бухту, ширина которого приблизительно равняется морской миле, расположен между двумя мысами: северный называется Тонким мысом, а южный Толстым, поскольку у южного мыса высокий и обрывистый берег.
В подчинении городской администрации также находится обширная территория между Новороссийском и Джубгой, включающая четыре сельских округа и следующие населённые пункты |