The challenge
Ridgeline's 40 locations all ran the same corporate template with the city name swapped — same hours copy, same generic photography, same three paragraphs about 'community.' Nine location pairs within the same metro were ranking for the same searches and splitting clicks between each other instead of converting them. Franchisees had no way to add real local content; the only people who could edit the site were two people at corporate, which made every local update a multi-week ticket.
What we did
Clustered locations before touching a page
We mapped every location against its actual search radius and found the nine cannibalizing pairs first — rebuilding blind would have recreated the same conflict in new copy. Two locations less than a mile apart were both losing to a nearby non-Ridgeline competitor because Google couldn't tell which one to show.
Split what should stay consistent from what shouldn't
Brand voice, core class offerings, and membership terms stayed templated. Hours, instructor bios, in-club amenities, and neighborhood-specific proof became genuinely location-specific fields, with the split made explicit in the CMS rather than left to whoever edited the page last.
Built a local-content intake franchisees would actually use
A five-field structured form replaced the two-person corporate bottleneck. A franchise owner submits local wins, staff changes, and seasonal promotions directly; corporate reviews for brand compliance but doesn't have to write the copy. Participation went from effectively zero to 34 of 40 locations submitting content in the first quarter.
Gave each location its own local schema and proof
Corporate-level Organization schema stayed shared; each location got its own LocalBusiness block with real, distinct reviews and amenities rather than inheriting the brand's. That alone resolved several of the cannibalization pairs without a single word of copy changing.
The result
Local pack visibility rose 184% across the network within nine months, with the nine previously-cannibalizing location pairs no longer competing with each other for the same queries. Organic lead volume across all 40 locations nearly doubled, and — the metric Ridgeline's VP of Franchise Development cared about most — franchisee participation in local content went from zero to 34 of 40 locations without adding headcount at corporate.
“Every agency before this one pitched us a better template. Digital Squad started by telling us our own locations were our biggest competitor in search, which was not what we expected to hear about our own website.”