Backups
Skysize protects your data with automatic daily backups, on-demand manual backups, and flexible restore options, so you can recover from mistakes, test safely with real data, and meet your continuity requirements.
Automatic Backups
Skysize automatically backs up your production deployments on a rolling daily schedule. You don't need to configure anything, backups run as soon as a production deployment is live.
How the schedule works
- Skysize checks your production deployments every hour.
- A new backup is created whenever the most recent successful backup is more than 24 hours old.
- In practice this gives you one backup per day, with no fixed clock time. If the platform recovers from a maintenance window, a missed backup is taken as soon as service resumes, you never silently skip a day.
Automatic backups apply to production branches only. Staging and development deployments are not backed up automatically, because their data is meant to be disposable (staging is rebuilt from production snapshots, and development is short-lived). You can still take manual backups of any deployment at any time.
What triggers a backup
A production deployment is backed up automatically when all of these are true:
- It is running (it has a live container).
- It was deployed successfully and has not been dropped.
A deployment that is stopped, failed, or has been removed is skipped.
Retention Policy
Skysize thins older backups automatically using a daily/weekly tiering scheme, so you keep meaningful recovery points without unbounded storage growth.
For paid projects:
- Last 7 days: every daily backup is kept.
- Older than 7 days: Skysize keeps one backup per week and removes the intermediate daily backups.
- Older than 3 months: the weekly backups are removed.
This typically leaves around 7 daily + ~12 weekly recovery points available at any time.
For free-tier projects:
- Only the last 7 days of backups are kept. Backups older than 7 days are removed.
If you need to keep a specific point-in-time snapshot beyond the retention window, download it (see below) and archive it yourself, or take a manual backup right before a risky change.
Manual Backups
In addition to the automatic schedule, project admins can create a backup on demand for any branch.
When to take a manual backup
- Before a major deployment, version upgrade, or data migration.
- Before testing a potentially destructive operation.
- When you want a clean, named point-in-time snapshot to keep.
Creating a manual backup
- Open your project in the Skysize dashboard.
- Go to the Backups section for the branch you want to back up.
- Click Create Backup.
- Wait for the job to complete, the new backup appears in the list with its size and timestamp.
Manual backups are stored alongside automatic ones and can be restored or downloaded the same way.
Backup, restore, download, and delete actions require the Admin role on the project.
Backup Contents
Each backup is a self-contained archive that includes:
- Database: a complete dump of your Odoo PostgreSQL database.
- Filestore: all uploaded files and attachments associated with the database.
When you download a dump (via Download Backup on a deployment), two choices are available in the Download a dump modal:
- Type: Neutralized database dump for testing/troubleshooting (deactivates scheduled actions, outgoing mail servers, and similar live integrations, suitable for non-production use) or Exact database dump (an unmodified copy).
- Filestore: With Filestore (includes attachments) or Without Filestore (a smaller, database-only dump).
Restoring from a Backup
You can restore any completed backup to any branch within the same project.
Common restore scenarios
- Restore a production backup onto staging to test against real data.
- Restore production onto itself to recover from data loss or a bad change.
- Restore onto a development branch to reproduce an issue.
Restore process
- Open the Backups section and find the backup you want.
- Click Restore and choose the target branch.
- Confirm the operation.
- Wait for the restore job to complete, then verify the data in the target deployment.
Restoring replaces the database of the target deployment. The existing data on the target branch is overwritten. Take a fresh backup of the target first if you might need its current state.
Only backups with a completed status can be restored, and the backup must belong to the same project as the target branch. Cross-project restores are not supported through the dashboard.
Downloading and Importing
Downloading a backup
Project admins can download any completed backup as a single .zip archive (database dump + filestore). Use downloads for:
- Long-term or off-platform archival beyond the retention window.
- Compliance and audit requirements.
- Local development or offline analysis.
Importing a backup
You can import an externally supplied backup archive into a branch, then restore it like any other backup. This is useful for:
- Migrating an existing Odoo database onto Skysize.
- Moving data between projects (import, then restore into the target branch).
- Setting up a new environment from an archived snapshot.
Where Backups Are Stored
Backups are written to your project's configured backup storage target (for managed Skysize cloud projects this is durable object storage in your deployment's region). Stored backups are encrypted at rest by the storage provider.
When a backup is removed by the retention policy, both the stored file and its record are deleted together, so storage never accumulates orphaned files.
Best Practices
Test your restores
A backup you have never restored is an assumption, not a guarantee. Periodically:
- Restore a recent backup onto a staging or development branch.
- Verify the data and that the application starts cleanly.
- Make sure your team knows the restore steps before they need them.
Snapshot before risky changes
Always take a manual backup before:
- Major Odoo version upgrades.
- Large-scale data imports or migrations.
- Schema changes from new or updated modules.
Plan your retention
- Understand the retention tiers (7 daily, then weekly, then pruned after 3 months for paid projects; 7 days for free tier).
- Download any snapshot you must keep longer than the retention window.
Monitoring Backups
Track backup health from the project's Backups section in the dashboard:
- Review recent backup history and timestamps.
- Check each backup's size and status.
- Confirm that the latest scheduled backup completed.