Platform migration data study
SEO migration case study: what a 300-URL WordPress to static HTML move showed in Search Console
Most migration write-ups skip the uncomfortable middle of a replatforming: the weeks when the new build is live, every sitemap URL returns HTTP 200, and two-thirds of the expanded site is still waiting for Googlebot to index it. Here are the exact crawl, redirect, and Search Console URL Inspection numbers from our own move off WordPress to a static Astro build, audited November 7 to 8, 2026.
Written by Hamza Rivera. Last reviewed
Hamza works in SEO and GEO/AEO. He writes the Passieon guides and checklists and does the SEO work for the businesses Passieon serves.
Short answer: In our November 2026 platform migration audit of 300 sitemap URLs and 47 legacy service paths moved from WordPress to static HTML, Search Console URL Inspection recorded 105 URLs submitted and indexed, 97 discovered and not yet indexed, 97 unknown to Google, and 5 legacy 301 redirects pointing at a generic hub instead of the matching service page. Mapping every old URL to its specific equivalent and returning 410 Gone on retired paths prevented redirect chains and soft 404 errors.
1. Scope of the platform migration and crawl baseline
On September 18, 2026, passieon.com moved its DNS zone to Cloudflare and replaced a legacy WordPress installation with a pre-rendered static Astro build. On November 7 and November 8, 2026, we ran a full Screaming Frog crawl, a Search Console URL Inspection API check across every URL in the XML sitemap, and a manual redirect verification across 47 legacy and current service URLs.
Planning a platform or domain move of your own? Review our SEO migration services, follow our step-by-step SEO migration checklist, or build your server rules in the free redirect map generator.
| Technical dimension | Measured figure | Audit verification source (Nov 7 to 8, 2026) |
|---|---|---|
| XML sitemap and indexable HTML pages | 300 URLs (100% returning HTTP 200, self-canonical, zero noindex in sitemap) | Screaming Frog crawl and live sitemap check (Nov 7, 2026) |
| Maximum click depth from homepage | 2 clicks maximum (core service pages sit 1 click from / with 600 to 1,600 internal inlinks) | Screaming Frog internal link graph (Nov 7, 2026) |
| Origin server response time (TTFB) | 329 ms to 660 ms across 9 core service and hub pages | Live HTTP response timing check (Nov 8, 2026) |
Sitemap URLs carrying lastmod initially | 33 of 300 URLs (11.0%) before automated content-hash date tracking was enabled across all built pages | Sitemap XML audit (Nov 8, 2026) |
| Legacy and current service paths inspected | 47 service URLs plus retired commerce/account endpoints and blog slugs | Chrome live fetch and Search Console URL Inspection API (Nov 8, 2026) |
2. Search Console URL Inspection breakdown across all 300 sitemap URLs
A clean crawl does not mean Google has indexed the new architecture. When a site moves platforms and expands its service and location coverage at the same time, Google prioritizes recrawling known URLs with external links before discovering newly added paths. Here is the exact Search Console URL Inspection breakdown across all 300 sitemap URLs on November 8, 2026:
| Search Console URL Inspection status | URL count | Share of 300 URLs | Representative URLs in group (Nov 8, 2026) |
|---|---|---|---|
| Submitted and indexed | 105 | 35.0% | /, /seo-services/, /local-seo-services/, /seo-for-law-firms/, /seo-for-dentists/, /healthcare-seo-services/, /contact/ |
| Discovered, currently not indexed | 97 | 32.3% | /seo-for-hvac/, /ai-seo-services/, /seo-for-therapists/, /website-redesign-services/, and 37 of the 53 city pages |
| URL is unknown to Google | 97 | 32.3% | /white-label-seo/, /web-design-services/, /seo-for-plumbers/, /small-business-seo-services/, /case-studies/ |
| Crawled, currently not indexed | 1 | 0.3% | /salon-web-design/ |
What this means for site moves: Having 195 of 300 pages unindexed seven weeks after a DNS and platform switch was not caused by a robots.txt block or a stray noindex tag (only 1 URL had been crawled and not indexed). Instead, 194 URLs had not been crawled yet because only 33 sitemap entries carried lastmod timestamps and several high-priority service pages lacked contextual body-copy links from the 105 already-indexed pages.
3. Legacy URL redirect audit: 1-to-1 301s, hub mismatches, and 410 Gone
According to Google Search Central (Site moves with URL changes, updated August 20, 2026, read November 9, 2026), every old URL should redirect directly to its specific new equivalent using a permanent redirect (301 or 308), while permanently retired pages with no equivalent should return 404 or 410.
When we audited our own legacy WordPress paths on November 8, 2026, they fell into three distinct categories:
| Redirect category | Legacy WordPress paths | HTTP status & target | Audit finding & action (Nov 8, 2026) |
|---|---|---|---|
| Clean 1-to-1 permanent redirects (kept) | /lawyer-services/, /on-page-seo1/, /dentists-seo-service/ (22 RD), /foursquare-seo-service/ (27 RD), /electrician-seo-services/, /shopify-seo-service/, /real-estate-services/, /carpenter-seo-services/ | 301 to matching new service URL (e.g. /seo-for-law-firms/, /on-page-seo-services/, /seo-for-dentists/) | Verified in Search Console URL Inspection: Google crawled /lawyer-services/ on Nov 5 and /on-page-seo1/ on Nov 7, recording "Page with redirect" and switching the canonical to the new URL. |
| Overlap cluster consolidation (kept) | /insurance-agent-seo-services/, /mortgage-broker-seo-services/, /seo-for-insurance-companies/; plus /white-label-local-seo/ | 301 to /seo-for-insurance-agencies/ and /white-label-seo/ | Consolidated competing pages targeting the same head terms into one canonical service page per topic. |
| 5 hub-mismatch redirects (flagged for retargeting) | /plumber-seo-service/, /hvac-seo-service/, /web-development-pricing/, /wordpress-website-design-service/, /topical-map-seo/ | Initially 301 to /seo-for-home-services/, /seo-services/, or /seo-audit-services/ | Redirected too broadly when dedicated pages (/seo-for-plumbers/, /seo-for-hvac/, /web-design-services/, /wordpress-development-services/, /seo-content-writing-services/) existed. |
| Retired WordPress endpoints (410 Gone) | /checkout/, /store/, /my-account/, /link-building/ | 410 Gone (no redirect destination) | No equivalent page exists on the new site. Returning 410 avoids soft 404 warnings and tells Googlebot to drop the retired paths. |
4. Where real search impressions survived during the transition
In our live Search Console Search Analytics pull on November 9, 2026 (covering October 10 to November 7, 2026), we filtered out stale pre-migration spam residue to see which business pages held genuine search impressions across the move:
| Page path | 28-day impressions | Average position | Migration lesson |
|---|---|---|---|
| /blog/beginners-guide-to-white-label-local-seo/ | 3,629 | 79.0 | Consolidated from a duplicate non-blog slug via 301; preserved query breadth across white label local terms. |
| /seo-migration-services/ | 1,801 | 85.0 | Earned impressions on "migration seo services" (128) and "saas seo migration services" (45) once dedicated service copy launched. |
| /blog/seo-contract-template/ | 969 | 70.0 | Retained steady informational impressions through the template URL match. |
| /seo-migration-checklist/ | 854 | 90.0 | Pairs with /seo-migration-services/ to cover informational and commercial migration intent separately. |
| /seo-for-insurance-agencies/ | 680 | 88.0 | Benefited from 301 consolidation of three overlapping insurance and mortgage pages. |
5. Five rules to apply before your next site move
- Audit every redirect target against the final sitemap, not just the launch day hubs. If you build specific child pages after the initial redirect map is written, update the legacy
301rules so they point to the exact child page rather than the parent hub. - Put accurate
lastmoddates on every sitemap URL from day one. When only 33 of 300 URLs carriedlastmod, Google had no freshness signal to prioritize crawling the other 267 pages. - Link unindexed money pages from the body copy of already-indexed pages. Navigation menus alone did not get 194 new URLs crawled quickly; contextual body links from the 105 indexed pages give Googlebot a direct crawl path.
- Use
410 Gonefor retired cart, checkout, and account paths. Redirecting old WooCommerce or plugin endpoints to the homepage creates soft 404 noise in Search Console. - Keep every
301and308rule live for at least 1 year. Google Search Central (developers.google.com/search/docs/crawling-indexing/site-move-with-url-changes, read Nov 9, 2026) explicitly recommends keeping permanent redirects in place for at least a year while long-tail URLs recrawl.
Method and sources: All figures in this study come from Passieon’s own Google Search Console property (https://passieon.com/, Search Analytics API for Aug 7 to Nov 5, 2026 and Oct 10 to Nov 7, 2026; URL Inspection API across 300 sitemap URLs on Nov 8, 2026), Screaming Frog crawl (Nov 7, 2026), Google Search Central documentation (Site moves with URL changes, updated Aug 20, 2026; HTTP status codes, updated Feb 4, 2026; read Nov 9, 2026), and IETF RFC 9110 (read Nov 9, 2026). For client Search Console performance across other engagements, see client results.
Questions on our SEO migration data
Why were 65% of the 300 sitemap URLs not indexed immediately after the platform migration?
In our November 8, 2026 Search Console URL Inspection check across all 300 sitemap URLs, 105 URLs (35.0%) were "Submitted and indexed", 97 (32.3%) were "Discovered, currently not indexed", 97 (32.3%) were "URL is unknown to Google", and 1 (0.3%) was "Crawled, currently not indexed". Only 33 of the 300 sitemap URLs (11.0%) initially carried a lastmod date, and newly launched service and city pages had few internal body-copy links from already-indexed pages. Google Search Central (How to move a site, developers.google.com/search/docs/crawling-indexing/site-move-with-url-changes, updated Aug 20, 2026, read Nov 9, 2026) notes that Googlebot must visit every old and new URL at least once before a move completes.
What happens when a legacy service URL redirects to a broad hub instead of its matching service page?
During our November 8, 2026 redirect audit of 47 legacy and current service URLs, 5 legacy URLs (/plumber-seo-service/, /hvac-seo-service/, /web-development-pricing/, /wordpress-website-design-service/, and /topical-map-seo/) returned a 301 redirect to a general parent hub instead of the specific service page (/seo-for-plumbers/, /seo-for-hvac/, /web-design-services/, /wordpress-development-services/, and /seo-content-writing-services/). Google Search Central warns that redirecting specific pages to a generic destination loses topical alignment and can be treated as a soft 404.
When did we use HTTP 410 Gone instead of a 301 redirect during the WordPress migration?
We returned HTTP 410 Gone on discontinued e-commerce and account endpoints inherited from the old WordPress installation (/checkout/, /store/, /my-account/, and /link-building/) that had no equivalent page on the new static site. Under IETF RFC 9110 Section 15.5.11 (read Nov 9, 2026) and Google Search Central HTTP status code documentation (updated Feb 4, 2026, read Nov 9, 2026), returning 404 or 410 on permanently retired pages with no replacement is cleaner than redirecting them to an unrelated page.
How fast did Google Search Console record the 301 redirects on legacy URLs?
On pages that Google regularly recrawled, Search Console URL Inspection recorded the 301 redirect and updated the Google-selected canonical quickly. For example, /lawyer-services/ (crawled November 5, 2026) and /on-page-seo1/ (crawled November 7, 2026) both showed "Page with redirect" with Google’s canonical updated to /seo-for-law-firms/ and /on-page-seo-services/. Less frequently crawled pages take longer, which is why Google recommends keeping migration redirects active for at least 1 year.
Book a call with us
A 30-minute call in your working hours. Tell us what you sell and where, and we will tell you what we would do first and what it involves. Prefer email? Send your website through the form and the Passieon Team will reply by email.