Hamilton is located in Marion county Alabama with a geographic area of 38.1 square miles. The total population in Hamilton is 6,662 with 47.9% male and 52.1% female. Children under age 5 represent 4.8% of the population, under age 18 equal 20.4% of the population and over age 65 is 19.9% of the population. The median household income is $38,613, per capita income is $19,576. There are a total of 2,699 housing units with 57.1% owner occupied. Education includes 30.6% of residents that are high school graduates and 12.2% with a bachelor's degree or higher. The average temperature in Hamilton in the summer is 77 degrees, and in the winter 43 degrees.