Case study · Build, SEO, Local
One brand site, 21 location pages, GBP at scale, and a review flow that finally compounds.
- Year
- 2026
- Engagement
- 14-week build, ongoing monthly management
- Outcome
- +312% organic, 21 location pages indexed
+312% organic, 21 location pages indexed
Headline metrics
Organic lift
+312%
12 months post-launch vs. legacy baseline
Locations indexed
21 / 21
All location pages indexed within 30 days
GBP actions
+180%
Calls, directions, and website clicks across all profiles
Average rating
4.7 stars
Network-wide uplift driven by post-visit review flow
Approach
What we did.
Discovery and brand consolidation brief
We started with a four-week discovery: stakeholder interviews across operations, marketing, and clinical leadership, plus a full audit of the legacy estate (six WordPress instances and two Wix sites). The output was a single positioning brief and an information architecture that treated the parent brand and 21 locations as one system, not 21 microsites.
Location page templating
We designed one location template that inherited brand-level content (services, philosophy, insurance) and overrode only the location-specific layer (NAP, hours, team, photography, directions, parking notes). That gave us 21 pages without 21 maintenance burdens, and let editorial updates ship globally in one PR.
Build on Next.js with Sanity
Built on Next.js 16 with Sanity as the CMS. Location data lives in a single structured schema, surfaced through static generation with on-demand revalidation when an operations lead edits hours or staff. Schema.org Dentist plus LocalBusiness markup is generated from the same source of truth, so structured data never drifts from the page.
Google Business Profile sync
All 21 GBP profiles were brought under a single management group, NAP normalized to match the new site exactly, categories tightened, services and attributes filled in, and photography refreshed. We wired the site's location data to act as the canonical source: if it changes on the site, the GBP update is queued the same day.
Review acquisition loop
Post-visit, the patient receives a one-tap review request via SMS routed through the practice management system. The flow filters dissatisfied responses to internal service recovery and routes happy patients to the correct GBP profile. Volume and quality both moved within 60 days.
Ongoing local ops
Monthly retainer covers GBP post cadence, citation hygiene, review monitoring, location-page content refreshes, and quarterly competitive sweeps per market. Operations leadership gets one consolidated monthly report covering all 21 markets, not 21 separate dashboards.
Scope of work
- Greenfield build
- Technical SEO
- Local SEO
- GBP at scale
- Review acquisition flow
Stack
Client read
“We had been told a 21-location rebuild would take a year and three vendors. They shipped it as one team, and the local rankings started moving inside two months.”
Operations Lead, multi-location dental group