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.

Short answer: Back up daily if you publish regularly, weekly minimum. Store backups off-site (different server from your blog). Use a plugin (UpdraftPlus, BackWPup) or your managed host’s built-in backups. Test restore at least once. Keep 30 days of rolling backups plus monthly archives.
A backup dashboard showing daily backup history, storage destinations, and restore options

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:

  1. Download a backup.
  2. Restore to a staging environment or local install.
  3. Verify everything works.

You’ll find issues (incomplete backups, missing tables, broken paths) before you need the backup for real.

A restore wizard showing options to restore database, files, themes, plugins, or a complete site

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:

  1. Go to plugin settings.
  2. Browse backup list.
  3. Select backup, choose what to restore (database, plugins, themes, uploads).
  4. Click restore. Wait.

Manual restore

If WordPress is broken and you can’t access admin:

  1. Download backup files via SFTP.
  2. Unzip backup.
  3. Upload database to MySQL via phpMyAdmin.
  4. Upload files to WordPress directory via SFTP.
  5. 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.