Hamilton was the first county seat of Monroe County. In 1830, Monroe County was split to form Lowndes County to the south, and the county seat of Monroe County was moved north to Aberdeen.[4]
Hamilton is in southern Monroe County and is bordered to the west by New Hamilton. Aberdeen, the county seat, is 11 miles (18 km) to the northwest. According to the U.S. Census Bureau, the Hamilton CDP has an area of 3.2 square miles (8.3 km2), of which 0.02 square miles (0.05 km2), or 0.76%, are water.[1] Cedar Grove Creek forms the southeast edge of the community, while Wilson Creek runs just west of the town center. The two creeks join at the southwest corner of the community to form McKinley Creek, a short west-flowing tributary of the Tombigbee River.