Skip to content
Orvenant
Orvenant

Planning a Joomla upgrade

Planning a Joomla upgrade: paths from Joomla 3, 4 and 5 to Joomla 6

Reach Joomla 6 by upgrading one major version at a time on a tested copy, or by migrating to a fresh installation when the extensions and template would need rebuilding anyway. Joomla 6 requires PHP 8.3 or later, so check your hosting first.

The short answer

Move to Joomla 6 one major version at a time, or migrate to a fresh installation. Joomla 3 and 4 no longer receive security fixes from the Joomla project, and Joomla 3’s paid extended support ended on February 17, 2025. Joomla 5 is security-only from October 13, 2026 until October 12, 2027. Joomla 6 requires PHP 8.3 or later.

In plain English: what end of support means

The Joomla project ends support for a version in two steps: first bug fixes stop and only security fixes continue, then security fixes stop too. The table below gives both dates for each version.

  • Your server’s PHP version has its own support dates: Joomla 6 requires PHP 8.3 or later, and PHP 8.2 security support ends on December 31, 2026.
  • Your routes: upgrade the current site one major version at a time, move to a fresh Joomla 6 installation, build a new public website while editors keep working in Joomla, or rebuild on another platform.
  • The first step: record the Joomla, PHP and database versions that actually run, list every extension and the template, and test that a backup restores before you choose a route.

Joomla and PHP support dates

Two dates matter for every Joomla site: when its Joomla version stops receiving security fixes, and when the PHP version on its server does. Check both before you schedule work.

Joomla project support dates, checked October 3, 2026

Status for November 3, 2026

  • Joomla 3 since 2012 No fixes from the Joomla project

    Released
    Bug fixes end
    Security fixes end
    Paid extended support (eLTS) ended
  • Joomla 4 No fixes from the Joomla project

    Released
    Bug fixes end
    Security fixes end
  • Joomla 5 Security fixes only

    Released
    Bug fixes end
    Security fixes end
  • Joomla 6 Bug and security fixes

    Released
    Bug fixes end
    Security fixes end
Joomla support dates (checked October 3, 2026)
VersionReleasedBug fixes endSecurity fixes endPHP requirement
Joomla 6Oct 14, 2025Oct 17, 2028Oct 16, 20298.3 or later (8.4 recommended)
Joomla 5Oct 17, 2023Oct 13, 2026Oct 12, 20278.1 or later (8.3 recommended)
Joomla 4Aug 17, 2021Oct 14, 2024Oct 14, 20257.2.5 or later (8.2 recommended)
Joomla 3Sep 27, 2012Aug 16, 2022Aug 17, 2023No newer than 8.1

Joomla 3’s paid Extended Long Term Support program, run on behalf of Open Source Matters, ended on February 17, 2025. Neither the Joomla project nor its eLTS program releases further Joomla 3 updates.

PHP support dates (checked October 3, 2026)
PHP branchActive support endsSecurity support ends
8.5Dec 31, 2027Dec 31, 2029
8.4Dec 31, 2026Dec 31, 2028
8.3Dec 31, 2025Dec 31, 2027
8.2Dec 31, 2024Dec 31, 2026
8.1EndedDec 31, 2025
8.0EndedNov 26, 2023

Last verified: October 3, 2026, against the Joomla project roadmap, Joomla’s release announcements, downloads site and manual, two Joomla Community Magazine articles for Joomla 3, and php.net. Support dates can change, so recheck the sources listed at the end of this guide before you commit to a schedule.

What the dates mean for your site

A site keeps running after its security date. What changes is that newly found vulnerabilities in that version are no longer fixed by the Joomla project.

  • Joomla 3: the Joomla project’s security fixes ended on August 17, 2023, and its paid extended support program ended on February 17, 2025. Joomla 3.10, the final official release, does not work correctly on PHP newer than 8.1, and the PHP project stopped security fixes for PHP 8.1 on December 31, 2025. Treat moving off Joomla 3 as urgent.
  • Joomla 4: the Joomla project’s security fixes ended on October 14, 2025. Plan the move to Joomla 5.4 and then Joomla 6 now.
  • Joomla 5: from October 13, 2026, Joomla 5 receives security fixes only, and those end on October 12, 2027. Use that window to reach Joomla 6 on your own schedule rather than at the deadline.
  • Joomla 6: bug fixes until October 17, 2028 and security fixes until October 16, 2029. It requires PHP 8.3 or later, so confirm that your host offers it before planning the upgrade.
  • PHP 8.2: security support ends on December 31, 2026. A Joomla 5 site on PHP 8.1 or 8.2 needs a PHP change, whichever Joomla route you choose.

Upgrade paths to Joomla 6, one major version at a time

Joomla’s official upgrade guides each cover one step: from 3.10 to 4, from 4.4 to 5 and from 5.4 to 6. An in-place upgrade follows that sequence, with every step rehearsed on a copy of the site.

Route from each starting version (checked October 3, 2026)
Starting versionRoute to Joomla 6Check before you start
3.0 to 3.9Update to 3.10, then follow the 3.10 routeBack up and test the restore. The pre-update check for Joomla 4 compatibility arrives with Joomla 3.10.
3.10Migrate to Joomla 4, update to 4.4, upgrade to 5.4, then upgrade to 6Joomla calls 3 to 4 a mini-migration. The Joomla 3 core template Protostar is not compatible with Joomla 4 and disappears in the move. Check every third-party extension for a Joomla 4 version.
4.0 to 4.3Update to 4.4, upgrade to 5.4, then upgrade to 6Joomla 5 requires PHP 8.1 or later and, on MySQL, version 8.0.13 or later.
4.4Upgrade to 5.4, then upgrade to 6The Joomla 5 upgrade turns on a backward compatibility plugin. It must be off before the step to 6, so find out early which extensions still need it.
5.0 to 5.3Update to 5.4, then upgrade to 6Move the site to PHP 8.3 or later before the Joomla 6 step.
5.4Upgrade to 6Disable the “Behaviour - Backward Compatibility” plugin before starting and keep “Behaviour - Backward Compatibility 6” installed and enabled. PHP 8.3 or later.

The 5.4 to 6 step has one specific rule. Joomla 5.4 ships a new “Behaviour - Backward Compatibility 6” plugin, and Joomla requires it to be installed and enabled for the upgrade. The older “Behaviour - Backward Compatibility” plugin must be disabled before you start. If the site stops loading when you disable it, re-enable it: an extension still relies on old code that the plugin provides, and it needs an update or a replacement first.

Joomla’s pre-update check helps, but Joomla’s own upgrade guide describes it as a high-level overview rather than the full truth, because it only reports what extension developers have declared. Confirm business-critical extensions with their vendors or by testing them on the copy.

Upgrade in place or migrate?

An upgrade in place runs Joomla’s own update process, step by step, on the existing database and extensions. A migration builds a fresh installation, either a new Joomla 6 site or a different platform, and moves content, users and URLs into it. Use these rules as a starting point; your inventory makes the final call.

Upgrade or migrate: decision rules
If your siteUsually chooseWhy
Runs Joomla 4.4 or 5.x, and every business-critical extension has a Joomla 6 versionUpgrade in placeContent, users and menus stay in place, and each step has an official guide.
Runs Joomla 3 with several abandoned extensions or a custom Joomla 3 templateMigrate to a fresh Joomla 6 installationAn in-place route means rehearsing three major upgrades for a template and extensions you would replace anyway.
Depends on custom code or extensions that no vendor maintainsAssess before choosingEach dependency needs a decision first: update, replace, rebuild or retire.
Has outgrown what Joomla does well, for example it now works like an application or needs a very different frontendConsider a new frontend or a rebuildWeigh the benefit against rebuilding what Joomla provides today, including the editors’ workflow.
Runs on hosting that cannot provide PHP 8.3Plan the hosting change firstJoomla 6 requires PHP 8.3 or later, whichever route you choose.

Inventory the installation that actually runs

Record the installed Joomla, PHP and database versions, then list components, plugins, modules, languages and the active template. For each extension, identify its purpose, vendor, version, update access and business owner. Include disabled extensions and custom changes; something unused today may still contain old data or influence an update. Keep the inventory tied to the actual production installation rather than an old handover document. Unknown ownership is a task to resolve before scheduling the change.

Capture hidden dependencies

List scheduled jobs, email delivery, login providers, forms, search, commerce connections and custom template overrides. Record which customer task would fail if each stopped working.

NEXT STEP

Joomla migration & upgrades

Move a Joomla 3, 4 or 5 site to Joomla 6 with the route, the risks and the rollback known before anything changes on the live site. Every route is rehearsed on a separate copy, and a redirect plan protects search traffic, although no move can promise unchanged rankings. The handover is documented, with ownership set out in your agreement. The first step is an upgrade assessment.

View Joomla migration & upgrades

Choose a supported path for every dependency

Check the upgrade guidance for the exact starting and target versions, plus each extension vendor’s compatibility information. Core readiness does not establish that the complete site is ready. Joomla’s backward compatibility policy has defined limits, and it does not cover rendered markup. A template override therefore deserves a visual and functional check even when the update completes. Treat uncertain vendor support as an unresolved dependency, with a choice to replace, revise or retire the affected feature.

Joomla migration & upgrades

Use the dependency inventory to separate core upgrade work from extension replacement, template changes and content migration.

View Joomla migration & upgrades

Rehearse on an isolated and representative copy

Create a protected copy with the required files and database, then reproduce the intended hosting configuration closely enough to test the upgrade. Keep private records protected and disable real outbound actions before running journeys. A test form must not email customers; a commerce check must not use live charging credentials. Run the selected upgrade sequence and record warnings, repairs and duration. Keep those instructions reproducible so the final release does not depend on remembering which manual fix worked during rehearsal.

Worked decision: an unsupported form extension

Consider a site whose core has a supported upgrade route but whose request form depends on an extension with no confirmed target compatibility. Simply removing the extension could lose stored submissions and break a business process. First identify the fields, recipients, stored records and downstream actions. Then assess a supported replacement and migrate only what is required. Test field validation, delivery and staff access independently. This makes the replacement an explicit part of the release scope rather than an unpleasant discovery after updating core.

Verify journeys, permissions and destinations

Review more than the homepage. Check article editing, navigation, search, account access, forms and any commercial integration. Compare important old URLs with their intended destinations and inspect the template at narrow and wide widths. Check who can see restricted content and whether a logged-out visitor receives the correct view. Have the content owner perform ordinary administration tasks; a technically successful upgrade can still leave the team unable to publish.

Joomla performance optimization

If the site is slow after the upgrade, measure its specific bottleneck before adding unrelated optimization changes.

View Joomla performance optimization

Restore the prior state instead of improvising a downgrade

Joomla’s policy does not support downgrading after an upgrade; it advises restoring a backup made immediately before the change. Verify that the backup contains the matching database and files and that someone can restore them in the target environment. Agree the editing freeze or final synchronization, public verification steps and rollback decision owner. Decide how to preserve records created after cutover if rollback becomes necessary. Close the upgrade only when the site’s users and operators can complete the agreed journeys and the final dependency inventory is recorded.

Get help with your Joomla upgrade

If you want a second opinion on your route, or someone to run the upgrade, these services cover the next step.

Joomla migration & upgrades

An assessment that inventories your installation, checks extensions and the template against Joomla 6, and recommends a route with a rehearsal and rollback plan.

View Joomla migration & upgrades

Website redesign & migration

When the move turns into a redesign or a platform change, content, design and redirects are planned together.

View Website redesign & migration

WordPress development

If you decide to leave Joomla for WordPress, map content, users and URLs before the build starts.

View WordPress development

Website maintenance

After the upgrade, agree who applies Joomla, extension and PHP updates, how security updates are prioritized and how backups are tested.

View Website maintenance

Questions about this guide.

Is it safe to keep running Joomla 4?

No. Joomla 4 has received no security fixes from the Joomla project since October 14, 2025, so vulnerabilities found since then stay unpatched. Plan the move to Joomla 5.4 and then Joomla 6, and keep a tested backup in the meantime.

Should we upgrade to Joomla 5 or go straight to Joomla 6?

Aim for Joomla 6. Joomla 5 receives security fixes only from October 13, 2026 and loses them on October 12, 2027, while Joomla 6 has bug-fix support until October 17, 2028. An in-place upgrade from Joomla 3 or 4 still passes through Joomla 5.4 on the way, because Joomla’s upgrade guides cover one major version at a time.

Can we skip versions and upgrade directly from Joomla 3 or 4 to Joomla 6?

Joomla’s official upgrade guides cover one major version at a time, from 3.10 to 4, 4.4 to 5 and 5.4 to 6, and none describes a direct jump. For an in-place upgrade, plan and rehearse each step. To avoid the intermediate versions, migrate instead: build a fresh Joomla 6 site and move content, users and URLs into it.

Do we need to change PHP before upgrading?

Usually, yes. Joomla 6 requires PHP 8.3 or later and recommends 8.4. Joomla 5 accepts PHP 8.1, but the PHP project stopped security fixes for PHP 8.1 on December 31, 2025 and stops them for PHP 8.2 on December 31, 2026. Check which PHP versions your host offers and test the site on the new version before the Joomla step.

Will our template and overrides survive the upgrade?

Test them, because Joomla’s backward compatibility policy does not cover rendered markup: an override can load without errors and still look or behave differently. Joomla 3’s core template, Protostar, is not compatible with Joomla 4 and disappears in the move. Cassiopeia remains the core frontend template in Joomla 6.

Will upgrading Joomla affect our search rankings?

It can if URLs change. An upgrade in place keeps your content and menus, but routing settings, menu changes and replaced extensions can still alter addresses. Inventory important URLs, send every changed address to its closest replacement with a permanent server-side redirect (Google recommends 301 or 308) and check them at launch. Google also notes that rankings can fluctuate temporarily after significant site changes.

Sources and further reading

Sources support the stated technical context. The planning recommendations are Orvenant's assessment.

PUT THE GUIDANCE TO WORK

Bring us the problem. We’ll work through the next step.

Share what exists today and what you want to change. We can discuss the scope, dependencies and a practical way forward.

Privacy settings

Each option stays off unless you allow it. Enquiry contents and contact details are never sent to Google.

Optional measurement

Google Analytics cookies measure visits and pages, traffic sources and campaigns, approximate location and devices.

Google signals adds age, gender, interest and cross-device reports, and Google may also use this data to personalize ads. Requires Analytics.

Withdrawing stops future collection and removes this site’s accessible Google cookies. It does not erase information already received by Google. Privacy notice · Cookie notice