What is the Difference Between a Joomla Update and a Joomla Migration?

A Joomla update is a minor upgrade within the same Joomla series such as Joomla 3.10.11 to 3.10.12 or Joomla 4.4.2 to 4.4.3. These are usually performed using the "one click" Joomla Update or similar.

A Joomla migration is an upgrade from one Joomla series to a more recent Joomla series such as Joomla 1.5 to Joomla 3.x, Joomla 2.5 to Joomla 3.x or Joomla 3.x to Joomla 4.x. The Joomla 2.5 to 3.x and 3.x to 4.x upgrades are regarded as a "mini migrations".

Joomla migrations are more involved than Joomla updates, require careful planning and execution, and typically take a few hours for a simple website. An example of one important consideration when migrating is whether the current template is compatible with the new version of Joomla or whether a new template needs to be chosen and how it might be implemented.

Why Migrate?

There are many advantages in migrating to the latest version of Joomla and migrating is highly recommended to keep your website secure and to ensure there is no service interruption.

Keep your Website Secure

Joomla 1.5, Joomla 2.5 and Joomla 3.x are no longer officially supported and there is no guarantee that security patches will be issued to fix newly discovered vulnerabilities in future. To keep your website secure, you need to be running a supported version such as Joomla 4.x or 5.x. Official support for Joomla 4.x is expected to continue until October 2025.

Extension Support

Developers tend to focus their efforts on the supported versions of Joomla and it can be difficult finding extensions for older versions of Joomla which are no longer listed in the Joomla Extensions directory. This makes it difficult to add new features for older versions of Joomla.

Hosting Support

As web hosting companies keep up to date with server software such as the latest supported versions of PHP, older versions of Joomla will eventually break. For example, Joomla 1.5 websites will officially run fine on PHP 5.3, will often run fine on PHP 5.6 but won't run on PHP 7. Joomla 4.x requires PHP 7.2.5 as a minimum. PHP 5 and PHP 7 are end of life.

Older versions of PHP have unpatched security vulnerabilities that could result in your website becoming compromised.

New Joomla 3.x Features

Some of the new Joomla 3.x features include:

  • mobile friendly templates
  • better security
  • version control
  • easier updates
  • better search engine optimisation
  • better front-end editing
  • tags
  • PHP 7 support
  • custom fields

New Joomla 4.x Features

Some of the new Joomla 4.x features include:

  • improved install process
  • new accessible backend and frontend templates
  • Bootstrap 5 integration
  • new media manager
  • new publishing workflow
  • new web services
  • improved security features
  • new HTML email templates
  • improved and expanded Command Line Interface (CLI)
  • cleaner and more powerful codebase

Performance

Websites typically run faster on newer versions of Joomla and newer versions of PHP.

Joomla 1.5 to Joomla 3.x Migration

There are various ways that a Joomla website can be migrated and the best method will depend on the specific circumstances.

I recommend "SP Upgrade" as the best tool for migrating Joomla 1.5 websites to Joomla 3.x. SP Upgrade preserves user IDs which is important to (for example) ensure articles are attributed to the correct author.

Pre Migration Tasks

  • Check the hosting environment meets the technical requirements e.g. minimum PHP and MySQL versions.
  • Check there are equivalent Joomla 3.x versions of the templates and extensions that are currently used on the website or find substitutes.
  • Backup the Joomla 1.5 website and copy the backup file off-site.
  • On the Joomla 1.5 website, empty the Menu and Article trash so that trashed items are not migrated.
  • On the Joomla 1.5 website, rename any Categories under a Section with the same name to avoid confusing SP Upgrade.
  • Create a Joomla 3.x website in a sub folder e.g. /new of the Joomla 1.5 website you wish to migrate.
  • On the Joomla 3.x website, install the SP Upgrade component.
  • On the Joomla 3.x website, delete any users, menu items, categories, articles and modules that might conflict with items being migrated.
  • On the Joomla 3.x website, empty the Menu, Category, Article and Module trash by setting status to "Trashed" and clicking on "Empty Trash".

Migration Tasks

Go to Components -> SP Upgrade -> Options, enter the required information similar to below and click on "Save & Close":

  • Configuration
    • Same IDs Handling: Replace Existing items
    • Duplicate Alias: Yes
  • Database
    • Database Type: MySQLi
    • Host: enter appropriate value
    • DBName: enter appropriate value
    • Username: enter appropriate value
    • Password: enter appropriate value
    • Database Tables Prefix: enter appropriate value
  • FTP
    • FTP Host: localhost (or similar)
    • FTP Port: 21 (or similar)
    • FTP Username: enter appropriate value
    • FTP Password: enter appropriate value
    • FTP Root: /public_html

Choose what to transfer under the "Core Transfer" tab. For example, you will likely want to transfer at least the users, sections, categories, articles, menus, modules and images.

Note that menus for non core extensions will become functional when you install their extensions and non core modules will become functional when you install the corresponding module.

Click on "Transfer" to start.

The transfer can take a while depending on the size of your website. Progress is periodically updated.

If the migration times out, go back and repeat process and the migration will restart from where it left off.

Third Party Extension Transfer

SP Upgrade also has support for a growing list of third party extensions. There are some exceptions but in general:

  • Migrate core content before migrating extensions as core content may be a pre-requisite in some cases.
  • Upgrade to the latest version of the extension on the source website before migrating.
  • Install the latest version of the extension on the target website before migrating.

Post Migration Tasks

  • Save a copy of the migration log and uninstall SP Upgrade.
  • The Super Administrator account from the Joomla 1.5 website is migrated with "v15" appended to the user name and "adminv15" appended to the email address. Log in with this old account, delete the Joomla 2.5 Super Administrator account and rename the Joomla 1.5 account back to original. This retains the original user ID so that Administrator articles and Kunena posts etc. are associated with the correct author.
  • Fix any other anomalies listed in the migration log.
  • Test the new website to ensure everything works as expected.
  • Make the new website live by deleting the Joomla 1.5 files and folders in the root /public_html folder and then moving the contents of /new to the root /public_html folder.
  • In Global Configuration, update the paths for the logs and tmp folders to reflect the new location.
  • Delete the Joomla 1.5 website database.

Joomla 2.5 to Joomla 3.x Migration

Joomla 2.5 to 3.x is regarded as a "mini migration" but still requires careful planning and execution.

Pre Migration Tasks

  • Check the hosting environment meets the technical requirements e.g. minimum PHP and MySQL versions.
  • Check there are equivalent Joomla 3.x versions of the templates and extensions that are currently used on the website or find substitutes.
  • Update to Joomla 2.5.28 if not already on 2.5.28 and update all third party extensions to the latest available Joomla 2.5 versions.
  • Backup the Joomla 2.5 website and copy the backup file off-site.

Migration Tasks

I recommend the following steps for most Joomla 2.5 to 3.x migrations:

  1. Uninstall any extensions and third party templates that are not Joomla 3.x compatible.
  2. Disable the "System - Remember Me" plugin.
  3. Change Components -> Joomla Update -> Options to "Short Term Support".
  4. In Components -> Joomla Update, click on "Install the Update" to update from Joomla 2.5.x to 3.x (clear the cache and try again if the update isn't offered).
  5. Clear the Joomla cache and the web browser cache.
  6. Install the latest Joomla 3.x extensions over the top of any installed extensions.
  7. Change Components -> Joomla Update -> Update Channel to "Default" if it hasn't already been reset to "Default".
  8. Enable the "System - Remember Me" plugin.
  9. Remove the Joomla 2.5 templates (atomic, beez5, beez_20 and bluestork) as these are no longer required.
  10. Where appropriate, set Content -> Articles -> Options -> Editing Layout -> Enable Versions to "Yes".
  11. Where appropriate, set Users -> Manage -> Options -> Allow User Registration to "No".

Step 6 is important to allow installation scripts to do any Joomla 3 specific steps that may not have been run when they were originally installed on Joomla 2.5.

Post Migration Tasks

  • Test the new website to ensure everything works as expected.
  • Once the migration is completed, you may be able to select a more recent version of PHP via your hosting control panel.

Joomla 3.x to Joomla 4.x Migration

Joomla 3.x to 4.x is regarded as a "mini migration" but still requires careful planning and execution.

Pre Migration Tasks

  • Check the hosting environment meets the technical requirements e.g. minimum PHP and MySQL versions.
  • Check there are equivalent Joomla 4.x versions of the templates and extensions that are currently used on the website or find substitutes.
  • Update to the latest version of Joomla 3.x if not already on the latest version and update all third party extensions to the latest available Joomla 3.x versions.
  • Backup the Joomla 3.x website and copy the backup file off-site.

Migration Tasks

I recommend the following steps for most Joomla 3.x to 4.x migrations:

  1. Uninstall any extensions and third party templates that are not Joomla 4.x compatible or no longer needed.
  2. Empty Article, Category, Menu and Module trash.
  3. Set System -> Global Configuration -> Server -> Error Reporting to "Maximum".
  4. Change Components -> Joomla Update -> Options to "Joomla Next".
  5. In Components -> Joomla Update, check and follow the advice under the "Pre-Update Check" tab. Once any issues have been resolved, click on the "Install the Update" button under the "Live Update" tab to update from Joomla 3.x to 4.x (clear the cache and try again if the update isn't offered).
  6. Install the latest Joomla 4.x extensions over the top of any installed extensions.
  7. Change System -> Update -> Joomla -> Options -> Update Channel back to "Default".
  8. Set System -> Global Configuration -> Server -> Error Reporting back to "None".
  9. The Joomla 3.x default admin and site templates (e.g. Beez3 and Protostar) are removed automatically during the update.

Step 6 is important to allow installation scripts to do any Joomla 4 specific steps that may not have been run when they were originally installed on Joomla 3.x.

Post Migration Tasks

  • Test the new website to ensure everything works as expected.
  • Once the migration is completed, you may be able to select a more recent version of PHP via your hosting control panel.

Migrate My Joomla Website

Migrate from Joomla 1.5 to Joomla 3.x

The cost of migrating from Joomla 1.5 to Joomla 3.x depends on the number of third party extensions and whether there are Joomla 3.x equivalents, whether there is an equivalent Joomla 3.x template and other factors. A straightforward Joomla 1.5 to Joomla 3.x migration typically takes at least five hours and costs from around $450.

Contact me for a quote.

Migrate from Joomla 2.5 to Joomla 3.x

The cost of migrating from Joomla 2.5 to Joomla 3.x depends on the number of third party extensions and whether there are Joomla 3.x equivalents, whether there is an equivalent Joomla 3.x template and other factors. A straightforward Joomla 2.5 to Joomla 3.x migration migration typically takes at least three hours and costs from around $250.

Contact me for a quote.

Migrate from Joomla 3.x to Joomla 4.x

The cost of migrating from Joomla 3.x to Joomla 4.x depends on the number of third party extensions and whether there are Joomla 3.x equivalents, whether there is an equivalent Joomla 4.x template and other factors. A straightforward Joomla 3.x to Joomla 4.x migration migration typically takes at least three hours and costs from around $250.

Contact me for a quote.