According to the U.S. Census Bureau, the county has a total area of 732 square miles (1,900 km2), of which 697 square miles (1,810 km2) is land and 35 square miles (91 km2) (4.8%) is water.[6]
U.S. Decennial Census[7] 1790-1960[8] 1900-1990[9] 1990-2000[10] 2010[11]
As of the census[12] of 2000, there were 21,997 people, 9,133 households, and 6,246 families residing in the county. The population density was 31 people per square mile (12 people/km2). There were 10,261 housing units at an average density of 15 units per square mile (5.8/km2). The racial makeup of the county was 96.61% White, 1.02% Black or African American, 0.70% Native American, 0.25% Asian, 0.02% Pacific Islander, 0.34% from other races, and 1.05% from two or more races. Approximately 0.91% of the population were Hispanic or Latino of any race.
There were 9,133 households, out of which 28.40% had children under the age of 18 living with them, 55.30% were married couples living together, 9.30% had a female householder with no husband present, and 31.60% were non-families. 27.70% of all households were made up of individuals, and 13.30% had someone living alone who was 65 years of age or older. The average household size was 2.37 and the average family size was 2.86.
In the county, the population was spread out, with 23.70% under the age of 18, 7.80% from 18 to 24, 25.80% from 25 to 44, 24.40% from 45 to 64, and 18.30% who were 65 years of age or older. The median age was 40 years. For every 100 females there were 95.50 males. For every 100 females age 18 and over, there were 91.30 males.
The median income for a household in the county was $30,949, and the median income for a family was $36,328. Males had a median income of $27,932 versus $19,201 for females. The per capita income for the county was $16,468. About 11.40% of families and 14.30% of the population were below the poverty line, including 19.40% of those under age 18 and 13.90% of those age 65 or over.
The Democratic Party historically controls politics at the local level in Henry County. However, recent gains by Republicans have made Henry County a swing county.