| Year | Won | Margin | Democratic | Republican | Total |
|---|---|---|---|---|---|
| 2024 | R | 5,237 | 7,769 | 13,207 | |
| 2020 | R | 5,148 | 7,683 | 13,051 | |
| 2016 | R | 4,202 | 7,226 | 12,225 | |
| 2012 | R | 4,760 | 7,299 | 12,318 | |
| 2008 | R | 5,164 | 7,088 | 12,406 | |
| 2004 | R | 4,254 | 7,115 | 11,484 | |
| 2000 | R | 4,348 | 6,188 | 10,770 | |
| 1996 | R | 4,282 | 4,936 | 10,079 | |
| 1992 | R | 4,028 | 5,143 | 10,669 | |
| 1988 | R | 3,760 | 5,694 | 9,527 | |
| 1984 | R | 3,347 | 6,419 | 9,810 | |
| 1980 | R | 4,091 | 4,862 | 9,389 | |
| 1976 | D | 4,404 | 4,196 | 8,690 | |
| 1972 | R | 1,744 | 5,649 | 7,553 | |
| 1968 | R | 1,369 | 3,955 | 6,846 | |
| 1964 | R | 636 | 1,206 | 1,843 | |
| 1960 | — | — | — | — | |
| 1956 | — | — | — | — | |
| 1952 | — | — | — | — | |
| 1948 | — | — | — | — | |
| 1944 | — | — | — | — | |
| 1940 | — | — | — | — | |
| 1936 | — | — | — | — | |
| 1932 | — | — | — | — | |
| 1928 | — | — | — | — | |
| 1924 | — | — | — | — | |
| 1920 | — | — | — | — | |
| 1916 | — | — | — | — | |
| 1912 | — | — | — | — | |
| 1908 | — | — | — | — | |
| 1904 | — | — | — | — | |
| 1900 | — | — | — | — | |
| 1896 | — | — | — | — | |
| 1892 | — | — | — | — | |
| 1888 | — | — | — | — | |
| 1884 | — | — | — | — | |
| 1880 | — | — | — | — | |
| 1876 | — | — | — | — |
Salem functions as an independent jurisdiction separate from Roanoke County, and its roughly 25,000 residents have returned Republican presidential margins near or above 20 points in recent cycles, reflecting a mid-size Appalachian urban core that trends reliably conservative.
The Republican margin in Salem city reached its widest at fifty-two points in 1972. The margin in 2024 was nineteen points, in line with the county's deep historical pattern.
Salem city's loyalty is rooted in its place. Median household income of $66,725, a 83% non-Hispanic-white share, and a population of 25,618 together describe a community whose political habits are deeply settled. The county's voting pattern over the last decade is most similar to that of Roanoke County and Comanche County.
