This feature is only available in Akeeba Backup Professional.
Displayed on the Plugin Manager as System - Backup on update
This feature only applies when you update your site using the Joomla Update component from your site's backend. It does not apply when you update your site from the command line, a third party service, your host, or using Joomla's automatic updates introduced in October 2025 with Joomla 5.4.0 and 6.0.0.
All current Joomla! versions include the Joomla! Update component (originally developed as part of Admin Tools by our company, later donated to Joomla! and now maintained by the Joomla! team) which allows you to update Joomla! to its latest version. When you are updating between major and minor versions of Joomla! some extensions on your site might experience problems or make your site completely inaccessible. It's always a good idea to take a backup of your site before upgrading Joomla!. Yet, how many times did you forget to do it only to end up with an inaccessible site and a furious client? Our plugin is here to automate this process for you.
When this plugin is enabled it will "see" your attempt to update Joomla! and automatically launch Akeeba Backup to take a backup of your site. Once the backup is successfully complete it will take you back to Joomla! Update, allowing it to install the new Joomla! version. All this happens automatically. You and your clients can no longer forget to take a backup before updating Joomla!: the backup will be taken automatically.
Editing the plugin you will find the sole option, Backup Profile, which lets you define which Akeeba Backup profile to use for these automated backups. If you don't specify anything the default backup profile (the one with ID=1) will be used.
We recommend using a backup profile which stores a copy of the backup archive in external storage (e.g. Amazon S3, Dropbox or Box.com) on top of leaving a copy of the backup archive on your server. This way you have maximum protection against any kind of accidents caused by a failed or problematic Joomla! update.
When the plugin is enabled you will see a message reminding you of the status of Backup on Update when you visit the Joomla! Update component. You can temporarily disable (and re-enable) the backup on update feature by clicking the button in that message.
Joomla Update does not have a provision for taking any action before or after updating your site. It lacks something like an event a plugin could handle. Even if it did offer one, running a backup usually takes longer than a single page load. The backup needs to run over the course of several page loads to complete. For this reason, you need to explicitly take a backup before updating your site.
The Backup On Update plugin introduces an explicit backup before Joomla Update tries to download and install the update. Essentially, it hijacks the URL used by Joomla Update to initiate the backup download. The first time you try to visit that URL, the Backup On Update plugin takes you to the Backup page of Akeeba Backup to start a backup automatically – it's the same thing as if you had used a one-click backup button in Akeeba Backup's interface. When the backup is complete, you are redirected to Joomla Update's page which starts the download of the Joomla update package file. When that's complete, Joomla Update redirects you to a page which extracts the update package and runs the post-upgrade code. In short, taking a "backup on update" is a magic trick. When you try to install the update you are redirected to an one-click backup which then redirects you back to Joomla Update to actually start the update.
When you are using a third party service such as Watchful, mySites, or Akeeba Panopticon something similar happens. The service knows there is an update for your site and that it needs to install it. It first runs a backup using Akeeba Backup. Only when the backup is complete does it actually try to install the update. Again, it's a magic trick. The service actually takes two distinct actions: backup and update. It's just presented to you as one.
Joomla's automatic updates also use a third party service. It's a service operated by the Joomla project and hosted on joomla.org infrastructure. It's not your site, installed on your server, updating itself. It's the third party service hosted on joomla.org updating your site. This service DOES NOT have a provision for running backups. It also has some further restrictions we will explain further below.
If you are using the Joomla! command line interface (CLI) to run an update with php /path/to/site/cli/joomla.php core:update you have the same problem. It does not have a provision to run any third party code before the update. You have to explicitly take a backup with php /path/to/site/cli/joomla.php akeeba:backup:take before running the core:update command to update Joomla itself.
If you are using your host to automatically update Joomla (strongly discouraged as these solutions are known to cause issues in many cases!) you also have the same problem. These solutions DO NOT initiate a backup before installing the update.
The automatic updates feature in Joomla is aimed at exactly one kind of site: the "set up and forget" kind.
There are many small sites out there –very small business sites, social club sites, small blogs– with very few visitors and a site administrator who doesn't proactively monitor and tend to the site. These sites may run on vastly outdated versions of Joomla with known security issues for months or years. These sites are a ripe target for attackers. As a result, these sites do get hacked. Their owners blame Joomla –which at this point has fixed the security issues exploited to hack the site months or years earlier!– instead of their own subpar site management practices. The only solution for these sites is to have updates installed automatically, at the first available opportunity. That's why automatic updates exist in Joomla.
Of course, you may have now realised a few problems with this approach.
The update code does not run on your site. It runs on Joomla's infrastructure. A secure key is created when you enable this feature, but the fact remains that this key is now in someone else's computer which uses it to install code on your site. Depending on your jurisdiction and business sector this may be illegal. That's why Joomla asks you to explicitly opt into this feature.
You do not have any control over what and when. The automated updates will install any available update, any time the day, any day of the week and month. You accidentally left your Update Source to Joomla Next and there's a new major version? It will be installed, even if it breaks your site. Did Joomla release an update during a period of time you're not in the office, and possibly don't even have access to the Internet? The update will be installed anyway. Did Joomla's infrastructure decide to install the update in the middle of your workday, breaking customer orders, or a live streamed event you had been planning for months? Tough luck, the update runs anyway.
You cannot use automatic updates on sites which are not directly accessible on the Internet, such as as intranet sites, or locally hosted sites.
There are no third party extension updates taking place before the update, even if it's an update to a major version which requires such updates not to break your site.
There are no backups.
For these reasons, we recommend that our clients SHOULD NOT use this Joomla feature on most of their sites. We explicitly state "our clients" because the majority of our clients are actively maintaining their sites which are more complex than a "set up and forget" kind of site. Having random updates happening at random points in time without third party extension updates and backups is a recipe for disaster for the kind of sites our clients tend to run. For this reason, our clients are most likely better off disabling automatic updates altogether.
Instead, we recommend disabling automated updates and using one of the following alternatives.
Update manually. Log into your site's backend and run the update. The Backup On Update plugin will make sure a backup is taken before the update. This is a good solution if you have a small handful of fairly small to medium sized sites. If you are unsure, that's what you most likely need.
Use a site monitoring service. If you have more than a small handful of sites you should invest in a site monitoring service. You can use a managed service such as mySites and Watchful, or you can use a self-hosted service such as Akeeba Panopticon (the only free option we know of; that's why we made it) or YourSites. You can choose when to update, which versions to update to, and even manage the updates of installed third party extensions. This is a great solution for small to medium sized web agencies managing tens to a few hundreds of sites. It is also a good solution for corporate and enterprise settings with a few, high value sites managed by a team with varying skill levels across its members.
Use the CLI, typically as part of a remote management strategy using a solution like Ansible or Puppet. Both Akeeba Backup and Joomla Update offer integration with the Joomla CLI Application. You can take a backup and then update your site. Combining that with a remote management solution like Ansible or Puppet allows you to automate backups and update across hundreds of sites and servers. This is a very advanced solution for large web agencies and enterprises.
Akeeba Backup Professional can be used in all of these settings and use cases. Each use case will make use of a different feature we provide in Akeeba Backup Professional. Manual updates use the Backup On Update plugin. Site monitoring services use our JSON backup API and Joomla API application integration. CLI / remote management strategies use our integration with the Joomla CLI application. This is a deliberate strategy on our part; we understand the diversity of use cases and skill levels across our multitude of clients, choosing to support all of them.