Brooks is located in southern Fayette County, 13 miles (21 km) south of Fayetteville, the county seat, 12 miles (19 km) southeast of Peachtree City, and 13 miles (21 km) west of Griffin. Brooks is 35 miles (56 km) south of downtown Atlanta. According to the United States Census Bureau, Brooks has a total area of 4.4 square miles (11.3 km2), of which 4.3 square miles (11.1 km2) is land and 0.1 square miles (0.2 km2), or 1.38%, is water.
As of the census of 2010, there were 524 people, 195 households, and 165 families residing in the town. The population density was 136.0 people per square mile (52.5/km2). There were 208 housing units at an average density of 51.2 per square mile (19.7/km2). The racial makeup of the town was 96.18% White, .57% African American, 0.18% Native American, .57% Asian, and 1.72% from two or more races. Hispanic or Latino of any race were 3.82% of the population.