Scenario · The bigger jobs
We're opening (or closing) a location
“We're opening a second office.” Or: “We've closed the [town] location.”
A location change touches more of a site than almost anything else its size — a page, the navigation, the footer, hard-coded phone numbers and addresses scattered everywhere — and a closure is the harder direction, because the work is subtraction, and subtraction is what gets missed. This finds every existing mention of a location across the whole site, including the ones buried in menus and machine-readable markup that a normal glance never sees, so a closed location doesn't stay half-listed and generating calls to a number nobody answers anymore.
What to ask for
See it work
A real run of Local SEO (NAP):
FAIL — 1 page(s)
[error] schema phone +1-555-0100 ≠ page phone +15559999 — inconsistent NAP confuses local ranking
[info] LocalBusiness schema has no openingHours / openingHoursSpecification — add hours for Google Business Profile parity
[info] LocalBusiness schema has no geo (latitude/longitude) — helps map placement
[info] no Google Maps embed on the page — an embedded map reinforces the location signal
report: ./out/local-seo-nap-local-seo-nap.html
json: ./out/local-seo-nap.json
text: ./out/local-seo-nap-local-seo-nap.txtThe captured report, exactly as a run hands it to a client —open the full report ↗
A location change touches more of a site than anything else of its size: a page, the navigation, the footer, the contact page, the schema, and every place a phone number or address was hard-coded. A closure is the harder direction, because the work is subtraction and subtraction is what gets missed.
- Get the full detail set, confirmed. Name as it should appear, street address, phone, hours. For a closure, the date it closed and where its patients are being directed.
- Map the site and find every existing mention. The URL list, then a site-wide search for the
location’s town, address and phone number with the raw pass on — location details live in footers,
schema blocks and
tel:links far more than in body copy, and none of those are visible text. - Audit the current consistency. The local SEO check reports where the practice’s name, address and phone disagree across the site. On a multi-location site this is almost always already inconsistent before you add anything.
- [manual] For an opening: build the location page and wire it in. Its own page with its own address, phone and hours, added to the navigation and the location list, with LocalBusiness structured data carrying the same details as the visible page.
- [manual] For a closure: remove the page, redirect it, and sweep the references. A 301 to the remaining-locations page rather than home, then remove the footer entry, the location-list item, the schema node and the map embed. A closed location still listed in the footer is the version of this ticket that generates a phone call to a disconnected number.
- Verify. Re-run the consistency check — one set of details per location, agreeing everywhere. Re-run the reference search for a closure: zero hits on both passes. Check the redirect resolves in one clean hop, and run the link check so a stale footer entry surfaces as a broken link.
- Check the structured data. The schema audit on each location page, confirming the machine-readable address and hours match the visible ones.
Closures are the dangerous half
An opening that is half-finished looks unfinished — a page missing from the menu is visible. A closure that is half-finished looks complete while still publishing an address patients will drive to and a number nobody answers. Step 2 and step 6 exist for that direction specifically.
What this does not cover
Everything outside the website. A location exists in the Business Profile, in directories, on the practice's stationery and in whatever booking system takes appointments, and none of that is reachable from here. This procedure covers the site's side: the page, the consistency of the details across it, the structured data, and — for a closure — the references that would otherwise go on advertising a place that has shut.