The city initially consisted of a 40-acre (16 ha) plot that included the courthouse and jail.
State Route 99, which intersects US 64 in eastern Waynesboro, connects the city with Hohenwald to the northeast.
Hurricane Creek, which approaches from the southeast, empties into the Green River just north of the city.
Much of the forest northwest of Waynesboro is part of the Eagle Creek Wildlife Management Area.
According to the United States Census Bureau, the city has a total area of 2.5 square miles (6.5 km2), all of it land.
As of the 2020 United States census, there were 2,317 people, 937 households, and 655 families residing in the city.