Некоторые причины, по которым названия населённых пунктов пишутся слитно, а другие — через дефис:
- Слитное написание. 1 Населённые пункты пишутся в одно слово, если в словарной конструкции использованы части Верхне-, Ниже-, Дальне-, Ближе-, Старо-, Черно-, Бело-, Красно-. 1 Например: Нижнеангарск, Красноуральск. 1 Также слитно пишутся названия, заканчивающиеся на -град, -город, -бург, -дар: Ужгород, Екатеринбург, Краснодар. 1
- Написание через дефис. 1 Название населённых пунктов пишется через дефис, если:
- существительное предшествует прилагательному: Гусь-Хрустальный, Переславль-Залесский; 1
- название состоит из двух существительных или прилагательных: Орехово-Зуево, Архипо-Осиповка, Спасское-Лутовиново; 1
- в первой части названия стоят конструкции Верх-, Усть-, Соль-. 1 Например: Соль-Илецк, Усть-Абакан, Верх-Ирмень (но Сольвычегодск). 1
Также однословные названия населённых пунктов с первой частью Северо-, Южно-, Юго- пишутся неединообразно: одни из них по традиции принято писать слитно, другие — через дефис. 3