Backup System

Pro Feature — The backup system is available in the Pro and Agency tiers.

Unfold CMS includes a backup system powered by spatie/laravel-backup for creating, scheduling, and managing backups of your database and files.

Overview

The backup system provides:

  • Manual backups — Create backups on demand from the admin panel
  • Scheduled backups — Automatic backups on a configurable schedule
  • Backup types — Full (database + files), database-only, or files-only
  • Download and delete — Manage backup files through the admin panel
  • Storage options — Local storage or cloud (S3)
  • Retention policies — Automatically clean up old backups

Configuration

Configure backups in Settings > Backups in the admin panel. You can set the backup frequency, type (full, database, or files), scheduled time, retention period, and storage location.

Creating Manual Backups

  1. Navigate to Tools > Backups in the admin panel
  2. Click Create Backup
  3. Select the backup type (Full, Database, or Files)
  4. Wait for the backup to complete

The backup is created synchronously — no queue workers are needed. For large sites, this may take a few moments.

Managing Backups

Backup List

The backup management page shows all existing backups with:

  • Backup date and time
  • Backup type
  • File size
  • Status (completed, failed)

Downloading Backups

Click the Download button next to any backup to download the zip file. Store important backups off-server for disaster recovery.

Deleting Backups

Click Delete to remove a backup file. Old backups are also automatically cleaned up based on the retention policy.

Backup Statistics

View backup statistics including:

  • Total number of backups
  • Total storage used
  • Last successful backup date
  • Next scheduled backup

Scheduled Backups

Scheduled backups require a cron job to be configured on your server:

* * * * * cd /path-to-project && php artisan schedule:run >> /dev/null 2>&1

This single cron entry handles all scheduled tasks including backups. No queue worker is needed — backups run synchronously within the scheduler.

Storage

Local Storage

By default, backups are stored in the storage/app/backups/ directory. Ensure this directory has sufficient disk space.

Cloud Storage (S3)

Configure S3 storage for off-site backups by setting backup.storage to s3 and configuring your AWS credentials in the media settings.

Best Practices

  1. Enable scheduled backups — Don't rely on manual backups alone
  2. Store off-server — Download backups or use S3 for disaster recovery
  3. Test restores — Periodically verify your backups can be restored
  4. Use database-only for frequent backups — Smaller and faster
  5. Full backups weekly — Captures everything including uploads