Город расположен на реке Ай (бассейн Камы), в 110 км к западу от областного центра г. Челябинска (160 км по железнодорожной линии) и в 1750 км к востоку от Москвы (1941 км по железной дороге). Через город проходит Южно-Уральская железная дорога.
В пределах городской черты Златоуст занимает 118,2 км², протяжённость с юга на север — 15,4 км, с запада на восток — 10,4 км.