Decatur bungalow owners rarely type the word Atlanta
People search the name of their own neighborhood, and the metro name mostly attracts shoppers who are nowhere near hiring anyone.
Ask a homeowner in Decatur where they live and you will not hear the word Atlanta. You will hear Decatur, or Oakhurst, or Kirkwood. Same in Marietta, Roswell and Johns Creek. Search behavior follows self-description, so your page structure should too.
Start with the places you serve, not the whole metro. Six to ten named suburbs, each with a real page: the housing stock you see there, the scopes you run most often, what tends to be behind the walls, three or four finished projects from that area. Permitting practice varies across Fulton, DeKalb, Cobb and Gwinnett, so say that plainly and point readers to their own local building department rather than stating rules you would have to keep updated.
The failure mode is obvious once you have seen it. Forty near identical pages with the city name swapped, no photos, no local detail, thin enough that Google treats the whole set as noise. Fewer pages with more in them beats a template every time.
Link them like a person would use them. A Sandy Springs page should point to the bath remodeling service page, to two Sandy Springs projects and to the cost page, because that is the actual path a reader takes.