CloudScale Backup & Restore
Most backup plugins fail exactly when you need them most: on your biggest site, or the site that’s grown since you installed them. All-in-One WP Migration’s free version caps imports at 512MB (its Unlimited extension costs $69/year to remove the cap). Duplicator’s free version starts failing and timing out around 500MB, with no chunking until you upgrade to Pro. UpdraftPlus has no hard site-size limit, but its free version is restricted to a single cloud storage destination, so you’re stuck with whatever free-tier space that one provider gives you. CloudScale Backup & Restore has no site-size limit, no destination limit, and no plan wall. It reads your database in 500-row chunks and never loads the whole thing into memory, so a 50MB site and a 50GB site back up the same way, reliably, without hitting your host’s memory limit or execution timeout. It backs up to five destinations at once, for free: Amazon S3, Google Drive, Dropbox, Microsoft OneDrive, and CloudScale’s own Managed Cloud Backup, and every destination you enable gets a copy of every backup. Any Size, No Limits Streams the database in 500-row chunks via $wpdb; never loads the full database into memory, regardless of size set_time_limit(0) and ignore_user_abort(true) on every backup and restore, so PHP’s execution-time limit never cuts a large operation off mid-run Restore uses a character-level SQL parser that correctly handles quoted strings, escaped characters and multi-line INSERT statements, on files of any size System Info panel shows exactly which backup and restore method, and memory limits, your server is using Back Up to Five Destinations at Once Amazon S3, Google Drive, Dropbox and Microsoft OneDrive, using your own accounts, free, with no destination limit CloudScale Managed Cloud Backup: $5/month for 750GB of off-site storage on Amazon S3 Glacier Instant Retrieval, no separate cloud account needed Configurable retention: keep the last N backups on every destination, deleted automatically after each run. Managed copies are additionally capped at 90 days in storage, enforced even if the site stops running; your own cloud destinations follow whatever lifecycle rules you set on your own bucket Every destination you enable receives every backup automatically What It Backs Up Choose any combination, packaged into one .zip with a descriptive filename (for example backup_db-media-plugins_2026-02-21_09-10-00.zip) that reflects exactly what it contains: Full WordPress database: all tables, all data Media uploads folder (/wp-content/uploads/) Plugins folder (/wp-content/plugins/) Themes folder (/wp-content/themes/) Optional Site Root Extras: root-level files like php.ini, robots.txt, favicon, .well-known/, and search-engine verification files Optional Server Config Snapshot: read-only reference copies of your nginx/Apache config, PHP runtime settings and MySQL variables Post-restore environment comparison flags PHP version, missing extensions, lower memory/upload limits, or MySQL version differences between the backup’s original server and the one you restored onto Every zip includes backup-meta.json: plugin version, creation timestamp, WordPress version, site URL, table prefix, and which components were included, so you can verify a backup without restoring it Automatic backups are off by default. Run your first backup manually to confirm everything works on your server, then configure a schedule if you need one. Restore Safely Clicking Restore DB opens a confirmation modal that: Shows the exact backup file name and creation date you are restoring from Displays a warning box explaining what will happen step by step Requires you to tick a checkbox: “I have taken a server snapshot and understand this will overwrite the live database” Only enables the Restore button after that checkbox is ticked During restore, WordPress’s native .maintenance file is created so visitors see the standard maintenance page. It is always removed when restore finishes, whether the restore succeeded or failed. The plugin header shows a live badge indicating whether the site is online or in maintenance mode. Disaster Recovery Failover Mode: a standby server never creates, schedules, or allows a manually- or WP-CLI-triggered backup while flagged as a failover target, and says so on every admin screen EC2 AMI Snapshots: create a full machine image of your AWS-hosted server directly from the plugin, with optional reboot for filesystem consistency, plus AMI history and status polling Security Backup directory uses a randomised, non-guessable name, not a fixed predictable path Protection covers Apache (both .htaccess syntaxes), nginx, IIS (web.config), and a silent index.php, plus 0700 permissions, not just an .htaccess that nginx and IIS ignore A daily self-check fetches its own backup URL to confirm the directory genuinely isn’t publicly readable, and warns you with the exact server rule to add if it is All passwords passed to CLI tools via environment variable, not shell arguments Developer & Automation Trigger a backup from WP-CLI or a system cron job Configurable scheduling: any interval in days, and the exact hour of day to run Full backup history: view all stored backups with filename, type label, size, creation date, and age; download any backup directly from the WordPress admin One-click migration: restore the database from any stored backup or by uploading a .zip or .sql file, on the same host or a new one External services This plugin optionally connects to third-party services when those features are configured by the site administrator. No data is sent to any external service unless the administrator has explicitly enabled the relevant integration. Telegram Bot API (optional notifications) When Telegram is configured, the plugin sends backup, restore, and plugin rollback notifications, plus error alerts, to the administrator-configured Telegram chat via the Telegram Bot API. The message contains the site name, event status, and (for error alerts) a summary of the PHP error, file name, and line number. No personal visitor data, post content, or backup data is transmitted. No data is sent unless a Telegram bot token and chat ID have been entered in the plugin’s Notifications settings. API endpoint contacted: https://api.telegram.org/bot{token}/sendMessage Terms of Service: https://telegram.org/tos Privacy Policy: https://telegram.org/privacy Telegram Bot API documentation: https://core.telegram.org/bots/api Amazon S3 (optional cloud backup) When S3 settings are configured, the plugin uploads backup zip files directly to the administrator’s own S3 bucket via the AWS S3 REST API (no external tools required). Only the backup zip file is transmitted. Credentials (bucket name, access key ID, secret access key, region) are stored in the WordPress options table and are never sent anywhere except to the AWS S3 endpoint. API endpoint contacted: https://s3.{region}.amazonaws.com/ Terms of Service: https://aws.amazon.com/service-terms/ Privacy Policy: https://aws.amazon.com/privacy/ Google Drive (optional cloud backup) When Google Drive settings are configured, the plugin transfers backup zip files to the administrator’s own Google Drive account using the Google Drive v3 REST API and OAuth 2.0. No data is sent unless the administrator has completed the OAuth authorisation flow (entered a Client ID and Client Secret from Google Cloud Console and clicked “Connect to Google Drive”). Only the backup zip file is uploaded. OAuth tokens (access token and refresh token) are stored in the WordPress options table. API endpoint contacted: https://www.googleapis.com/ and https://oauth2.googleapis.com/ Terms of Service: https://policies.google.com/terms Privacy Policy: https://policies.google.com/privacy Dropbox (optional cloud backup) When Dropbox settings are configured, the plugin transfers backup zip files to the administrator’s own Dropbox account using the Dropbox v2 REST API and OAuth 2.0. No data is sent unless the administrator has completed the OAuth authorisation flow (entered an App Key and App Secret from the Dropbox App Console and clicked “Connect to Dropbox”). Only the backup zip file is uploaded. OAuth tokens are stored in the WordPress options table. API endpoint contacted: https://api.dropboxapi.com/ and https://content.dropboxapi.com/ Terms of Service: https://www.dropbox.com/terms Privacy Policy: https://www.dropbox.com/privacy Microsoft OneDrive (optional cloud backup) When OneDrive settings are configured, the plugin transfers backup zip files to the administrator’s own Microsoft OneDrive account using the Microsoft Graph REST API and OAuth 2.0. No data is sent unless the administrator has completed the OAuth authorisation flow (entered an Azure App Client ID and Client Secret and clicked “Connect to OneDrive”). Only the backup zip file is uploaded. OAuth tokens are stored in the WordPress options table. API endpoint contacted: https://graph.microsoft.com/ and https://login.microsoftonline.com/ Terms of Service: https://www.microsoft.com/en-us/servicesagreement/ Privacy Policy: https://privacy.microsoft.com/en-us/privacystatement CloudScale Managed Cloud Backup (optional, paid service) When the administrator subscribes to the optional CloudScale Managed Cloud Backup service, the plugin contacts the CloudScale broker to request a short-lived, prefix-scoped Amazon S3 access token, then uploads backup zip files directly to CloudScale’s managed S3 storage (hosted in the EU, eu-west-1). Only the site’s domain name, the subscription licence key, and the backup zip file are involved; the backup bytes are uploaded straight to S3 and do not pass through the broker. No data is sent unless the administrator has subscribed and entered a licence key. API endpoint contacted: https://api.cloudscale.consulting/ (broker) and https://cloudscale-backup-restore-global.s3.eu-west-1.amazonaws.com/ (storage) Terms of Service: https://cloudscale.consulting/terms Privacy Policy: https://cloudscale.consulting/privacy PayPal (optional, payment for Managed Cloud Backup) Subscription payments for the optional CloudScale Managed Cloud Backup service are processed by PayPal. Payment details are entered on PayPal’s own hosted checkout page and are never collected, stored, or transmitted by this plugin. When the administrator starts a subscription, the subscriber’s email address and a PayPal order amount ($5.00 USD) are sent directly from the WordPress server to the PayPal REST API (api-m.paypal.com) to create a checkout session; no payment-card data is handled by the plugin or the WordPress site. No data is sent unless the administrator chooses to subscribe to the paid service. API endpoint contacted: https://api-m.paypal.com/ (live) or https://api-m.sandbox.paypal.com/ (sandbox testing) Browser-loaded script: https://www.paypal.com/sdk/js – PayPal’s JavaScript SDK, loaded into the plugin’s admin screen only after an administrator opens the subscription checkout. PayPal requires the SDK be served from its own origin so a compromised build can be revoked, so it cannot be bundled with the plugin. Terms of Service: https://www.paypal.com/us/legalhub/useragreement-full Privacy Policy: https://www.paypal.com/us/legalhub/privacy-full AWS EC2 / AMI snapshots (optional, AMI snapshot feature only) When the AMI snapshot feature is used, the plugin reads instance metadata (instance ID and region) from the local EC2 Instance Metadata Service at http://169.254.169.254. This address is only reachable from within an EC2 instance and no data leaves the server at this step. AMI creation, status poll, deregister, and snapshot delete requests are then issued directly to the AWS EC2 REST API (no external tools required). The same AWS credentials (access key ID and secret key) used for S3 are used; if none are configured the plugin attempts to use the EC2 instance role via IMDS. API endpoint contacted: https://ec2.{region}.amazonaws.com/ Terms of Service: https://aws.amazon.com/service-terms/ Privacy Policy: https://aws.amazon.com/privacy/ Automatic Crash Recovery: health check probe (optional) When Automatic Crash Recovery is enabled, the plugin periodically sends an HTTP request to the administrator-configured health check URL to verify the site is responding. The URL defaults to the site’s own home URL. No personal data is transmitted. The request is a plain GET with no authentication payload. The same probe is made when the administrator clicks “Test Health Check” in the plugin settings. If a system-cron watchdog script is installed on the server, that script also probes this URL independently via curl. The health check URL is set by the administrator and is never shared with any third party. No Terms of Service or Privacy Policy apply (the request goes to a URL you own). Files written outside the plugin folder The Automatic Crash Recovery feature writes a single file outside the plugin folder when it is enabled: wp-content/fatal-error-handler.php. This is a WordPress-recognised drop-in file (documented in the WordPress Developer Handbook under get_dropins()). WordPress core checks for this file on every request; if present, it replaces the default fatal-error screen with a custom handler. The plugin uses this mechanism to show a branded recovery page to visitors while a crash is being fixed, instead of a blank white screen. The file is written using the WordPress Filesystem API (WP_Filesystem). It is only written when the feature is enabled, only overwritten if it was written by this plugin (identified by an internal marker), and is deleted when the feature is disabled or the plugin is uninstalled. No personal data is stored in this file. Privacy Policy CloudScale Backup & Restore does not collect, transmit, or store any personal data. All backups are stored locally in the cloudscale-backups/ folder inside your WordPress uploads directory. No telemetry or analytics are sent by this plugin. Optional cloud backup features (S3, Google Drive, Dropbox, OneDrive, AMI snapshots) transmit data only when explicitly configured by the site administrator. See the External services section above.
UpdraftPlus
The UpdraftPlus Backup & Migration Plugin is trusted by the WordPress community to backup, restore and migrate their WordPress websites. UpdraftPlus is actively installed on more than 3 million websites around the world. Backup with UpdraftPlus UpdraftPlus is the world’s highest ranking and most popular scheduled backup and migration plugin. Backup to your preferred storage location and restore in just three clicks. Backup to Dropbox, Google Drive, Amazon S3 (or compatible), Rackspace Cloud, FTP, DreamObjects, Openstack Swift or email. The paid version also allows you to backup to Microsoft OneDrive, Microsoft Azure, Google Cloud, Backblaze B2, SFTP, SCP, pCloud, WebDAV or UpdraftVault, our integrated storage option for UpdraftPlus. Backup manually or schedule to run every 2, 4, 8 or 12 hours, daily, weekly, monthly or fortnightly. Restore with UpdraftPlus Your WordPress website is vulnerable. Your site may get hacked. Something could go wrong with an update or your server could crash. You might need to reverse a change made or a mistake caused by human error. Whatever the reason, you can restore your WordPress website in just a few clicks with UpdraftPlus. Choose which components to restore (e.g. plugins, themes, database etc.), click again to restore, then click again to return to the main screen. Migrate with UpdraftPlus It’s easy to migrate your WordPress website to another web host, server or domain with this free version of UpdraftPlus. To migrate, simply download your database, plugins, themes etc. from the source site, then upload them into your destination site. When migrating, a built-in search-and-replace engine identifies old strings and replaces these to reflect the new location. UpdraftPlus saves you time and reduces the risk of broken links or missing files associated with manual migrations. Why UpdraftPlus? Writing a reliable backup and migration plugin that ‘just works’ consistently across millions of different WordPress deployments is hard. UpdraftPlus is relied upon to do exactly that. We’re trusted and actively deployed on more websites around the world than any other WordPress backup and migration plugin. UpdraftPlus: Backs up, migrates and restores Offers a huge number of remote storage locations Allows you to schedule backups, so you can ‘set and forget’ Is comprehensive and easy to use Is proven to work on over 3 million sites. UpdraftPlus Premium The free version of UpdraftPlus will back up and migrate your website perfectly well. However if you need more features and options you can purchase our Premium version. Backup and Migrate with UpdraftPlus Premium, and: Get automatic backups before updates. Restore the very latest version if a WordPress or plugin update breaks your site. Backup Incrementally. Changes are added to the master, saving server resources vs repeatedly backing up in full. Get more remote storage options including Microsoft OneDrive, SFTP, Microsoft Azure, WebDAV, Google Cloud, SCP, Backblaze and pCloud. Get 1GB of integrated storage with UpdraftVault for 99.999% reliability, redundancy and scalability. Get more control over how many backups are stored in a specified interval. Restore from other backup plugins including BackWPup, BackupWordPress, Simple Backups and more. Run backups at set times e.g. during periods of low traffic. Backup to more than one location for added protection. Get detailed reports. Includes cryptographic checksums so you can verify the integrity of the backup files and more. Get Premium migration. Migrating to the destination site is more direct and can be done from the source site. Get Multisite / multi-network compatibility. Backup non-WP files and databases e.g. tables belonging to your e-commerce store or customisations to WordPress core. Get database encryption. Manage your backups and migrations from the WP-CLI. Get Premium Support. Find out more on our comparison page. UpdraftPlus Premium is available for purchase here. Managing multiple websites? UpdraftCentral is a powerful remote control dashboard for WordPress that allows you to manage your backups, as well as updates, users, pages, posts, plugins and themes from one central location. Choose between: UpdraftCentral (free, self-hosted) UpdraftCentral Premium (paid-for, self-hosted) UpdraftCentral Cloud (paid-for, fully-hosted) Optimize your sites centrally by combining the power of WP-Optimize and UpdraftCentral or manage your backups centrally by combining the power of UpdraftPlus with UpdraftCentral. Need to create a temporary clone of your site? UpdraftClone makes it quick and easy to create a temporary sandbox for changes you want to try out. Simply select the versions of WordPress and PHP that you want, and we’ll do the rest. More about UpdraftClone The full suite of plugins from Team Updraft and friends UpdraftPlus. Backup, migrate and restore. Rated 5* on the plugin directory and trusted by more than 3 million WordPress website owner WP-Optimize. Clean the database, compress images and caching. Optimize your WordPress website. 5* user rating. 1 million + active installs. All-In-One Security (AIOS). Secure your WordPress website. Comprehensive, feature rich and easy to use. 5* user rating and 1 million + active installs. WP Overnight. Quality Extensions for your WooCommerce store. 5* rated invoicing, order and product management, customer management solutions and more. Easy Updates Manager. Take control of updates. Lots of features for free, and a Premium version with even more – over 300,000 users. Internal Link Juicer.Boost your SEO. Automate internal links within your WordPress website. Save time and rank higher in the search engines. For other useful, free plugins see our lead developer’s profile, here. Are you multilingual? Can you translate? Do you want to help people that speak your language to backup, migrate and restore their WordPress websites? The UpdraftPlus backup, migration and restoration plugin is ready and waiting. The translation process is easy, and web-based – please go here for instructions: https://updraftplus.com/translate/. Or, if you’re already an expert WordPress translator, just pick out the .pot file from the wp-content/plugins/updraftplus/languages/ directory – if you scan for translatable strings manually, then you need to get these functions: _x(), __(), _e(), _ex(), log_e(). Many thanks to our existing translators. License Copyright 2011-24 David Anderson This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA Non-English translators are provided by volunteers, and wordpress.org does not give plugin developers control over their translations; thus relying on them is at your own risk; UpdraftPlus cannot guarantee that translations from the original English are accurate. We recognise and thank those mentioned at https://updraftplus.com/acknowledgements/ for code and/or libraries used and/or modified under the terms of their open source licences.