Backing up WordPress websites is a key part of what we do here at Barrel Roll. It’s not unusual to see a theme or plugin update cause issues or to discover an author accidentally deleted something they shouldn’t have. When those things happen, you need to have a reliable backup that you can quickly restore from.
We spent a lot of time testing backup plugins when we launched our WordPress maintenance service back in 2015 and settled on UpdraftPlus for its combination of features, reliability, and support. That doesn’t mean we aren’t open to new players in the field, so when we heard about WP Time Capsule’s incremental backup plugin we decided to give it a shot and see how it compares.
About The Plugins
WP Time Capsule (WPTC) was introduced in June of 2016, making it the new kid compared to UpdraftPlus (UDP) which debuted in August 2011. While UDP boasts an active install base of more than one million sites, WPTC is currently running on around 10,000.
Each plugin runs on your site and uses server resources to backup your data. WPTC requires an external storage platform – Google Drive, Amazon S3, or Dropbox – to send data to, while UDP can store backups locally on your server, via FTP, or on any of dozen remote storage locations, as well as Email.
WPTC provides a convenient management interface where all of your sites are listed with some basic data and shortcuts. Most of the functionality of WPTC is handled on the individual sites, which could be a problem if you are managing dozens or hundreds of sites and want to change a setting. There aren’t currently any bulk editing options in the management interface, though the developers have told us they are coming soon.
UDP offers UpdraftCentral for centralized management, an add-on product that is free for the self-hosted version or up to $39 per month for the cloud version, depending on how many sites you want to manage. More details here.
The Argument For Incremental Backups
Nearly all major WordPress backup solutions perform complete or partial backups on a schedule or on demand. For example, let’s say you want to update a plugin. UpdraftPlus will simply backup the entire plugin folder and the database before the update occurs. If things go wrong, you just restore the backup.
That’s great if you only need to restore when things go wrong with updates, but what if your site gets hacked in the middle of the day or maybe a user deletes a bunch of posts? Then you’d have to restore from your last regularly scheduled backup. Maybe that was last night, or maybe it was last week.
Enter incremental backups. The idea here is simple; create an initial backup of everything on the site, and from then on just backup changes. This limits the amount of backup data you’ll need to store – sometimes dramatically – and gives you much more granular control over your backups, allowing you to restore from virtually any point in time after a change occurred on your site.
Incremental Backups Are Not A New Concept
For decades, server administrators have been using incremental backup solutions to protect data on servers all across the world. Devices from companies like Barracuda can easily be configured to monitor multiple servers for file changes and automatically backup each file after a change occurs. They are battle tested and work well.
What’s relatively new is having incremental backups available in WordPress via an affordable plugin. UDP has been promising incremental backups for years but has only recently added “experimental” functionality via WP-CLI. There is still no release date for incremental backup functionality in UpdraftPlus.
When Real-Time Really Isn’t
WP Time Capsule claims to offer real-time incremental backups, meaning your changes are backed up as they happen. They state that “Every change that happens on your website is backed up immediately. This means that your backup is always up-to-date, automatically.”
However, in our testing, we found that some updates were missed. For example, when we updated a theme we didn’t see a backup occur until 15 minutes later. We then updated some code in a PHP file and that wasn’t detected at all. It was eventually backed up to remote storage during a scheduled backup, but the job wasn’t labeled and the file wasn’t listed as being backed up so we only knew it was done we when looked in the Google Drive interface. We would have had to manually restore the file from the remote storage location, which clearly isn’t ideal.
An incremental backup solution that can’t reliably backup in real-time surrenders that value proposition, and if you can’t be sure all of your changes are being backed up after they are made, what’s the point of using a real-time backup solution at all?
What’s Being Backed Up?
One issue we’ve run in to with WPTC is a lack of information about what’s going on. For example, database backups never show you what’s been changed in the SQL file. That can make it difficult to tell what restore point to use. There is also nothing like a file/folder tree with file version information to reference, which would be really helpful with incremental backups.
Let’s say I just want to restore footer.php to a previous version. With a file browser, I could just go to the file and look for the desired version and restore it. That’s how most file server backup software interfaces work. You can do that with WPTC, but only by going to the third party cloud storage provider (Amazon, Google, or Dropbox), and looking for the information there first. Then, you can go back into the site and restore.
With UpdraftPlus, each backup clearly labels what it is and what’s included (and the logs have a ton of data in them). You can schedule backup jobs to occur as often as every four hours.
Backing Up Before Manual Updates
WPTC has an option to perform a backup prior to manually updating plugins and themes, but in testing, we’ve only seen a database backup performed prior to updates. This may be because the software determined there had been no changes to the files since the last scan of their files, but of course there wouldn’t be prior to updating them. The option seems to be there solely to create a visual reference point in the list of restore points, and it’s not enabled by default.
Backing up prior to updating in UDP is a snap; you just check the box, and it’s enabled by default.
WP Time Capsule’s primary feature is the ability to easily restore a backup from any point in time after any change is made to your site – no matter how minor.
However, the restoration process can be painfully slow if you’ve got a lot of changes to restore. You’ll get an Email during the process which states “Your website will look a bit messed up until the restore process is successfully completed.” Maybe that Email language hasn’t been updated, because our test site was simply placed into maintenance mode which means it was completely down during the restoration.
Restoring in UDP takes a fraction of the time that it does in WPTC and you’ll have a much better sense of what it is that you’re restoring because UDP shows you what’s included prior to and after the restore process is complete. We couldn’t find that information anywhere in WPTC.
What UpdraftPlus Could Improve
Over the past three years we’ve had a generally favorable experience with UDP, but that doesn’t mean there isn’t room for improvement. The interface has always been a bit of a mess and that issue has only grown as more features have been added. It can be a bit overwhelming at first, especially once you move from the free to the premium version.
Technical support, while helpful, takes about a day to respond and their tickets don’t get separated properly in Gmail (and others, I’d imagine), so threads get jumbled up and confusing when working on multiple tickets at once. UDP troubleshooting generally ends up revolving around excluding things from backups, reducing the file size splits, or changing settings on the server to give UDP more resources to work with.
Once you’ve got UDP up and running, it’s pretty reliable. We rarely have ongoing issues with UDP – even those hosted on inferior hosts like GoDaddy. That said, it can take a little more work than we’d like to get reliable backups on underpowered servers.
When things do go wrong with UDP, it tends to fall apart and leave tons of old backup data on the local server. We’ve often seen this fill up allocated storage and sometimes even bring sites down until the data is manually removed. UDP definitely needs a better way of handling this.
What WP Time Capsule Could Improve
It’s not discussed on their website, but WPTC relies on the versioning systems of their three chosen remote storage providers to provide incremental backups. That means that a lot of functionality you’d want to see, like the ability to download a specific version of your complete site, would be difficult or maybe even impossible.
It also means that you won’t be able to do everything from within WPTC; you’ll need to bounce between that and your storage provider, which adds time and complexity right when you don’t need either of those.
Perhaps most importantly, but not mentioned at all on the WPTC site, is the fact that only Amazon S3 gives you the option for 365 days of file versioning. WPTC’s promise of a “365 Restore Window” should have a big asterisk beside it telling folks that’s only true if you use Amazon S3. Google Drive allows for 30 days and Dropbox offers 120 days, but only for Professional plans or higher, which start at $199 per year.
Another issue is performance. One of WPTC’s main selling points is that it’s “Light & Fast”. “With no zipping or multiple copies of the same files involved, the load on your server is not much higher than a visitor’s website visit. Your host will love it.”
However, during our testing, we noticed massive spikes in CPU cycles throughout the intial backup process – which took over six hours to complete for a 240MB site.
Executions rose, too, and have been noticeably higher even after the initial backup was complete.
While UDP and other backup plugins that compress files often generate increased CPU usage during their backups, we’ve never seen one go on for six hours, nor do they cause ongoing increases in executions because they are largely dormant when not running. WPTC runs constantly, which could really hurt performance on larger sites and mean that initial backups could take days instead of hours and cause certain popular hosts like Siteground to suspend your account when you exceed your CPU usage limits.
Both plugins are available for free on WordPress.org, though WPTC is only a free trial and requires account registration. After the 30 day trial, you’ll be looking at between $49 and $199 annually, depending on your needs.
UDP is free but in order to unlock all of the external backup locations and other features you’ll need the premium version which runs between $70 and $195 annually with 40% off renewals. UpdraftCentral is free for the self-hosted version or an additional $9 to $39 per month for the cloud variation.
You’ll want remote storage for either solution, so be sure to factor that into your budget. There are tons of options out there (though WPTC currently only supports Google Drive, Amazon S3, and Dropbox), and they are all relatively affordable.
UDP will probably end up being the less expensive option over time, given their 40% discount for renewals and free self-hosted version of UpdraftCentral. However, if you go the cloud route for UpdraftCentral you’ll be spending a bit more than you would for WPTC but you’ll get much more advanced centralized management functionality.
So, which plugin should you use to backup your sites? We’d go with UpdraftPlus. It’s more reliable, has a much larger feature set, and will get you up and running faster when disaster strikes. About the only thing it doesn’t do is incremental backups, but we’re not sure that’s such a good idea on a WordPress site. From what we’ve seen with WP Time Capsule, it doesn’t look like incremental backups are going truly to be real-time or reliable enough in the near future.
That’s not really WP Time Capsule’s fault. Most WordPress servers are hosted in shared environments where they only get a fraction of the total server resources. There are limits on those, and if they are exceeded, your account could be suspended. WPTC has to slow down the initial backups (far too much, we think) and limit the real-time scanning frequency to account for this, but that reduces the functionality and value of their primary feature.
WPTC has also chosen to rely on the file versioning systems of third parties, which they can’t control. They could build an interface to make it easier for users to manage the backups, but in the end, they are tied to the functionality provided by the remote storage companies. Google may decide to remove file versioning one day; then all of your archival data would vanish. The only other option would be to offer their own remote storage system, but I’m sure that would dramatically increase the overall cost of using WPTC and increase privacy and security concerns.
WP Time Capsule Pros
- Easy to setup and use. Sometimes you don’t need a lot of advanced options or management tools. WPTC is quick and easy to setup.
- Affordable, with a free trial. It’s great to be able to try before you buy, and even if you do decide to purchase, WPTC’s pricing is fair.
- Responsive support. We’ve had a great experience with their support team.
WP Time Capsule Cons
- Only Amazon S3 provided 365 days of restore points. WPTC markets itself as having a “365 Day Restore Windows”, but there should be a rather large asterisk beside that saying it’s only if you use Amazon S3 for storage. Dropbox is 120 days (with a paid plan) and Google Drive is just 30.
- Doesn’t pick up on file changes reliably. For example, if you update a file it won’t be backed up until the next automated scan. What if you edit that file several times and want to roll back to a certain revision?
- Questionable default settings. MP3 files and PDFs, among many others, are excluded by default. The developer said that’s because “For most people they aren’t important…” but we disagree. If a site crashed and all of that data was unrecoverable and not included in the backups, you’d have a lot of explaining to do. Creating backups before manual updates isn’t enabled by default, either, though this only generates a restore point without doing much else.
- You have to manually re-use Google Drive tokens. After the first five sites, you have to manually copy an authentication token and re-use it on any additional sites. UDP handles this for you automatically.
- Can cause massive increases in server resource usage. Some hosts, like Siteground, limit your use of CPU cycles per day and month. WPTC will send those numbers through the roof on the initial backup, and because it takes so long to complete, that could result in your account being suspended.
- Free version good enough for many. Most of the core UDP features are available for free, and the paid version is affordably priced.
- Full of features. You can do just about anything you can think of with UDP, except incremental backups and multiple schedules.
- Reliable. Once you’ve got UDP up and running, it’s pretty much set it and forget it. You can setup an Email alert to be sent if things go wrong, so you’re never in the dark.
- Tons of data. Sometimes, UDP can be overwhelming in the amount of logging data it provides. That can be very useful if things go awry, however.
- Doesn’t handle failure well. When things go wrong with a backup, UDP doesn’t always do a great job of letting you know. There is an option to send an Email when issues occur, but that doesn’t get sent if the backup doesn’t run at all or if the backup job hangs up.
- Tech support isn’t the best. They aren’t the worst, either, but it can take a while to get a response and a lot of times it’s things you’ve already tried.
- Can be tough on low-end servers. If you’re hosting a medium to large scale site on GoDaddy (why would you, though?), you will probably have problems backing up with UDP.
- Can’t setup custom schedules. Although you can backup files and databases at different times, that’s as granular as you can get. You can’t setup custom schedules and define exactly what to backup and at what times.
- Leaves data behind. When backups fail, massive amounts of data can start to pile up because UDP doesn’t handle pruning failed backups well.