Град Димитровград налази се на 463 м надморске висине, 43°01' сгш. и 22°45' игд. на крајњем југоистоку Републике Србије, у горњем току реке Нишаве, на око 90 км од Ниша и око 60 км од Софије, главног града Републике Бугарске. Територијално припада пиротском округу и удаљен је око 20 км источно од седишта округа. По попису из 2002. г. цела општина има 11748 становника, а у самом граду живи 6968 становника. Већину становништва чине припадници бугарске националне мањине.