Petal

How content migration to Headless CMS could be your last

Content migration. Two words that, if you’ve ever had the misfortune to suffer through one, have likely just sent a shiver down your spine.

Tom Marshall

Tom MarshallPublished on Jan 31, 2022

All too often, there’s the misconception that it’ll be a straightforward exercise, “We’ll just migrate the content over at the end.”

That is rarely the case, though. Content migrations are a plague pit of spiraling complexity and can feel like a never-ending list of continually emerging edge cases. Getting a migration right requires considerable time and effort, only for all that investment to be discarded at the end.

What if you could stop investing in these expensive, one-off, throwaway migrations? Well, with a migration to headless content, it might just be your last.

Why we should stop migrating our content

Simply put, content migrations are an expensive, tedious, throwaway exercise.

With enough content, the process has to be automated, and with that content volume comes variety, i.e., time-consuming edge cases that need handling.

To make matters worse, in traditional CMSs, content is stored together with presentational knowledge, for example, pages built with a widget-based template builder. Migrating this content is highly complex, as we’re required to implement logic that understands the presentational data structures on both sides of the transfer, not just the content itself.

And that’s not the only complexity to handle; there are also internal references between content, links between pages with changing URL structures, content in proprietary CMS customizations. The list goes on.

Then it’s time to run the migration, which requires a content freeze to avoid data loss that may need to run for multiple days depending on the amount of content.

Finally, after all that pain and effort developing the migration tool, we discard it, as it provides no further value. 

A necessary evil?

Moving the content from one place to another doesn’t directly add value for our end-users. The value added comes from the improved experience delivered by a new platform or technology we’re able to leverage following a migration.

We can’t know what the next big tech revolution will be or when it will arrive. Right now, with the buzz around web performance and Core Web Vitals, there’s a lot of excitement around Jamstack due to the speed of pre-rendered content. Tomorrow, if Meta are correct, we may all be hanging out in virtual spaces, consuming content there.

Jump back a decade or so, and similar things were happening with a push from custom-built CMSs to open-source solutions like WordPress.

Change is inevitable, but to date, we’ve been required to migrate our content to each new platform, technology, or channel as it emerged.

Headless to the rescue

A headless CMS exposes your content as an API. We often speak about how that architecture empowers omnichannel content. Content editors can maintain a single canonical source of content that can be consumed and distributed across multiple channels, e.g., a website and a mobile app.

What’s less talked about, but equally true, is how when you want to rebuild a ‘head’, e.g., your website, you can do so without a content migration.

Building a website with headless content does not require migration.

Your new website is built in the background, pulling the same content from the API as the legacy site, then when the new site is ready, you simply switch over.

No content migration, no content freeze, no double keying, just hundreds of developer hours saved that can be put to better use.

Conclusion

Headless CMSs like Kontent by Kentico separate channel specifics and provide a clean, accessible, single source of truth for our content. That’s a powerful paradigm that solves more than one headache.

With a headless CMS, your expensive, one-off, throwaway content migrations can become a thing of the past.

Do you have any experience with content migration, good or bad? Share it on the Kontent Discord.

Tom Marshall
Written by

Tom Marshall

I’m Head of Technology for Kyan, focusing on building technology that changes businesses for the better. I’m a Rubyist at heart, but I’m spending more and more time in the Jamstack space, primarily with Next.js.

More articles from Tom