For years a site migration had two jobs, keeping the rankings and keeping the traffic. It has a third job now, and it's the one you're least likely to notice going wrong. According to Ahrefs, only 38% of AI Overview citations came from top-10 organic results as of March 2026, down from 76% in July 2025, so a botched move can wipe out a citation while your rank holds steady. AI crawlers also behave in ways the old checklists never covered.
The good part is that almost every fix is mechanical. Once you know where to look, the AEO layer adds about a day of work to a project that was going to take weeks anyway. What follows is the checklist we run on our own migrations, updated with what actually broke sites in 2025 and 2026.
Why the AEO layer matters now
Ahrefs' 863K-SERP analysis gives me the number I'd use to justify treating AI citations as their own migration KPI, because that slide from 76% to 38% took eight months and the two systems are still drifting apart. BrightEdge's 2025 migration guidance follows the same logic and sets two separate targets: retain at least 95% of AI citations and 90% of organic traffic within 60 days of migration. I'd track both.
The cost of getting it wrong is documented, too. DigitalApplied's analysis of 892 migrations found an average recovery time of 523 days, and 17% of the sites still hadn't recovered after 1,000 days. That's about a year and a half for a typical recovery, and one site in six never gets there.
Google isn't immune either. In May, Glenn Gabe caught it botching the migration of its own Nest community:
It's not often you get to see a Google site migration. Google moved the Nest community to its own support system. How? Every page now uses a meta refresh redirect to the homepage of the new support area. Oof. 313K urls indexed. 🤦♂️ https://t.co/eBdifTrHjS
Glenn Gabe@glenngabeMay 13, 2026That was 313,000 URLs sent through meta-refresh redirects to a hub page where they needed 1:1 server-side 301s. It's the mistake that wipes out AI citations, ranking equity and traffic in one go, and it comes from shipping a "good enough" redirect strategy, so don't ship one.
Step 1: pre-migration baseline
Before anything moves, snapshot the numbers you'll compare against after launch:
| Metric | How to capture it |
|---|---|
| Organic traffic | 90-day window, split by the top 20 landing pages |
| Keyword rankings | Top 100 tracked keywords |
| Indexed page count | Search Console plus the site: operator |
| AI citation count | Top 30 buyer prompts sampled across ChatGPT, Perplexity and Google AI Mode |
| Valid-schema page count | Rich Results Test or Screaming Frog's schema report |
| Referring-domain count | Ahrefs or Semrush |
| Existing redirect chains | Any URL that needs more than one hop today |
Most teams skip the citation baseline, and it's the one you'll want in week two when a prompt stops citing you. Sample at least 30 prompts, or 100+ if you have the tooling.
Step 2: URL mapping
Every old URL needs an explicit destination, and there are three kinds. Content with a direct equivalent gets a 1:1 server-side 301 or 308. Merged content can be consolidated into a category page, though I'd use that sparingly, and retired content gets a 410 Gone. Don't 301 dead pages to your homepage, because that's the move that ate 313K URLs at Nest.
Chains deserve more attention than most guides give them. Aim for zero URLs needing more than one redirect hop after the migration. If earlier migrations left 301 chains layered on each other, flatten them at the source by pointing the original rule straight at the final destination.
Glenn Gabe also flagged a domain-variant requirement that became explicit in Google's June 17, 2026 documentation update:
A very interesting change in the documentation. Especially since many site owners don't even have those properties set up in GSC. I always recommend having them set up for several reasons. Now Google is underscoring another reason, for domain name changes. I've seen some strange
Glenn Gabe@glenngabeJun 18, 2026The updated site-move guidance now asks for a Change of Address request for every subdomain variant, www and non-www included. So if example.com, www.example.com and other subdomains sit in your Search Console footprint, each one needs its own verified property and its own filing. Skip one and Google's signals-forwarding pipeline treats that variant as a separate migration that never officially happened.
Step 3: redirect implementation for AI crawlers
This is the part traditional migration checklists leave out, because AI crawlers differ from Googlebot in three ways that matter here.
Hop tolerance comes first. In CaptainDNS's May 2026 testing, GPTBot, ClaudeBot and PerplexityBot silently abandoned URLs after roughly 5 hops. The real-time search variants, OAI-SearchBot and Claude-SearchBot, gave up after about 3, while Googlebot's documented tolerance is 10. A site already carrying 2-3 chained redirects that adds one more for the migration crosses the AI threshold without ever getting near Google's.
JavaScript is the next difference. GPTBot and ClaudeBot don't execute it, so any JavaScript redirect is invisible to them, whether it's window.location, a meta refresh with a delay or a client-side redirect in your framework. A server-side 301 in your web server or CDN layer is the only option that works.
Then there's redirect type. Google's docs separate permanent redirects (301/308) from temporary ones (302/307), and third-party testing suggests AI crawlers follow the same convention with less tolerance for ambiguity. Use 301 or 308 for migration redirects and never 302.
The vendors document their own bots. OpenAI's page covers GPTBot, OAI-SearchBot and ChatGPT-User, with separate user-agents and IP JSONs. Anthropic documented ClaudeBot, Claude-User and Claude-SearchBot in February 2026, and Perplexity's crawler docs separate PerplexityBot, which handles search, from Perplexity-User, which handles fetches a user starts. Update robots.txt on both domains at least 24 hours before cutover, since that's the propagation window.

Your competitors are getting cited by AI. You're not.
Every day without citation tracking is a day your competitors pull ahead in ChatGPT, Perplexity, and Claude.
Step 4: schema and entity migration
AI citations live in the entity graph, and a migration is the easiest time to break it.
Start with Organization schema on every page of the new domain: its url, logo and sameAs array all need the new domain. Update any sameAs entries still pointing at your old LinkedIn and Crunchbase URLs, do the same for X, YouTube and GitHub, and point each of those profiles back at the new domain. Every /author/[slug] page needs the same swap in its ProfilePage schema, sameAs and external profile links.
Indexables are where migrations really go wrong. Yoast caches them with canonicals pointing at whatever domain was live when they were built, so indexables built on staging ship pointing at staging.example.com after cutover. Yoast has a specific tool for rebuilding them: run it after cutover, then audit every canonical tag on the new site before you flip DNS.
Finally, make sure the JSON-LD is rendered on the server. Schema injected on the client may not be seen on the first crawl pass, and most AI training crawlers don't render JavaScript at all. Confirm it ships in the initial HTML response with curl -sL https://newdomain.com/ | grep application/ld+json.
Step 5: consolidation opportunities
A migration is also the natural moment to pay down architecture debt you've been living with.
The big one is subdomain content that belongs in a subfolder. SEO Engico's small-sample audit of 13 clients found subfolder content pulling 2-5x more AI citations than subdomain content over 90 days. The mechanism is entity binding. Content on the main domain inherits the brand's entity signals, and a subdomain fragments them again, so if your docs, blog or help center lives on a subdomain, move it now.
Slugs are the opposite case. Search Engine Journal's guidance is direct about it: don't restructure your entire URL architecture for marginal AI retrieval gains. Preserve the slug structure wherever you can, especially on high-citation URLs, and save URL redesigns for when you're redesigning the CMS anyway.
Then settle www versus non-www. Pick one and redirect the other, register both as GSC properties and file Change of Address on both, which Google's June 2026 update made non-optional.
Step 6: post-migration monitoring
You catch citation problems in the first 60 days, and that means checking at least weekly.
Citation share on the 30 baseline prompts matters most. A prompt that used to cite you and stops after week two usually means a redirect chain problem or a 404 you missed, so investigate right away. Alongside it, watch the GSC coverage report for new URLs indexing and any spike in "Crawled - currently not indexed." Screaming Frog or Sitebulb can confirm no redirect path exceeds 2 hops, and the Rich Results Test on your top 20 pages shows whether schema still validates with the new URLs.
Perplexity makes a handy early signal because it re-indexes fastest of the AI engines. If you're still cited there after week 3 but not in ChatGPT, ChatGPT's retrieval hasn't caught up yet.
A February 2026 post on r/TechSEO shows what happens when nobody is watching:
Domain migration disaster — 98% traffic drop. Recovery strategy check?
Hey everyone, looking for honest feedback on our situation and recovery plan. We're a B2B company with an international presence. In October 2025 we migrated from our legacy domain (15+ years old, ~700k monthly impressions) to a brand new d...
A legacy domain was migrated with no redirect strategy, the old server went dark, and impressions fell from 700K to 14K. Recovery meant backfilling ~1,100 fuzzy-match redirects and burning Google Ads spend to plug the gap, and four months later the site still wasn't back.
200+ SaaS teams already track their AI citations.
They know exactly when ChatGPT mentions their brand, and when it stops. Do you?

The traps
They're listed from most to least frequent. The staging leftovers aren't the most common, but they can make a whole site uncitable at once, so I'd check them first on cutover day.
| Trap | Fix |
|---|---|
| Chain redirects (301 → 301 → 301) | Flatten at the source and keep every URL at ≤2 hops |
| Redirect loops: every AI crawler abandons them immediately and doesn't retry (Googlebot comes back more aggressively) | Make sure no URL appears twice in a chain |
| Canonical tags pointing to staging: the Yoast indexable bug, or any CMS with cached canonicals | Rebuild after cutover, audit every canonical, fix before flipping DNS |
| Noindex tags forgotten on staging, which ship to production and make the whole site uncitable | Grep the built HTML for noindex before cutover |
| Meta refresh or JavaScript redirects, invisible to AI crawlers | Server-side 301 only |
| www vs non-www forgotten | File Change of Address on every subdomain variant, per Google's June 2026 update |
| Sitemap and Change of Address not filed | New sitemap on the new property on day one, and Change of Address on all variants to start Google's 180-day forwarding window |
An r/bigseo poster documented what can happen even when the mechanical checklist is clean:
6 months post 301 migration to new domain problem
Hey guys, I moved a domain from .net to .org with perfect 301s, robots.txt, sitemap submitted, and confirmed Google can crawl the new URLs. My .net shows 100% 301 status on Google Search Console crawl stats so everything appears normal. How...
Six months in, they had 40,000+ URLs "crawled but not indexed," a 100% 301 status in GSC crawl stats, and a Google that still didn't trust the new domain. Pre-2020 migrations, as they remembered them, consolidated in 2-4 weeks. The trust flip no longer runs on any predictable timeline, so your post-migration monitoring has to be active.
The week-zero checklist
If you're migrating this quarter, run this the week before cutover:
- Baseline every step 1 metric, including citation share on 30 prompts.
- Build the URL map: 1:1 where possible, 410 for retired content.
- Flatten existing 301 chains at the source before adding migration redirects.
- Update Organization schema, author pages and every
sameAsreference on staging. - Rebuild indexables and audit every canonical tag on staging.
- Verify with curl that JSON-LD ships in the initial HTML.
- Set up GSC properties for every domain variant and file Change of Address on each.
- Update robots.txt on both domains 24 hours before cutover.
- Cut over with server-side 301s only and watch the first 24 hours for anomalies.
- Start weekly monitoring on day one.
Migrations are when sites lose citations they spent years earning. Do the mechanical checklist and the AI-crawler pieces together and the move goes back to being the boring event it was meant to be.
Our content engine ships every article it writes with Article and FAQ schema, and our AI visibility tracking checks up to 50 buyer queries across six engines every week, so a citation drop after the move shows up within the week. For the entity-graph pieces that break most in migrations, our Organization schema playbook covers the brand side.
How often does ChatGPT mention your brand?
Most founders have no idea. The answer might surprise you.











