Backups are the boring part of running a blog until you need one. Then they’re the most important thing in the world. A site without working backups is one bad update, one hacked plugin, or one host failure away from gone. This post is the practical setup.
What to back up
A complete WordPress backup includes:
- Database: all posts, pages, comments, users, settings, metadata.
- wp-content folder: uploads (images, videos), themes, plugins.
- WordPress core files: the WordPress software itself.
- Configuration: wp-config.php, .htaccess.
Most backup tools handle all of this automatically.
Frequency
Match frequency to publishing/activity cadence:
- Daily: active blogs (posts published weekly+, frequent comments).
- Weekly: minimum for any blog.
- Real-time / hourly: e-commerce or membership sites where every order matters.
If you lose a day’s data, can you reconstruct? If yes, weekly might be fine. If no, daily.
The 3-2-1 backup rule
Standard data protection guidance:
- 3 copies of your data (original + 2 backups).
- 2 different storage types (e.g., your host + cloud storage).
- 1 off-site copy (not on the same server as your blog).
Why off-site: if your host has a catastrophic failure, on-host backups die with the site.
Backup destinations
Cloud storage
- Google Drive: free 15GB, simple.
- Dropbox: free 2GB, paid scales.
- Amazon S3: ~$0.023/GB/month. Cheapest at scale.
- Backblaze B2: S3-compatible, cheaper egress.
- Wasabi: cheaper S3 alternative.
- OneDrive: tied to Microsoft 365.
Plugin-provider storage
UpdraftPlus Vault, BlogVault, and similar offer dedicated backup storage as part of their paid plans.
Host backups
Managed hosts (WP Engine, Kinsta, SiteGround) include automated backups.
Concern: these live on host infrastructure. If host has catastrophic failure, host backups may fail too. Treat host backups as supplemental, not your only line of defense.
Backup plugins
UpdraftPlus
- Most popular free WordPress backup plugin.
- Schedules, multiple destinations, restore capabilities.
- Free: schedule + main destinations.
- Premium: incremental backups, multisite, multiple destinations.
BackWPup
- Free option with good scheduling.
- S3, Dropbox, Google Drive support.
Duplicator
- Focused on manual full-site snapshots.
- Good for migrations as well as backups.
- Free + Pro tiers.
BlogVault
- Premium SaaS backup ($89+/year).
- Incremental backups (faster, smaller).
- One-click restore.
- Staging site integration.
WP Time Capsule
- Incremental, real-time backups.
- Restore individual files or full site.
Jetpack VaultPress Backup
- By Automattic (WordPress.com).
- Real-time backups for high-activity sites.
- $8+/month.
Retention strategy
How long to keep old backups:
- Daily backups: keep 14–30 days.
- Weekly backups: keep 8–12 weeks.
- Monthly archives: keep 6–12 months.
Why: some problems (hacks, data corruption) aren’t noticed for weeks. You need a backup from before the issue started.
Testing restores
An untested backup isn’t a backup; it’s a hope.
Once or twice a year:
- Download a backup.
- Restore to a staging environment or local install.
- Verify everything works.
You’ll find issues (incomplete backups, missing tables, broken paths) before you need the backup for real.
Common backup failures
- Backup ran but didn’t transfer to destination: network failed mid-upload.
- Backup ran but file is corrupted: happens occasionally.
- Backup is incomplete: some tables or files excluded due to timeout.
- Backup destination ran out of storage: old backups not cleaned, new ones fail.
- Plugin stopped working: license expired, plugin disabled, etc.
Verify weekly that backups completed successfully. Most plugins email status reports.
Database vs file backups
Some sites need different schedules:
- Database: changes frequently (every comment, post, setting). Back up daily.
- Files (uploads, themes, plugins): change less often. Back up weekly.
Split scheduling saves storage and bandwidth on large sites.
Incremental vs full backups
Full backup: complete copy every time.
Incremental: only changes since last backup.
Pros of incremental: faster, smaller storage, less server load.
Cons: restoration may require applying multiple incrementals.
Most modern backup plugins support incremental.
Disaster scenarios
1. Bad plugin update breaks the site
Restore: revert to backup from before the update.
Often: simpler to deactivate the plugin via SFTP than full restore.
2. Site hacked, files modified
- Identify when compromise happened (security plugin scan history).
- Restore from backup before compromise.
- Update everything, change all passwords, audit user accounts.
3. Host goes down or disappears
- Migrate backup to new host.
- Update DNS to new host.
- Restore site.
This is when off-site backups matter most.
4. Database corruption
- Restore database from backup.
- Sometimes only specific tables need restore — backup plugins often allow this.
5. Accidentally deleted important content
- Restore single posts or pages from backup if your plugin supports granular restore.
- Or restore database only, leaving files alone.
How to restore
Plugin-based restore
Most plugins (UpdraftPlus, BlogVault) offer one-click restore from the plugin interface.
Steps:
- Go to plugin settings.
- Browse backup list.
- Select backup, choose what to restore (database, plugins, themes, uploads).
- Click restore. Wait.
Manual restore
If WordPress is broken and you can’t access admin:
- Download backup files via SFTP.
- Unzip backup.
- Upload database to MySQL via phpMyAdmin.
- Upload files to WordPress directory via SFTP.
- Update wp-config.php if database name changed.
More technical but works when the WordPress admin is inaccessible.
Staging environments
Some hosts offer staging:
- Clone production to a staging URL.
- Test updates, theme changes, new plugins there first.
- If anything breaks, production is untouched.
Used right, staging reduces the need to ever restore from backup.
Backup before risky changes
Before:
- WordPress major version updates.
- Theme changes.
- Bulk plugin updates.
- Database operations (search-replace, table edits).
- Migration work.
Take a manual backup first. Five minutes that can save hours.
What about WordPress.com?
WordPress.com hosts your site and handles backups internally. You don’t need backup plugins on WordPress.com.
Self-hosted WordPress (WordPress.org): backups are your responsibility.
Storage cost estimates
Typical blog backup sizes:
- Small blog (no media-heavy uploads): 100–500MB per backup.
- Medium blog (200+ posts with images): 1–5GB per backup.
- Large blog (photography-heavy): 10–50GB+.
S3 storage for 5GB: ~$0.11/month. Cheap.
The honest summary
Backups feel boring until you need them. Set up automated daily backups via UpdraftPlus or similar. Store off-site (cloud storage, not just your host). Keep 30 days rolling + monthly archives. Test restore at least annually. Use staging for risky changes. Verify backups complete successfully. The cost of doing this well is one hour of setup; the cost of not doing it well can be your entire blog. Spend the hour.
