SearchMaxx > Blog > Migration guides

Changing your domain without losing Google or AI search traffic

To change your domain without losing traffic, redirect every old URL to its exact new URL with a 301, tell Google with the Change of Address tool in Search Console, and keep the old domain and its redirects live for years. Then update every link you control and make sure AI crawlers can reach the new domain. Google says to expect ranking changes for a few weeks while it moves your pages over.

This checklist follows Google's site move documentation and adds the steps that matter for ChatGPT, Claude and Perplexity. The examples move Paidwick from paidwick.io to paidwick.com.

Before the move

1. List every old URL

Google suggests building your list from your sitemaps, server logs, analytics and the links report in Search Console. It also says to include images, videos, JavaScript and CSS files, not only pages.

Start with the sitemap:

curl -s https://paidwick.io/sitemap.xml \
  | grep -o '<loc>[^<]*' | sed 's/<loc>//' > old-urls.txt

Then add the landing pages from your analytics and the Pages tab of the Performance report in Search Console. Pages that get links but are missing from your sitemap are the ones people forget.

2. Build a one-to-one redirect map

If the paths stay the same, the map is one rule. If any paths change, write them out in a two-column file:

/pricing,/pricing
/blog/payroll-guide,/blog/payroll-guide
/features/contractors,/product/contractors
/plans,/pricing

Map each old URL to its closest new page. Google says "Don't redirect many old URLs to one irrelevant single URL destination." A page with no equivalent should return a 404 on the new site.

3. Change one thing at a time

Google advises against changing many things at once. If you also plan a redesign, a new CMS or new URL paths, do the domain move first or last, on its own. Otherwise you cannot tell which change cost you traffic. If you are also moving frameworks, see our guides to moving a React SPA to Next.js and moving off WordPress.

4. Prepare the new site

  • Canonicals. Google says "Each new URL should have a self-referencing" canonical tag. Search the codebase and CMS for the old domain, so no canonical still points at it.
  • hreflang. If you have language versions, update the annotations to the new URLs.
  • Sitemap. Generate a sitemap that lists only new-domain URLs.
  • robots.txt. Make sure it blocks only what you want blocked, and no leftover staging rule blocks everything.
  • Capacity. Google crawls more after a move. It asks you to make sure the new site "has sufficient capacity to handle the increased traffic from Google."

5. Verify both domains in Search Console

The Change of Address tool needs you to be an owner of both the old and new properties, with the same Google account (Google: Change of Address tool). Verify them now so move day is not blocked.

Move day

6. Turn on the redirects

Use server-side permanent redirects. Google names 301 and 308 as permanent and says they "don't cause a loss in PageRank." Send each URL straight to its final destination, with no chains.

If paths stay the same, one rule per host covers every page. In nginx:

server {
  listen 443 ssl;
  server_name paidwick.io www.paidwick.io;
  return 301 https://paidwick.com$request_uri;
}

Include every variant: www and bare, http and https. Each should reach the final URL in one hop.

If the new site runs on Next.js, a host-matched rule does the same job (Next.js: redirects):

// next.config.js
module.exports = {
  async redirects() {
    return [
      {
        source: '/features/contractors',
        has: [{ type: 'host', value: 'paidwick.io' }],
        destination: 'https://paidwick.com/product/contractors',
        permanent: true,
      },
      {
        source: '/:path*',
        has: [{ type: 'host', value: 'paidwick.io' }],
        destination: 'https://paidwick.com/:path*',
        permanent: true,
      },
    ]
  },
}

Put specific rules above the catch-all, so changed paths do not take two hops.

7. Check every redirect

while read -r url; do
  printf '%s ' "$url"
  curl -s -o /dev/null -w '%{http_code} %{redirect_url}\n' "$url"
done < old-urls.txt

Every line should show 301 or 308 and the right new URL. Then check that the destination itself returns 200:

curl -sIL https://paidwick.io/pricing | grep -iE '^(HTTP|location)'

You want one redirect, then a 200.

8. Submit the Change of Address

In Search Console, open the Change of Address tool for the old property. Google says the tool prioritizes crawling of the new site and forwards signals from the old one. Notes from Google's help page:

  • It works for moves between domains or subdomains. It is not for http to https or www to bare-domain changes.
  • It does not move subdomains under the domain, including www. Submit it for each variant you have verified.
  • The old homepage must 301 to the new homepage before you submit.
  • The move affects Search for 180 days.

9. Submit both sitemaps

Google says to submit the sitemap of old URLs and the sitemap of new URLs, and to watch both. Warnings that old-sitemap URLs redirect are expected. Once the move is underway, you can remove the old sitemap.

AI search items most checklists miss

Google has the Change of Address tool. ChatGPT, Claude and Perplexity have nothing like it. They find the new domain by following your redirects and links. These steps help them.

10. Let AI crawlers through on the new domain

Fetch your new homepage as each AI search crawler and look for a 200:

for ua in OAI-SearchBot Claude-SearchBot PerplexityBot; do
  printf '%s ' "$ua"
  curl -s -o /dev/null -w '%{http_code}\n' \
    -A "Mozilla/5.0 (compatible; $ua)" https://paidwick.com/
done

A new domain can sit behind different firewall or bot protection settings than the old one, and those can block crawlers the old setup let in. Our robots.txt guide explains which bots to allow.

11. Do not block crawlers on the old domain

A crawler that is blocked from fetching an old URL never sees its redirect. Leave the old domain's robots.txt open and its firewall rules permissive, so every bot can follow the 301s.

12. Expect AI crawlers to keep requesting old URLs

Vercel found that 34.82% of ChatGPT's crawler fetches and 34.16% of Claude's hit 404 pages, against 8.22% for Googlebot. ChatGPT's crawler also followed redirects on 14.36% of fetches (Vercel: The rise of the AI crawler). These crawlers request a lot of URLs they already know about. A missing redirect turns each of those into a dead end.

13. Rewrite llms.txt

If you publish an llms.txt file, every link in it points at the old domain. Rewrite them with the new domain and put the file at https://paidwick.com/llms.txt. A redirect from the old file is not enough, because the links inside it still point at old URLs.

14. Update your Organization structured data

Google recommends Organization markup on your home page. Its url property identifies your site, and sameAs lists "a page on another website with additional information about your organization" (Google: Organization structured data).

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Organization",
  "name": "Paidwick",
  "url": "https://paidwick.com",
  "logo": "https://paidwick.com/logo.png",
  "sameAs": [
    "https://www.linkedin.com/company/paidwick",
    "https://github.com/paidwick",
    "https://x.com/paidwick"
  ]
}
</script>

Then update those profiles to point back at the new domain, so both sides agree.

Update every link you control

Google asks you to update internal links, contact sites that link to you where you can, and update your profiles and ad campaigns. Work down this list:

  • Your own site. Internal links, canonicals, Open Graph URLs, image URLs, and links in your docs and help center.
  • Profiles. LinkedIn, X, GitHub, YouTube, Crunchbase, and app store listings.
  • Review sites and directories where you can edit your listing.
  • Partners and integrations. Marketplace listings and partner directories.
  • Ads, email signatures, and email templates.
  • Your top backlinks. Export them from Search Console's Links report and ask the sites that send you the most traffic to update the link.

Every link you change is one redirect a person or crawler no longer has to follow.

Keep the old domain for years

Google says to keep redirects "generally at least 1 year," and to consider keeping them longer. The Change of Address tool runs for 180 days. Old links on other sites and in old emails will keep pointing at the old domain long after that.

Renew the old domain for several years and turn on auto-renew. Keep a working certificate on it, because an https request needs a valid certificate before the server can send the redirect. If the old domain expires, someone else can buy it and get your old links.

What to watch for 90 days

Google says to "expect temporary fluctuation in site ranking during the move," and that "it can take a few weeks or more" before the new URLs replace the old ones. Larger sites take longer, because Googlebot has to visit every old and new URL at least once.

When What to check Where
Day 1 Every old URL returns 301 to the right page. New pages return 200. curl loop above
Day 1 Change of Address accepted. Both sitemaps submitted. Search Console
Week 1 New-domain pages appear in Page indexing. No surge of 404s or server errors. Search Console, server logs
Weeks 1 to 4 Old-domain clicks falling, new-domain clicks rising. Performance report, both properties
Weeks 1 to 4 AI crawlers fetching new URLs with 200s. Server logs, filtered by user agent
Month 2 Old URLs mostly gone from Google results. Remove the old sitemap. Search Console
Month 3 Ask ChatGPT, Claude and Perplexity about your product. Note which domain they cite. The assistants
Month 3 Total clicks back to the pre-move level. Both properties combined

Google says that ideally "the traffic on the old site will go down, while on the new site the traffic goes up." Compare the two properties added together against your pre-move numbers, not the new domain alone.

Common mistakes

  • Redirecting everything to the home page. Google warns against sending many old URLs to one irrelevant page.
  • Redirect chains. http://www.paidwick.io to https://www.paidwick.io to https://paidwick.com is two hops. Make it one.
  • Temporary redirects. A 302 or 307 tells Google the old URL is still the real one.
  • Canonicals still pointing at the old domain. The redirect says "go there" and the canonical says "come back."
  • Letting the old domain lapse. All your old links point at it.
  • Changing the domain, design and URLs in the same week.

Checklist

Item Done
Old URL list built from sitemap, analytics, logs and Search Console
One-to-one redirect map, no mass redirects to the home page
New site: self-referencing canonicals, hreflang, sitemap, robots.txt
Both domains verified in Search Console
301 or 308 redirects live for every host variant, one hop each
Every old URL tested with curl
Change of Address submitted for each verified variant
Old and new sitemaps submitted
AI search crawlers get 200 on the new domain
Old domain's robots.txt and firewall allow crawlers to see redirects
llms.txt rewritten with new URLs
Organization url and sameAs updated, profiles point back
Internal links, profiles, listings, ads and top backlinks updated
Old domain renewed for years, certificate valid, auto-renew on
90-day monitoring scheduled

Once the move is live, our free check shows whether each AI crawler can reach your new domain and how much of your page it can read. For the robots.txt rules to use on the new domain, see which AI crawlers to allow.

Want this done for your site?

Roshan, founder of SearchMaxx

Every day we make one change to your website that helps AI engines name you, and a person checks each one. Email me your website and the question your buyers ask AI.

Email Roshan to get started

More from the blog

  1. The SearchMaxx experiment, day 0: growing a new site in public

    Oct 18, 2026 - searchmaxx.link is a new domain. It has no Google traffic and no links. We will grow it with the same work we sell, and publish the numbers every week.

    searchmaxx.link/blog/searchmaxx-experiment-day-0 - Experiment - 2 min read

  2. Case study: 515 to 2,573 Google clicks a day in 12 weeks

    Oct 17, 2026 - Real Google Search Console numbers from an open-source AI company. In the top 1,000 queries, 66% of clicks came from searches without the brand name.

    searchmaxx.link/blog/case-study-5x-google-clicks - Case studies - 2 min read

  3. AI crawlers don't run JavaScript. Here's how to see what they see

    Oct 16, 2026 - ChatGPT's, Claude's and Perplexity's crawlers read the HTML your server sends and skip the JavaScript. If your words only appear after JavaScript runs, those engines see an empty page.

    searchmaxx.link/blog/ai-crawlers-javascript - Guides - 2 min read

  4. Which AI crawlers to allow in robots.txt, and which only collect training data

    Oct 15, 2026 - OpenAI, Anthropic, Perplexity and Google each run several bots. Some put you in AI search answers and some only collect training data. Here is which is which, and a robots.txt you can copy.

    searchmaxx.link/blog/ai-crawlers-robots-txt - Guides - 3 min read