Pierwsze zanotowane nazwy miejscowości pochodzą z bulli wrocławskiej z 1155, gdzie jest mowa o villa super vadum Zunigrod. Nazwę Smigrod notowano również w łacińskim dokumencie z 1228. Konstanty Damrot podaje również dwie kolejne nazwy wynotowane ze średniowiecznych dokumentów gdzie miejscowość wymieniona jest w 1245 Zmigrod oraz z 1358 Smigrod. Niemcy początkowo zgermanizowali nazwę na „Schmiegrode”, a później na „Trachenberg”. W roku 1613 śląski regionalista i historyk Mikołaj Henel z Prudnika wymienił miejscowość w swoim dziele o geografii Śląska pt. Silesiographia podając jej łacińską nazwę: Trachenberga.

Niemcy wywodzili nazwę miasta od średnio-wysoko-niem. Trache, od którego pochodzi niem. Drache, oznaczające smoka + berg = góra (częste w niemieckich nazwach miejscowych), dosłownie przetłumaczyć można by na smoczą górę powołując się na nazwę Trachenberg z (1322).