# Migrating personalization off Contentful, how do we make sure SEO does not take a hit?

Asked by Daan Mulder on 2026-03-31. Tags: contentful, seo, migration.

Travel platform, roughly 70% of our traffic is organic, so during our post-Ninetailed
migration the pages rank first and get personalized second, in that order of priority.

Two things I want certainty on before mapping anything to Croct slots:

1. Do personalized sections stay crawlable? If the variant is injected client-side
   after load, crawlers that do not execute JS well may index a hole in the page.
2. What do bots actually index, the default content or some variant? I want the
   indexed version to be deterministic, ideally the Contentful default we have
   ranked with for years

## 1 answer

### Accepted answer from felipe (2026-03-31)

Both concerns are addressed by the same architectural fact: content is resolved
server side, so whatever a request receives, default or variant, is in the HTML
response itself rather than injected after load. There is no client-side hole for
a crawler to index. That was the property that made us comfortable on our own
organic-heavy site.

On determinism: your existing Contentful content stays as the default fallback for
every mapped slot, and the default is what serves whenever no audience matches. A
crawler does not match behavioral or campaign audiences (no session history, no
campaign parameters), so bots receive the same Contentful default you have ranked
with. If you want to be strict about it, just avoid writing audience conditions
broad enough to catch bot traffic, like a bare device or country condition on an
SEO-critical section.

Croct has a post covering [personalization and SEO](https://blog.croct.com/post/seo-personalization)
in more depth if you want the broader treatment.

#### Reply from Daan Mulder (2026-04-01)

Server-rendered plus deterministic default is exactly the pair of guarantees I
needed. Confirmed with a fetch-as-bot test on staging, the response HTML carries
the Contentful default. Accepting.
