It was the administrative seat of the district of the same name since 1949; prior to the occupation of Latvia, it was part of Abrene County.
A small wooden church and manor were constructed on the estate of a Polish noblewoman Konstancija Hilsena at the site ca.
When Latgale came under Russian rule in 1772, the estate was granted to the Yelagin family [ru] by Catherine II.
The village was separated from the estate in 1915, and Balvi received town rights in 1928, ten years after Latvia proclaimed its independence.
The retreating Germans set fire to Balvi in July 1944, and the town was rebuilt according to Soviet plans from 1945.