All questions

Switching from Contentful to Strapi mid-year, can experiments survive the move?

Asked by mkovac on

Mmkovac

Dev lead at a media company, mid-migration. Constraints up front:

  • CMS moves from Contentful to Strapi over the next two months
  • three Croct experiments currently live, two of them revenue-driving
  • stakeholders will not accept pausing them for the migration window
  • frontend stays the same Next.js app, only the content source changes

My assumption is that experiments are tied to slots, and slots are tied to the app rather than the CMS, so swapping the data source underneath should not matter. But assumptions are how migrations go wrong. Has anyone actually done a CMS swap with experiments live?

Was this helpful?

1 answer

MmkovacAccepted answer

Answering my own question after testing the whole thing in staging and cutting over one section in production.

The assumption held. Slots are defined in the application, not in the CMS, and the CMS is only the source of the default content your app passes as the fallback. I swapped the data fetching for the migrated section from the Contentful client to the Strapi API, kept the slot IDs identical, and the experiment on that section never noticed. Experiments, audiences, and analytics all live in Croct, so none of it was affected by the swap.

Two things I verified explicitly for the stakeholders:

  1. Variant assignment stayed stable through the cutover. Sticky assignment keeps identified users on the same variation, so nobody flipped variants because we changed the backend.
  2. Results data continued accumulating with no gap or reset.

Only real work was making the Strapi response shape match what our components expected, which is a migration problem, not an experimentation problem.

Was this helpful?
Ttim_v

Matches our Sanity to Strapi move last year. The decoupling is the whole point of the overlay model, the CMS is just another data source.

Still have questions?