Contact

Platform migration

Move off WordPress, Joomla or Drupal — and stop paying for the parts you don't use.

Keep the content and editing access, preserve important addresses, and move to an architecture sized for what the site actually does.

A modular block whose dense tangle of small components consolidates into a few clean modules, while the broad outward-facing front panel stays intact

You probably recognise some of this

Your hosting bill went up again. Something breaks after every update. You're paying for four plugin licences and you can't remember what two of them do. The site takes six seconds on a phone. Your developer left in 2019 and nobody knows how it's wired.

None of that is unusual and none of it is your fault. It is what happens when a site is built on a platform that assumes constant maintenance, and then you stop having someone to do the maintaining.

What you're moving from

The platforms we work with most often, plus older or custom systems that need a direct inspection.

  • WordPress

    We inventory posts, pages, taxonomies, media, users, plugin-owned data and the URL patterns the site currently answers.

  • Joomla

    Where extensions or documentation no longer explain the site, we inspect the database and media tree and map them onto an explicit content model.

  • Drupal

    Older Drupal sites often need a content-model migration rather than a theme replacement. We compare that work with staying on a supported Drupal version before recommending a direction.

  • Something else

    Wix, Squarespace, custom PHP and static HTML each expose content differently. An inventory establishes what can be exported, rebuilt or retained before a quote is prepared.

How a migration actually goes

Four steps. You see the output of each one before the next begins.

  • 01

    Inventory and export

    Reachable pages, known historical addresses, assets, forms and structured data. You get the inventory before anything is built.

  • 02

    Content model in git

    Content becomes structured files with defined fields and validation, making future changes easier to inspect and migrate.

  • 03

    Rebuild the front end

    Astro for a content site, or PHP where the project contains application logic. Editors get a browser interface over the structured content.

  • 04

    Redirect map, launch, watch

    The redirect map is derived from the inventory and tested before launch. Afterwards, logs reveal addresses that were not present in the available sources.

A migration changes where content is stored and how pages are produced. The audit identifies which of these differences matter for your site.
AreaCMS runtimeStatic publishing architecture
Public deliveryApplication code produces pages on requestA build produces files before a visitor requests them
EditingUsually inside the public CMSIn a separate editor connected to structured content
UpdatesCMS core, extensions and runtime remain operational concernsBuild dependencies and separate dynamic services remain operational concerns
RecoveryDatabase, media and configuration backupsRepository, assets, configuration and deployment backups
HandoverDepends on access to the CMS and its extensionsRepository, content, accounts and build instructions transfer together

The redirect map is a core deliverable

Search results, bookmarks and links from other sites depend on addresses accumulated over years. Launch-period disruption can be corrected, but it cannot be retroactively undone, so the redirect map is prepared and tested before launch.

The navigation and current sitemap are only two sources. Historical URL patterns, archived copies, access logs and old CMS data can reveal addresses that are no longer linked from the visible site.

  • Built before launch

    From the available URL sources, not only the current menu.

  • Tested as data

    Each mapped address has an expected destination that can be checked against staging.

  • Maintained after launch

    Logs are reviewed for missed addresses and valuable redirects are kept in place.

Questions we get every time

Will my URLs change?

Some can stay exactly as they are; others may need explicit redirects. The inventory records the important current and historical addresses and assigns each one a destination before launch.

Will I lose my editor?

No. You get a browser editor with fields for the content the site actually contains — headings, images, links and page sections — plus a preview.

What about my contact forms?

Forms are inventoried with the rest of the site. On a static build they submit to a small endpoint rather than the CMS; notification, validation and spam controls are tested before launch.

I have a shop. Can you move that?

Sometimes. A catalogue with a checkout can move; subscriptions, complex tax rules or deep integrations may make improving the existing shop the safer option. That decision belongs in the audit.

My site is multilingual.

That is supported. The inventory takes longer because each language and its URL relationships need to be accounted for, and stale translations often need an editorial decision.

How long does it take?

A small content site commonly takes several weeks. The useful estimate comes after the inventory because distinct page types, languages and integrations matter more than the raw page count.

What does it cost?

The audit is a fixed fee and produces a written plan and build price. You decide whether to proceed after reading it.

Can I go back?

The old site remains available until launch and you retain its export. You also own the new repository, content and accounts.

Send us your URL.

Tell us what you're running and what it costs you each month. We'll tell you whether a migration audit is the useful next step.