Hampton is located in Franklin county Iowa with a geographic area of 4.4 square miles. The total population in Hampton is 4,212 with 45.4% male and 54.6% female. Children under age 5 represent 5.1% of the population, under age 18 equal 26.6% of the population and over age 65 is 23.7% of the population. The median household income is $42,238, per capita income is $25,903. There are a total of 1,741 housing units with 69.7% owner occupied. Education includes 30.3% of residents that are high school graduates and 18.8% with a bachelor's degree or higher. The average temperature in Hampton in the summer is 70 degrees, and in the winter 23 degrees.