Halcyon Sound
An ageing Drupal install with a decade of articles and a URL structure nobody wanted to keep. Every old address was mapped before the new build started.
Drupal 7 → WordPress · 2025A migration is not a rebuild with a content import bolted on. The content is the easy half. The half that goes wrong is the URLs.
Any of these is a legitimate reason. None of them is a reason to change the URLs.
Everything, including the parts that are not obvious: media libraries with their alt text, authors and dates, categories and tags, form submissions if they are the record of something, and the twelve-year-old blog posts that turn out to be a third of the site’s traffic.
Every existing URL is inventoried before anything is built, and mapped one-to-one where a corresponding page exists. Where it does not, the redirect goes to the closest genuine equivalent rather than to the homepage — a homepage redirect is treated by search engines as a soft 404 and it is the most common way a migration loses rankings.
The map is written, reviewed and tested against a crawl of the old site before launch, and again after.
Title tags, meta descriptions, canonical tags, Open Graph data and schema markup are carried across and checked. A site can survive a platform change and still lose visibility because the new templates generate different titles.
Tracking, goals and search console verification in place on launch day, and an annotation on the date so that the next six months of data can be read against a known event.
Most of our migration work is onto WordPress — from Joomla, Drupal, Squarespace, Wix, a static site, or a custom system nobody maintains any more — and off legacy WordPress onto a modern front end with WordPress kept as the editor behind it.
We also move sites between hosts without changing the platform, which is a smaller job and is sometimes all that is actually needed.
We will say which of those three you are asking for before quoting, because clients frequently ask for the largest one and need the smallest.
Inventory. A full crawl of the current site: every URL, its status code, its title, and its traffic. This is also the document that tells us how big the job is.
Map. Old URL to new URL, page type to page type, field to field. Reviewed with you, because you know which pages matter in a way analytics does not always show.
Build and import. The new site is built and the content is imported into it — repeatedly, so the final import on launch day is a rehearsed step rather than a first attempt.
Verify before launch. Redirects tested against the crawl. Metadata compared old to new. A written list of anything deliberately not carried across.
Launch and watch. Sitemaps submitted, search console monitored for crawl errors, and the redirect map corrected where reality disagrees with the plan.
Placeholder — invented projects, pending real client work
An ageing Drupal install with a decade of articles and a URL structure nobody wanted to keep. Every old address was mapped before the new build started.
Drupal 7 → WordPress · 2025A move off a hosted page builder onto a front end they own, with the editing surface kept familiar so the team did not have to relearn it.
Hosted builder → Nuxt · 2026Traffic normally dips for a period after any migration and recovers. Done properly — every URL mapped, metadata carried across — the dip is small and short. Done by importing the content and letting the new platform generate new URLs, it is neither.
The build takes as long as the build. The migration work on top of it scales with the number of URLs and the number of content types, both of which come out of the inventory in step one. That is why we do the inventory before quoting.
Yes. A like-for-like platform move is a legitimate project and often the right one — it separates the platform risk from the design risk instead of taking both at once.
They come across, with their dates, authors and URLs. If we are going to recommend removing any of them, you get the list and the reason, and it is your decision.
Read access is enough to produce the inventory and the quote. Nothing is changed on the existing site until you have agreed to the work.
That is common — it is often the reason for the call. A broken site can still be crawled and its content extracted. See also rescue and performance work.
Send us the current site’s address. The inventory comes first, before anything is quoted.
Or email us at hello@felixwebsolutions.com.
Agency looking for a build partner? We work white-label →