Hamilton is a city in Hamilton County, Texas, United States. The population was 2,977 at the 2000 census. It is the county seat of Hamilton County.
According to the United States Census Bureau, the city has a total area of 2.9 square miles (7.5 km²), of which, 2.8 square miles (7.3 km²) of it is land and 0.1 square miles (0.1 km²) of it (1.73%) is water.
There were 1,227 households out of which 28.6% had children under the age of 18 living with them, 49.7% were married couples living together, 10.4% had a female householder with no husband present, and 36.5% were non-families. 34.2% of all households were made up of individuals and 21.2% had someone living alone who was 65 years of age or older. The average household size was 2.33 and the average family size was 3.00.
In the city the population was spread out with 25.8% under the age of 18, 6.3% from 18 to 24, 23.5% from 25 to 44, 20.8% from 45 to 64, and 23.6% who were 65 years of age or older. The median age was 41 years. For every 100 females there were 85.3 males. For every 100 females age 18 and over, there were 77.7 males.
The median income for a household in the city was $26,585, and the median income for a family was $38,702. Males had a median income of $27,074 versus $17,500 for females. The per capita income for the city was $15,012. About 12.2% of families and 15.9% of the population were below the poverty line, including 23.0% of those under age 18 and 16.1% of those age 65 or over.