Skip to content
Drupal

Joomla Migration in 2026: Where to Go, What It Costs, and What Breaks

· 7 min read · 1,483 words
Shaker Abady

Written by

Shaker Abady

Founder & CEO, Gspikes

I own and run Gspikes, the agency I founded in 2018. Before going all-in, I led SEO at Chain Reaction — one of the region's largest digital agencies — and shipped production code at Orange and Forbes. Everything published here comes from projects I've personally built, migrated, or ranked.

LinkedIn

Last updated · September 2026

We build on Drupal and WordPress both, and we have no opinion about where your Joomla site ends up until we have looked at it. That is the only reason this guide is worth your time: almost every article with this title is published by a shop that sells exactly one destination, and the destination is always the one they sell.

The honest starting point is that leaving Joomla is usually the right call in 2026, but the reason people give for leaving is almost never the real one, and the destination most of them pick by default is wrong for about a third of them.

Joomla is not dead. Your Joomla probably is.

Joomla the project is alive — Joomla 5 shipped in October 2023 and is actively maintained. That is not the situation most people asking this question are in.

The situation most people are in is a Joomla 3 site. Joomla 3 reached end of life in August 2023, which means the thing running your business has been receiving no security patches for three years. Joomla 4 is out of support too. If nobody has touched your site since 2022, you are not choosing whether to migrate; you are choosing where to migrate, and how long you are prepared to run unpatched while you decide.

The second thing that has usually died is the extension you built the site around. Joomla’s extension ecosystem contracted hard after the 3-to-4 transition, because the upgrade broke backward compatibility and a large number of developers simply did not follow. Your site is probably standing on at least one extension whose last release predates the pandemic.

So the real question is not “is Joomla bad”. It is: the platform moved on without you, the extensions you depend on did not make the jump, and you now have to rebuild something. Given that you are rebuilding anyway, where should you rebuild?

The three destinations, and who each one actually suits

Joomla 5. The option nobody sells you, and the right one more often than the market suggests. If your site works, your content model is genuinely simple, your team knows the Joomla admin, and your extensions have Joomla 5 releases, then upgrading in place is dramatically cheaper than any re-platform. Check your extensions first — that check takes an afternoon and decides everything.

WordPress. Where most Joomla sites should go. If what you have is a marketing site with articles, categories, a few forms and a shop, WordPress will be cheaper to run, far easier to hire for, and the migration path is the most trodden one in existence. Do not let anyone tell you this is a downgrade. For the majority of Joomla sites it is a straight improvement in cost of ownership.

Drupal. Where a minority should go, and where they should go decisively. The tell is structured content: if your Joomla site is held together by K2, a pile of custom fields, and nested categories doing work they were never designed for, that is a content model straining against its container. Drupal’s entity and field system models that natively. The other tells are the same as always — real editorial workflow with moderation states and per-field permissions, genuine multilingual content rather than a translated menu, and governance or audit requirements in public sector, higher education, healthcare or finance.

If you did not recognise your organisation in that last paragraph, you are a WordPress migration, and a Drupal shop telling you otherwise is selling.

The extension problem is the whole project

People budget Joomla migrations as if the content is the hard part. The content is the easy part. Articles, categories, users and media are structured data in a MySQL database and they move.

What does not move is everything you bolted on. And Joomla has a specific version of this problem that WordPress migrations do not: K2. If your site runs K2, a large share of your content is not in Joomla’s #__content table at all — it lives in K2’s own tables, with its own categories, its own extra fields, and its own image handling. Every tool that promises a one-click Joomla export reads core content. We have been called in more than once to rescue a migration that completed successfully, looked fine, and had quietly left several thousand K2 articles behind.

The rest of the inventory usually includes VirtueMart or HikaShop for commerce, RSForm or BreezingForms for forms, sh404SEF for URLs, and Falang or JoomFish for translations on older builds. None of those have equivalents you can install. They have replacements you have to rebuild into: Webform on the Drupal side, Gravity Forms or similar on the WordPress side, and a commerce platform decision that deserves its own scope, its own timeline and its own budget rather than being treated as a line item inside a CMS migration.

Make that inventory in week one. It is the single largest source of mid-project surprises, and it is the thing that decides whether your quote was honest.

Protecting the traffic — the part that is different on Joomla

Every migration guide tells you to map old URLs to new ones with single-hop 301s, and that is true here too. What is different about Joomla is what you are mapping from.

Joomla’s native URLs look like index.php?option=com_content&view=article&id=123&Itemid=456. The Itemid is the menu item the page was reached through, and the same article reached through three menu paths produces three different URLs. If SEF URLs were switched on partway through the site’s life, or if sh404SEF was installed and reconfigured at some point, you will find the same content live at several addresses, all indexed, none canonicalised.

That means the first job is not a redirect map. It is a URL inventory: crawl the live site, pull every indexed URL out of Search Console, pull the historical ones out of Analytics, and reconcile the three. Only then can you decide which variant is the survivor and point the others at it with a single hop. Bulk-redirecting the leftovers to the homepage is not a shortcut — Google reads that as a soft 404 and the equity evaporates regardless.

Freeze a baseline before anything changes: a full crawl, Search Console queries and pages, backlink data, analytics landing pages. You cannot prove you protected the traffic without a record of what you had. Then re-crawl at twenty-four hours, seven days and thirty days after cutover, and watch the coverage and 404 reports daily for the first week. Ranking damage from a migration usually surfaces three to four weeks out, which is exactly long enough for everyone to have declared the project a success.

What it actually costs

We will not quote you a number in an article, because anyone who does has not looked at your site. But the shape of the cost is predictable, and you can sanity-check any quote against it.

Content migration is typically ten to twenty per cent of the work. The theme is rewritten, not ported. The forms are rebuilt. Every extension is either replaced or reimplemented. If a quote treats the whole thing as a data transfer, the person writing it has looked at your article count and nothing else.

The two multipliers that move a Joomla quote most are K2 and commerce. K2 because it doubles the content-migration work and is invisible until someone opens the database. Commerce because VirtueMart or HikaShop to anything else is a re-platform of your store wearing a migration’s clothes, and it carries years of transactional data that needs its own assessment before the main project is scoped.

So where should you go?

Check whether your extensions have Joomla 5 releases. If they all do and the site works, upgrade in place and spend the money you saved on something that grows the business.

If they do not — and they usually do not — then go to WordPress unless your content is genuinely structured, your workflow is genuinely multi-stage, your multilingual requirement is genuinely per-language content, or your sector genuinely demands an audit trail. In those cases go to Drupal and do not look back.

What you should not do is stay where you are because the decision is uncomfortable. An unpatched CMS is not a neutral holding position. It is a slowly compounding liability, and the cost of the rebuild does not go down while you wait.

Gspikes builds and maintains on both Drupal and WordPress, which means we get paid either way and can afford to tell you the truth about which one you need — including when the answer is to stay on Joomla. If you want an honest read on your site, send us the URL and we will tell you what we find, K2 included. More on how we approach this on our Drupal development page, and the same logic applied in the other direction in our WordPress to Drupal guide.

Put senior Drupal engineers on it

Migrations, custom modules, integrations, and support with real SLAs — with a fixed-price quote from a senior engineer within 3 days.

Want this applied to your business?

A senior strategist reviews your situation and sends an honest plan within one business day.

Get a Free Quote