A backup you cannot download is a backup you do not truly own. Hosting providers can lose data, go out of business, or experience failures that affect their backup systems. The only backup you can absolutely rely on is the one sitting on your own computer or in your own cloud storage account. This guide shows you exactly how to generate, download, and verify a full cPanel account backup — step by step, with nothing left to chance.

On MassiveGRID's high-availability cPanel hosting, automated backups run on geographically redundant infrastructure, but we still encourage every customer to maintain independent backup copies. Here is how to do it.

What Is Included in a Full cPanel Account Backup?

A full cPanel account backup is a compressed archive that contains everything associated with your hosting account:

The backup is stored as a single .tar.gz file (gzipped tar archive), typically named something like backup-M.D.YYYY_HH-MM-SS_username.tar.gz. For a deeper understanding of what these backups cover and what they do not, see our guide on how automatic cPanel backups work.

Step 1: Generate the Backup

Using the cPanel Backup Interface

  1. Log into your cPanel account (typically at yourdomain.com/cpanel or yourdomain.com:2083)
  2. Navigate to Files > Backup (not Backup Wizard — the full Backup page gives you more options)
  3. Under Full Backup, click "Download a Full Account Backup"
  4. For Backup Destination, select Home Directory — this saves the backup file to your home directory on the server, where you can then download it
  5. Enter your email address to receive a notification when the backup is complete
  6. Click "Generate Backup"

Note: You can also select "Remote FTP Server" or "Remote SCP Server" as the destination if you want the backup sent directly to another server. For the purpose of downloading to your local machine, Home Directory is the simplest option.

How Long Does Generation Take?

Account Size Typical Generation Time Notes
Under 1 GB 1-5 minutes Small sites, basic WordPress installations
1-5 GB 5-15 minutes Medium sites with moderate media libraries
5-20 GB 15-60 minutes Larger sites with extensive media or databases
20+ GB 1-3 hours Very large accounts; may hit timeout limits on some hosts

You will receive an email when the backup is ready. Do not try to download it before the generation is complete — an incomplete backup file will be corrupted.

Step 2: Download the Backup

Method A: Download via cPanel Backup Page

  1. Return to Files > Backup in cPanel
  2. Under Full Backup, you should now see a link to your backup file
  3. Click the link to download the file to your local computer
  4. For large files, this may take a while — do not interrupt the download

Method B: Download via cPanel File Manager

  1. Go to Files > File Manager in cPanel
  2. Navigate to your home directory (/home/username/)
  3. Look for the backup file (it starts with backup- and ends with .tar.gz)
  4. Right-click the file and select Download

Method C: Download via SFTP (Recommended for Large Files)

For backup files over 2 GB, SFTP is more reliable than browser downloads because it can resume interrupted transfers:

  1. Install an SFTP client (FileZilla, WinSCP, or Cyberduck)
  2. Connect to your server using your cPanel username and password (SFTP port is typically 22)
  3. Navigate to your home directory
  4. Download the backup file

FileZilla example:

Host: sftp://yourdomain.com
Username: your_cpanel_username
Password: your_cpanel_password
Port: 22

Method D: Download via SSH (Command Line)

If you have SSH access and want to download to another server:

# From your local machine or another server
scp username@yourdomain.com:~/backup-*.tar.gz /local/backup/directory/

Step 3: Verify the Backup

A downloaded backup file is worthless if it is corrupted, truncated, or incomplete. Always verify your backup after downloading.

Check File Size

Compare the file size on your local machine to the file size shown on the server. If they differ, the download was interrupted or corrupted. Re-download.

Verify Archive Integrity

Test that the archive can be read without errors:

On macOS/Linux:

# Test the gzip integrity
gzip -t backup-filename.tar.gz

# List the archive contents (should complete without errors)
tar -tzf backup-filename.tar.gz | tail -5

# Check the archive for errors
tar -tzf backup-filename.tar.gz > /dev/null 2>&1 && echo "Archive OK" || echo "Archive CORRUPTED"

On Windows:

Use 7-Zip (free) to open the .tar.gz file. If 7-Zip can list and extract the contents without errors, the archive is intact. If you see errors during extraction, the file is corrupted.

Verify Contents

Do not just check that the archive opens — verify that it contains what you expect:

# List top-level directories in the backup
tar -tzf backup-filename.tar.gz | head -30

You should see directories like:

Spot-Check Specific Files

Extract a few known files and verify their contents:

# Extract just the WordPress config file to verify
tar -xzf backup-filename.tar.gz homedir/public_html/wp-config.php
cat homedir/public_html/wp-config.php | head -20

# Extract a database dump and check it has content
tar -xzf backup-filename.tar.gz mysql/your_database.sql
wc -l mysql/your_database.sql  # Should show a reasonable number of lines

If the database dump file is empty or contains only a few lines for a site with thousands of posts, something went wrong during the backup generation.

Step 4: Store the Backup Securely

Now that you have a verified backup, store it properly:

Local Storage

Cloud Storage

Encryption

cPanel backups contain database credentials, email contents, and potentially sensitive customer data. If you store them in cloud storage, consider encrypting the archive first:

# Encrypt with GPG (symmetric encryption with password)
gpg -c backup-filename.tar.gz
# This creates backup-filename.tar.gz.gpg — upload this encrypted version

# To decrypt later
gpg backup-filename.tar.gz.gpg

Automating Regular Backup Downloads

Downloading a backup manually once is good. Doing it regularly is better. Here are approaches for automating the process:

Using cron + SSH (Linux/macOS)

If you have a local server or always-on computer, set up a cron job that downloads the latest backup automatically:

# Add to crontab (crontab -e)
# Download latest backup every Sunday at 3 AM
0 3 * * 0 scp username@yourdomain.com:~/backup-*.tar.gz /backups/weekly/

Using cPanel's Remote Backup Destination

If you have WHM access (or can request it through support), configure cPanel to send backups directly to a remote server or S3 bucket automatically. This is the most reliable approach because it runs server-side and does not depend on your local machine being online. See our guide on off-site backup storage for configuration details.

Using WordPress Backup Plugins

For WordPress sites specifically, plugins like UpdraftPlus can schedule automatic backups to Google Drive, Dropbox, or S3. This supplements (but does not replace) your full cPanel backup, as WordPress plugins only back up the WordPress installation, not your entire cPanel account.

Step 5: Clean Up After Download

Full backup files are large and consume your hosting account's disk quota. After downloading and verifying:

  1. Delete the backup file from your hosting account (via cPanel File Manager or SSH: rm ~/backup-*.tar.gz)
  2. Check your disk usage in cPanel to confirm the space was freed

Leaving old backup files on the server wastes disk space and could cause your account to hit its storage limit, which can break your website, prevent email delivery, and block new backup generation.

How Often Should You Download Backups?

The answer depends on your backup retention policy and how much you depend on your website:

Site Type Recommended Download Frequency Rationale
Personal site / blog Monthly Changes are infrequent; monthly snapshots provide adequate protection
Business website Weekly Regular updates; weekly downloads complement host-managed daily backups
eCommerce store Daily (automated) Transaction data changes constantly; automate to avoid human inconsistency
Before any major change Immediately before Always download a backup before CMS updates, plugin changes, or design overhauls

Whatever frequency you choose, build it into a routine. Set a calendar reminder, create a checklist, or automate it. A backup schedule that depends on you remembering to do it will eventually be forgotten — usually right before you need it most.

Using Downloaded Backups for Migration

A downloaded cPanel backup is also your migration ticket. The backup format is standardized across cPanel versions, so you can take a backup from one host and restore it on any other cPanel host. This means:

This portability is one of the key advantages of cPanel hosting — your data is in a standardized, documented format that you can take anywhere. For detailed migration procedures, see our guide on zero-downtime website migration.

Frequently Asked Questions

Can I generate a full backup on shared hosting, or do I need VPS/dedicated?

You can generate a full account backup on any cPanel hosting plan, including shared hosting. The limitation is that on shared hosting, you cannot restore a full backup yourself — you need to submit it to your hosting provider's support team for restoration. But you can always generate and download backups independently.

What if the backup file is too large to download through my browser?

Browser downloads can be unreliable for large files (over 1-2 GB) because they cannot resume if the connection drops. Use SFTP instead — SFTP clients like FileZilla support automatic resume of interrupted transfers. Alternatively, if your backup is very large, consider splitting it: generate separate home directory and database backups using the cPanel Backup Wizard instead of a single full backup.

How do I verify that my database backup is not empty?

Extract the MySQL dump file from the backup archive and check its size and content. A healthy database backup for a WordPress site with content should be at least several hundred kilobytes. Open the first few lines — you should see SQL statements like CREATE TABLE and INSERT INTO. An empty or near-empty file indicates a backup failure.

Can I restore a backup from an older version of cPanel to a newer version?

Yes. cPanel maintains backward compatibility for backup restoration. A backup from cPanel 106 can be restored on cPanel 120, for example. However, restoring from a newer version to an older version is not guaranteed. When migrating between hosts, ensure the destination server runs the same or newer cPanel version.

Should I back up my email separately from the full account backup?

If your email is hosted with your cPanel account and you have a significant email archive, downloading email separately (via an IMAP client like Thunderbird) provides an additional layer of protection. The full backup includes email, but having a local IMAP copy means you can access old messages even while the server is down or being restored. For critical business email, consider using a dedicated email service (Google Workspace, Microsoft 365) that is independent of your hosting provider, as part of your overall disaster recovery strategy.