Hamilton is a city in Hamilton County in Central Texas. The population was 3,095 at the 2010 census. It is the county seat of Hamilton County.
Hamilton is located at 31°42′12″N 98°7′13″W / 31.70333°N 98.12028°W / 31.70333; -98.12028 (31.703274, -98.120359).
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.