Backup Strategy Design: Build a reliable backup plan
Design an effective backup strategy for your website. Learn how to choose backup methods, frequency, storage locations,
On this page
A backup strategy is a tailored plan that matches your specific needs: what data matters most, how often you update it, where you'll store backups, and how quickly you need to recover. One strategy doesn't fit all websites—ecommerce needs different backups than a blog.
Define your backup goals
Ask yourself these questions:
- What would I lose if my website went down today? (Revenue? Customer trust? Data? Months of work?)
- How much data loss can I tolerate? (Can I lose 1 hour of updates? 1 day? A week?)
- How quickly do I need to be back online? (1 hour? 24 hours? A week?)
- What compliance or legal requirements apply to my data? (GDPR, HIPAA, PCI, etc.?)
- What's my budget for backups? (Included in hosting? Additional budget? Cloud storage costs?)
Your answers determine the strategy you need.
Assess your data
Create an inventory:
| Data Type | Size | Change Frequency | Criticality | Compliance |
|---|---|---|---|---|
| Website files (HTML, CSS, JS, images) | 50 GB | Weekly (theme updates) | High (site requires them) | No |
| Database (WordPress, WooCommerce) | 10 GB | Daily (posts, customer orders) | Critical (data loss = revenue) | Maybe (customer data) |
| Email accounts | 5 GB | Continuous (messages arrive hourly) | Medium (communication) | Possibly (business records) |
| Config files (wp-config.php, .env) | <1 MB | Rarely (on major changes) | Critical (contains secrets) | Yes (encryption key) |
Choose backup methods
Full backup: Everything at once
- Pros: Simple, complete, one restore point has everything
- Cons: Large file, long backup time, slow restore, wastes storage
- Best for: Small sites, initial backups, before major changes
Incremental backup: Only changes since last backup
- Pros: Small, fast, efficient storage
- Cons: Needs multiple files to restore; complex management
- Best for: Large sites, daily automated backups, servers with limited storage
Differential backup: Changes since last full backup
- Pros: Balance of simplicity and efficiency
- Cons: Harder to manage than full backups
- Best for: Medium sites, weekly full + daily differentials
Database-only backup: Just the database, separate from files
- Pros: Small, fast, can restore just data without redownloading files
- Cons: Misses file changes; website requires both file + database to work
- Best for: Sites that change data frequently (WordPress posts, ecommerce orders)
Determine frequency
| Backup Frequency | Best For | Pros | Cons |
|---|---|---|---|
| Hourly | High-traffic ecommerce, financial systems | Minimal data loss (<1 hr) | Requires automation; lots of storage; higher cost |
| Daily (recommended) | Most WordPress sites, small ecommerce | Good balance; manageable storage | Can lose up to 24 hours of updates |
| Weekly | Low-traffic blogs, static sites | Minimal storage and processing | Can lose up to 7 days of work |
| On-demand (manual) | Sites with predictable change cycles | Full control; no automated overhead | Easy to forget; human error |
Select storage locations
Backup storage decision tree:
- Local on-server (UnderHost servers)
- Pros: Included with hosting, fast restore
- Cons: Single point of failure (if server fails, backups lost)
- Use: Temporary storage, rolling 7-day backups
- Remote cloud storage (AWS S3, Google Drive, Backblaze)
- Pros: Geographically separate, protected against server failure
- Cons: Download speed slower, may cost $/month
- Use: Long-term archival, offsite protection
- Your personal computer or local NAS
- Pros: You control it completely, no cloud dependency
- Cons: Requires manual downloads, easy to forget, not automated
- Use: Critical backups, compliance requirements, air-gapped backup
- USB drive or external hard drive
- Pros: Cheap, offline, portable
- Cons: Manual, unreliable, easy to lose
- Use: Final emergency backup, backup of a backup
Strategy for shared hosting (UnderHost cPanel)
Recommended approach for most shared hosting users:
- Automatic daily backups via Backuply or cPanel Backup
- Set to back up every day at off-peak hours (e.g., 2 AM)
- Keep 7-14 days on-server (rolling window)
- Full backups (files + database)
- Weekly encrypted backups to cloud storage
- Download or configure offsite upload weekly
- Use Google Drive, AWS S3, or Backblaze B2
- Keep last 4-8 weeks offsite
- Monthly full backup to your computer
- Download to your personal machine as final backup
- Keep minimum 3 months locally
- Verify it can be restored
- Before major changes, create manual backup
- Before plugin/theme updates
- Before WordPress core upgrade
- Before s
Expected storage footprint: 200-300 GB per month across all tiers (manageable for small/medium sites)
Strategy for VPS/Dedicated servers
You have full control—use it strategically:
- Automated daily full or incremental backups
- Set up cron job with mysqldump + tar
- Run at 2-3 AM when traffic is lowest
- Keep 7-30 days on-server (depending on disk space)
- Weekly snapshots (if available in CustomerPanel)
- CloudPanel, Virtualizor, or other VPS panels offer snapshots
- Much faster restore than file-based backups
- Keep 2-4 weekly snapshots
- Daily encrypted remote backup
- Rsync or duplicity to offsite server or cloud
- Encrypt before uploading
- Keep incremental daily + full weekly
- Monthly archive backup
- Full encrypted backup uploaded to AWS Glacier or B2 Archive
- Keep 12+ months for compliance/disaster recovery
- Slow restore but very cheap storage ($0.004/GB/month)
Example backup script:
#!/bin/bash
# Daily backup at 2 AM
BACKUP_DIR="/backups"
DATE=$(date +%Y-%m-%d)
# Backup database
mysqldump -u root -p'password' --all-databases | gzip > $BACKUP_DIR/database-$DATE.sql.gz
# Backup website files
tar -czf $BACKUP_DIR/files-$DATE.tar.gz /home/user/public_html/
# Upload to remote storage
rsync -avz $BACKUP_DIR/ user@backup-server:/offsite/backups/
# Delete local backups older than 30 days
find $BACKUP_DIR -name "*.tar.gz" -mtime +30 -delete
find $BACKUP_DIR -name "*.sql.gz" -mtime +30 -delete
Implement and monitor
Step 1: Set up automated backups
- Shared hosting: Enable Backuply or cPanel automatic backups
- VPS: Create cron job for backup script
Step 2: Test restore process
- Download a recent backup
- Try to restore it locally (test environment)
- Verify data integrity
- Document recovery time
Step 3: Monitor backup success
- Check backup logs weekly
- Verify recent backups exist and have reasonable size
- Alert if backups fail or storage fills up
Step 4: Review strategy annually
- Website growth: Do you need more backup frequency?
- New data: Do you need different backup methods?
- Compliance changes: Do retention periods need adjustment?
- Cost: Can you optimize storage efficiency?
Monitor your backups. Verify they work. Test restoration. Update the strategy when your needs change. The best strategy is useless if backups fail silently.
Related: Backup best practices | Disaster recovery planning | Backup retention policies | Database backup guide
Need reliable backups?
Protect websites, servers, and projects with UnderHost backup services and off-server recovery options.





















