The site was built with Elementor, it works, everyone is happy. A year later the page weighs several megabytes, mobile speed sits in the red, and any change outside the template costs as much as a small project.
What migration gives you
The page stops carrying foreign code
A builder loads its own CSS and JavaScript on every page regardless of how much is used. Add fonts, icon sets and widgets on top. A custom theme ships exactly the styles that page needs.
That is where the speed gain comes from: not from optimisation magic, but from removing code that was never needed.
The markup gets dramatically simpler
Where the builder builds a section from six nested containers, the theme has one block. Less for the browser to compute, clearer structure for search engines, easier edits for a developer.
The lock-in disappears
While Elementor is active it holds all your content. Switching it off leaves shortcodes where your pages used to be. After migration the site no longer depends on what happens to that one plugin.
Changes get cheaper
Non-standard behaviour in a builder is always a workaround: a widget that almost fits, plus custom CSS on top, plus a JavaScript patch. In a theme the same thing is written directly.
The hard part: where the content lives
A builder stores the page not as ordinary text but as its own data structure in the database. Turn the plugin off and what remains is a set of shortcodes.
So migration is not a matter of switching the builder off and the theme on. The content has to be extracted and translated into normal structures: text into posts and pages, repeating entities into fields, products into products.
That is the real work of a migration. Building the theme takes less time than moving the content carefully.
How the process runs
- Audit of the current site. How many pages, which content types, what is duplicated, which plugins are genuinely used. Half of them usually turn out to be unnecessary.
- A record of what must not break. Page URLs, titles and descriptions, existing redirects, structured data, forms and where enquiries go, analytics tags.
- A copy on staging. Work happens there; the live site keeps running.
- Theme development against the existing design. The look stays the same: the point of a migration is to remove weight, not to redesign.
- Content migration from builder structures into proper posts and fields.
- Editable blocks for the sections the client maintains, so nobody has to email a developer about a banner.
- Pre-launch verification: every URL in place, metadata preserved, forms delivering, analytics counting.
- Switchover and watching Search Console for the first few weeks.
What must survive unchanged
- Page URLs. The safest migration is one where no address changes. If the structure genuinely must change, every old URL gets a 301 to its matching new one - not to the homepage.
- Titles and descriptions. Carried across as they are, not rewritten.
- Structured data. Products, reviews, breadcrumbs all stay.
- Images and their URLs. Re-uploading images under new filenames resets your image search rankings.
- Sitemap and robots.txt.
The most common migration mistake: improving the URL structure at the same time. The site gets faster and the traffic falls, because half the pages now return 404. If you want to change the structure, do it as a separate stage afterwards.
What to expect on speed
Honestly about numbers: the gain depends on how loaded the original site was, and promising a specific score in advance is not possible.
What always changes:
- the builder's CSS and JS disappear from every page;
- the number of requests drops;
- the page structure simplifies and the browser builds it faster;
- plugins that existed only for the builder go away.
What does not change by itself: heavy images, slow hosting and third-party scripts such as chat widgets and tracking pixels. A custom theme will not shrink a four megabyte photo. That is why a migration is usually done alongside image work and caching, otherwise half the benefit is lost.
When migration is not worth it
- A short landing page living on paid traffic that will be replaced in six months.
- A site that does not earn directly and has no search traffic.
- A project without the budget to finish: a half-migrated site is worse than the original.
In short
The real work in a migration is extracting content from builder structures, not building the theme. Speed improves because unnecessary code disappears. The governing rule: URLs, titles and structured data must survive the move unchanged.
Moving off a page builder?
I handle the migration to a custom theme, preserving URLs, metadata and rankings.