Website Hosting Migration SEO

Move a website to a new host, CDN, or DNS provider without changing URLs: preparation, cutover, validation, monitoring, and rollback.

First published: Jul 18, 2026 · Last updated: Jul 19, 2026 · Advanced
1 evidence signal on this page

A hosting migration changes the infrastructure behind a site while keeping its public URLs stable. Preserve the same content and SEO signals, lower DNS TTL ahead of the cutover, prove the new origin and CDN can serve users and verified crawlers, run old and new infrastructure in parallel, compare responses and rendered pages, monitor both sets of logs, and retire the old host only after its traffic reaches zero. Redirect maps and Change of Address are not part of a true same-URL hosting move.

TL;DR — Treat a same-URL hosting, CDN, or DNS migration as a response-parity and traffic-routing project. Inventory every hostname and dependency, lower DNS TTL before launch, configure the new origin and edge, validate certificates and security controls, load-test realistic crawlerA crawler — also called a spider or bot — is an automated program that fetches web pages, extracts their links, and queues new URLs to visit. Search engines use crawlers to discover and download content for their index. and user demand, and compare raw plus rendered responses. Dual-run old and new infrastructure through DNS propagation. Monitor both log streams, DNS answers, errors, latency, cache behavior, crawl activity, and Search ConsoleA free Google service that reports how a site performs in Google Search and surfaces problems with how Google crawls, indexes, and serves it. It's first-party data straight from Google — but you don't need it to appear in results.. Roll back by restoring the previous routing only when a pre-agreed infrastructure failure occurs.

Decide whether this is really a same-URL migration

A same-URL hosting migration changes infrastructure without changing the exact public URL string. The scheme, hostname, port, path, query handling, and trailing slash behavior remain stable.

Classify the project before planning it:

ChangeSame-URL hosting move?Additional migration work
New origin IP, same URLsYesResponse parity, DNS, capacity, logs
New CDN, same URLsYesEdge rules, cache, TLS, firewall, origin routing
New authoritative DNS providerUsuallyZone parity, delegation, DNSSEC, mail and service records
www.example.com to example.comNoURL mapping and permanent redirectsA 301 redirect is the HTTP status code for a permanent move: it tells browsers and search engines a URL has moved for good, and it's the strongest signal for consolidating a page's ranking signals onto the new URL. Google says permanent redirects don't cause a loss in PageRank.
HTTP to HTTPSHTTPS is the encrypted version of HTTP — it uses TLS to authenticate the server and protect data in transit between a browser and a website. Google announced it as a lightweight ranking signal in 2014 and today conditionally prefers HTTPS pages as canonical; Chrome marks plain HTTP pages 'Not Secure.'NoProtocol migration and per-URL redirectsA redirect sends browsers and crawlers from a requested URL to a different one. An HTTP redirect specifically is a 3xx status code paired with a Location header; meta refresh and JavaScript redirects achieve a similar navigation without being a 3xx response themselves. Permanent redirects (301/308) are Google's signal the target should be canonical; temporary ones (302/303/307) aren't.
Path or CMSA content management system (CMS) is software that lets users create, manage, and publish digital content — like blog posts and pages — without writing raw code. WordPress, Drupal, and Joomla are the most common open-source CMS platforms.-generated URL changesNoURL migration plus platform QA

Do not let a project manager label a URL change as “just hosting.” The deployment plan must include every migration type that actually ships.

Build the infrastructure inventory

Infrastructure inventory prevents the quiet dependencies from becoming launch-day surprises. Record:

  • all public hostnames, including assets, images, APIs, international hosts, and legacy aliases;
  • A, AAAA, CNAME, NS, SOA, CAA, MX, TXT, and relevant SRV records;
  • certificate issuers, validation methods, Subject Alternative Names, and expiry;
  • origin addresses, ports, health checks, load balancers, and failover behavior;
  • CDN cache keys, cache rules, redirectsA redirect sends browsers and crawlers from a requested URL to a different one. An HTTP redirect specifically is a 3xx status code paired with a Location header; meta refresh and JavaScript redirects achieve a similar navigation without being a 3xx response themselves. Permanent redirects (301/308) are Google's signal the target should be canonical; temporary ones (302/303/307) aren't., transforms, workers, and purge methods;
  • WAF, bot, rate-limit, geoGenerative Engine Optimization (GEO) is the practice of optimizing content and brand presence so AI-powered search engines and assistants — Google AI Overviews, ChatGPT, Perplexity — cite, recommend, or mention you when generating answers. Google's position is that it's still SEO., authentication, and IP allow/deny rules;
  • response headers, compressionCompression (HTTP content encoding) shrinks text-based responses — HTML, CSS, JS, JSON, SVG, XML sitemaps — before they're sent over the network, using an algorithm like Gzip, Brotli, or Zstd, so the browser or crawler downloads fewer bytes. It's not a ranking factor, but it speeds up page loads and helps pages stay under crawler fetch limits., cookie behavior, and security headers;
  • log destinations, retention, sampling, fields, and time zones;
  • Search ConsoleGoogle's free tool for monitoring crawling, indexing, and search performance. and analytics verification methods;
  • third-party callbacks, webhooks, payment flows, feeds, and allowlisted IPs.

DNS review must include non-web records. Breaking MX, SPF, DKIM, DMARC, or service records may not directly change rankings, but it can break the business you were trying to protect.

Establish a response-parity baseline

Response parity means comparing the old and new systems for the same requested URL, not merely checking that both return 200.

Capture a representative set across templates and behaviors:

  • status and redirect chainA → B → C instead of A → C. Each hop loses link equity and adds latency.;
  • final URL and protocol negotiation;
  • title, canonical, robots directives, hreflangHreflang is an annotation (in HTML, HTTP headers, or XML sitemaps) that tells search engines which language and optional region a page targets, and which alternate versions exist. It only works when every page in the cluster references all the others., and structured dataStructured data is a standardized way of labeling page content (using the schema.org vocabulary in JSON-LD, Microdata, or RDFa) so search engines can understand its meaning. It's not a direct ranking factor — its value is rich results and entity understanding.;
  • raw HTML and browser-rendered main content;
  • Content-Type, Cache-Control, Vary, compressionCompression (HTTP content encoding) shrinks text-based responses — HTML, CSS, JS, JSON, SVG, XML sitemaps — before they're sent over the network, using an algorithm like Gzip, Brotli, or Zstd, so the browser or crawler downloads fewer bytes. It's not a ranking factor, but it speeds up page loads and helps pages stay under crawler fetch limits., and security headers;
  • images, fonts, JavaScript, CSS, PDFs, and media assets;
  • cookies and logged-in or personalized variants;
  • mobile and desktop behavior;
  • latency, time to first byte, and error rate.

Use the Staging vs. Production SEO Diff for paired page checks. A full crawlerA crawler — also called a spider or bot — is an automated program that fetches web pages, extracts their links, and queues new URLs to visit. Search engines use crawlers to discover and download content for their index. and scripted request suite should cover the larger inventory.

Prepare the new origin

Origin preparation starts with content and configuration parity. Copy current content, templates, media, robots rules, redirects, error handling, and verification files. Freeze or synchronize writes so the new database does not launch stale.

Test the origin directly through a controlled hostname, a local hosts-file override, or provider-specific preview mechanism. The test must preserve the production Host header because virtual hosts, application routing, certificates, canonicals, and absolute links often depend on it.

The new origin must also handle the post-cutover load. Warm the application and database, confirm connection pools and autoscaling, and load-test uncached demand. CDN cache misses can concentrate traffic at the origin immediately after launch.

Configure the CDN as a separate system

CDN migration changes more than geography. Compare the old and new edge behavior explicitly:

  • cache key composition, including query strings, cookies, headers, and device variants;
  • cacheable status codes and file types;
  • browser TTL, edge TTL, stale serving, revalidation, and origin shielding;
  • redirects, rewrites, header transforms, and edge functions;
  • cache bypass rules for accounts, carts, search, and personalized pages;
  • compression and image optimization;
  • purge scope and propagation;
  • WAF, bot management, rate limiting, and origin protection.

Cloudflare’s current documentation, for example, notes that its default caching may respect origin Cache-Control headers but can be overridden by edge rules. It also provides targeted or full purges to force fresh origin fetches. The exact behavior is vendor-specific, so export and compare configuration rather than assuming equivalent labels mean equivalent results. See Cloudflare’s cache documentation.

Treat cache parity as content parity

Cache configuration can serve the wrong page correctly and quickly. Test anonymous, authenticated, localized, mobile, and query-string variants. A cache key that omits a meaningful cookie or header can leak personalized content. A cache key that includes every tracking parameter can fragment the cache and overload the origin.

Purge or pre-warm critical assets and pages according to the launch plan. Do not blindly purge everything during peak traffic unless the origin has been tested for the resulting miss storm.

Validate TLS from user to edge and edge to origin

TLS validation has two legs when a CDN terminates HTTPSHTTPS is the encrypted version of HTTP — it uses TLS to authenticate the server and protect data in transit between a browser and a website. Google announced it as a lightweight ranking signal in 2014 and today conditionally prefers HTTPS pages as canonical; Chrome marks plain HTTP pages 'Not Secure.': browser to CDN and CDN to origin. Confirm hostname coverage, complete certificate chains, modern protocol support, renewal, and strict origin validation.

Origin-only certificates may not be publicly trusted. Cloudflare warns that its Origin CA certificates can produce browser trust errors if proxying is disabled or paused. That matters during rollback: a DNS-only fallback to an origin using an edge-only trust model may fail for users. See Cloudflare Origin CA guidance.

Test every public hostname, including wildcard assumptions and rarely used asset or regional hosts. A valid apex certificate does not prove every subdomain is covered.

Lower DNS TTL before the move

TTL planning starts before cutover. Google recommends lowering the relevant TTL to a conservative low value, such as a few hours, at least one week before the move. A DNS provider may impose different minimums; proxied records may also have fixed values.

Cloudflare’s TTL documentation explains the basic tradeoff: longer values increase cache reuse, while shorter values allow record changes to take effect sooner. Record the original TTL and schedule its restoration only after the new infrastructure is stable.

DNS changes can be non-atomic across distributed systems. Change as little as possible during the cutover, verify answers from several public resolvers, and keep the old destination available while cached answers remain valid.

Verify crawler access and security controls

Security parity is not rule-count parity. A WAF copied from another provider can challenge or block crawlers, strip query parameters, rewrite responses, or rate-limit high-volume crawlingCrawling is how search engines use automated bots (like Googlebot and Bingbot) to discover URLs and download pages. A page has to be crawlable to be indexed, but crawling on its own isn't a ranking factor. differently.

Google’s hosting guide says to ensure firewalls and denial-of-service protection do not block GooglebotGooglebot is Google's web crawler — the software that fetches pages so Google can index and rank them. It comes in two variants, Googlebot Smartphone (primary, under mobile-first indexing) and Googlebot Desktop, and runs an evergreen Chromium renderer. from DNS or hosting servers. Verify Googlebot using Google’s documented verification methods, not a user-agent string alone.

Test both ordinary crawler behavior and legitimate bursts. Avoid broad allowlisting that disables protection for spoofed user agentsA user agent is the HTTP request header a client (browser, crawler, or bot) sends to identify itself. For crawlers, a short user-agent token — a substring of that string — is what robots.txt rules actually target.. Preserve security logs so blocked requests can be distinguished from origin failures.

Plan the dual run

Dual running means both old and new infrastructure can serve correct production responses during propagation. The old environment must keep receiving content or data changes that affect the site. Otherwise users routed by cached DNS answers may see stale inventories, broken sessions, or outdated pages.

Pick a synchronization strategy:

  • one read/write database shared by both stacks;
  • replicated data with an understood lag and conflict policy;
  • a controlled content freeze during cutover;
  • one-way event replication for orders, forms, or user writes.

Session state, uploads, cache invalidations, and background jobs need the same decision. “Both servers are on” is not a dual-run plan if their state diverges.

Execute the cutover

Hosting cutover should be deliberately boring:

  1. Stop unrelated deployments and confirm the change window.
  2. Run the final parity, certificate, capacity, and backup checks.
  3. Remove temporary crawl or access blocks from the new production path.
  4. Change only the planned DNS or CDN routing records.
  5. Confirm expected answers from multiple resolvers.
  6. Request protected pages through the public route as a user and crawler.
  7. Confirm logs are arriving from edge, new origin, and old origin.
  8. Watch errors, latency, cache misses, origin load, and conversions.

Do not use Google’s Change of Address toolA setting in Google Search Console that tells Google you've moved your whole site to a new domain or subdomain. It's a supporting signal for a domain migration — the 301 redirects do the real work of transferring rankings. for a host-only move. No public URL has changed, so there is no address change to report.

Monitor the evidence that proves the move

Infrastructure monitoring should separate old and new traffic. Use a deployment marker and compare the same time-of-week baseline where seasonality matters.

Watch:

  • DNS answers and resolver propagation;
  • old-host and new-host requests by user and verified crawler;
  • edge and origin status-code distribution;
  • TLS, connection, timeout, and application errors;
  • latency percentiles and uncached origin response time;
  • cache hit ratio and origin request volume;
  • Googlebot requests, Crawl Stats, Page IndexingStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed., and representative URL Inspection;
  • synthetic checks across regions and networks;
  • analytics, conversions, and critical business transactions.

Google says a temporary Googlebot crawl-rate drop immediately after a hosting change can be normal, followed by an increase over the next few days. Anchor any decision to accessibility and error evidence, not that expected pattern alone.

Define rollback before launch

Rollback returns routing to a known-good infrastructure state. It is not a vague promise to “switch DNS back.” Document:

  • the exact records, routes, and configurations to restore;
  • who can authorize and execute the reversal;
  • how changed content, sessions, forms, orders, and uploads will reconcile;
  • whether the old certificates and dependencies remain valid;
  • cache purge steps on both routes;
  • the failure thresholds that trigger rollback;
  • the maximum safe decision time.

Rollback triggers should be observable: sustained availability failures, material conversion breakage, widespread wrong content, certificate failures, crawler blocks, or capacity collapse that cannot be corrected within the window. A temporary crawl rate fluctuation by itself is not a rollback trigger.

Retire the old infrastructure from logs, not a calendar

Old-host retirement happens after logs show that users and crawlers no longer reach it and all dependent services have moved. Google recommends shutting down the old host after its traffic reaches zero.

Retain configuration exports, logs, and rollback artifactsClaude's feature for generating and publishing interactive mini-apps from chat. according to business requirements. Restore DNS TTL to the intended steady-state value after stability is proven. Remove temporary firewall exceptions and duplicate scheduled jobs so the migration does not leave a permanent maintenance mess.

Add an expert note

Pin an expert quote

New person? Create their unclaimed profile at /admin/experts/ → Pin a quote first.