Illustrative case study

A fictional business. The figures are a modelled scenario, not a client result.

Coldwater Comfort HVAC franchise, 42 locations Toronto

Migrating 42 franchise sites into one without losing a single ranking

organic leads post-migration

Local Services · North America · 12-month engagement on the Signal plan

Drag the dial, or focus it and use the arrow keys.

Month 01 / 12 · Diagnose

Inventory 42 domains

Every franchise domain crawled side by side: 18,960 URLs, 6,800 near-duplicate service pages, three different CMSes and 3,120 crawl and redirect errors.

Crawl errors
3,120
Mobile INP
410ms
Sessions idx
100
Leads idx
100
Redirects mapped0 / 11,400

01The challenge

Forty-two thermostats, all set to compete with each other.

Every franchisee ran their own domain, splitting authority and creating duplicate service pages that cannibalised each other.

A homeowner in Mississauga searching for furnace repair saw three Coldwater franchises on page one, each with a thinner page than the last, and none in the top three. Links earned by head office never reached the franchises. Every new location launched with zero authority, and the plan to consolidate had stalled for two years on one fear: that moving 42 sites would wipe out the rankings the business ran on.

1DOMAIN42 FRANCHISE DOMAINS/locations/<city>/

02Diagnosis

Reading the estate: where the heat was coming from.

Technical

42

Domains splitting one brand

Separate hosts, three CMSes and 1,140 redirect chains of three hops or more. Crawl budget went to duplicates, not new pages.

Content

38

Sites chasing "furnace repair"

6,800 near-identical service pages. Franchises in the same metro outranked each other, so none held the top three.

Local

27%

Listings with mismatched NAP

Business Profiles pointed at retired domains or the wrong phone number; service areas overlapped between neighbouring franchises.

Performance

410ms

Mobile INP, poor

A chat widget, two booking scripts and 31 third-party tags blocked the main thread on every tap of "Book a technician".

03The strategy

Migrate once. Cool everything down.

Built on our Signal plan: technical foundations first, then templates that scale, with every change measured against a frozen pre-migration ranking baseline.

  1. 01

    Site migration

    One domain, /locations/<city>/ folders. A 11,400-row redirect ledger, page-level parity checks, staged DNS cutover and a 90-day log watch for stray 404s.

  2. 02

    Location page templating

    One template, 42 genuinely local pages: crew, service area, reviews, permits and rebates per city, with LocalBusiness and Service schema built in.

  3. 03

    Core Web Vitals

    Main-thread budget for every template: deferred chat, split booking bundle, tag audit. Mobile INP from 410ms to 140ms in field data.

  4. 04

    Internal linking

    Service hubs to locations, locations to nearest neighbours, breadcrumbs everywhere. Authority from the head office flows to every franchise.

04Month by month

Twelve months on the dial, from 3,120 errors to 18.

  1. Diagnose

    Inventory 42 domains

    Every franchise domain crawled side by side: 18,960 URLs, 6,800 near-duplicate service pages, three different CMSes and 3,120 crawl and redirect errors.

    errors 3,120 · INP 410ms

  2. Map

    The redirect ledger

    Each legacy URL scored by links, traffic and leads, then paired 1:1 with its future home. 3,800 rows signed off by the first eleven franchisees.

    errors 2,650 · INP 405ms

  3. Build

    One location template

    A single location-page template: local technicians, service-area map, LocalBusiness schema, reviews feed and booking module. Redirect ledger reaches 8,200 rows.

    errors 1,900 · INP 330ms

  4. Cool down

    INP on staging

    Chat widget deferred, booking script split, third-party tags halved. Mobile INP on staging falls to 210ms. All 11,400 redirects mapped and tested.

    errors 1,100 · INP 260ms

  5. Cutover

    Forty-two become one

    DNS switched over a single Sunday night in three waves. Tracked rankings dip just 1.8% in the first fortnight; 404s are caught and patched within hours.

    errors 640 · INP 190ms

  6. Stabilise

    Consolidation lands

    Google merges the old domains' signals. Cannibalised "furnace repair" pages collapse into one canonical service page per city.

    errors 310 · INP 175ms

  7. Connect

    Internal linking mesh

    Service hubs link to every location; each location links to its six nearest neighbours and its top four services. Orphan pages: zero.

    errors 180 · INP 165ms

  8. Expand

    Neighbourhood pages

    Templated pages for 64 high-demand neighbourhoods, each with genuinely local copy, technician bios and heat-pump rebate notes.

    errors 120 · INP 158ms

  9. Season

    Pre-winter push

    Furnace and boiler service pages refreshed ahead of heating season; FAQ schema and pricing guides added to the ten highest-volume services.

    errors 80 · INP 150ms

  10. Tune

    Field-data INP

    Real-user INP passes on 96% of mobile visits. Booking form interaction rebuilt to respond in a single frame.

    errors 50 · INP 145ms

  11. Compound

    Authority pooled

    Links once spread across 42 domains now point at one. Mid-sized suburbs start ranking on the strength of the whole network.

    errors 30 · INP 142ms

  12. Steady state

    Comfortably cool

    Organic sessions up 61% and organic leads up 73% against the pre-migration baseline, from one fast domain the whole franchise shares.

    errors 18 · INP 140ms

05Results

+73% organic leads post-migration, with the rankings carried across intact.

Modelled scenario for a fictional business — not a client result. Rankings and traffic are never guaranteed; see our Terms.

Redirects mapped
11,400
Ranking loss at cutover
<2%
0%5% tolerance10%
INP (mobile)
410ms → 140ms
Organic sessions
+61%
Organic index, month 1 = 100 Leads Sessions
CUTOVER100140180010203040506070809101112Leads 173Sessions 161

Tracked keywords · best position

Best ranking position across the Coldwater estate before migration, at cutover and at month 12
KeywordBeforeCutoverM12
furnace repair toronto 4.4k/mo782
emergency hvac brampton 1.3k/mo9101
ac installation mississauga 1.9k/mo11113
heat pump rebate ontario 6.6k/mo18174
ductless mini split vaughan 880/mo14153
boiler service oakville 720/mo662
furnace replacement cost 5.4k/mo23226
hvac maintenance plan 2.1k/mo31298

Get a plan like this

Running several sites, or planning a migration you cannot afford to get wrong? We map every URL before anything moves.