Hetzner Cloud
One token per project, snapshots for every server in it
Generate a Read & Write API token in the Hetzner Cloud Console, paste it in, and VPS Snaps creates server snapshots — Hetzner Images — on your schedule, pruning the old ones as it goes.
Backup Jobs
Automated backup schedules
postgres-main nightly
Last run 6h ago
web-01 snapshots
Last run 9h ago
api-prod volumes
Last run 4m ago
staging-db weekly
Last run 3d ago
Connecting Hetzner Cloud
API token
Paste a Hetzner Cloud API token. Generating one takes about a minute in the console, and there is no OAuth app to install.
Log in to the Hetzner Cloud Console and select the project whose servers you want to protect.
Go to Security → API Tokens → Generate API Token and choose the Read & Write permission. Read-only is not enough — creating an image is a write.
Paste the token into VPS Snaps. It is sealed with AES-256-GCM before it is stored, and the connection test lists your servers straight back to you.
What one connection reaches
A Hetzner token is project-scoped, so one connection covers one project. Run three projects and you add three connections — which is also a tidy way to keep separate clients separate.
What one run actually produces
No proprietary format and no copy on our side. VPS Snaps makes the same API call you could make yourself, and records what Hetzner Cloud gave back.
Server snapshot
POST /v1/servers/{id}/actions/create_image { "type": "snapshot" }- What it covers
- The server's disk as a Hetzner Image of type snapshot — the same object the console's Snapshot button produces, restorable onto a new server of the same or larger size.
- How consistent it is, honestly
- No shutdown and no reboot. Hetzner takes the image from the running server, so it is crash-consistent — fine for a filesystem with journaling, worth pairing with a database dump if you want a guaranteed-clean copy of your data.
And what happens to the old ones
Images from runs past your retention window are deleted with DELETE /v1/images/{id} after each successful run, so a nightly job settles at a constant number of stored images instead of growing forever.
Cleanup runs only after a run has already succeeded, so a failing schedule never deletes the last good copy you have. Every deletion is written into that run’s log with the date of the backup it removed.
VPS Snaps stores the ID and the name of each image it creates — never the image itself. Close your account and every copy already taken stays exactly where it is, in your Hetzner Cloud account.
Hetzner Cloud specifics worth knowing first
Every provider does this differently, and the differences are the part that bites at 3am. These are the ones that changed how the integration had to be built.
One project per token, by Hetzner's design
There is no account-wide Hetzner Cloud token. The credential you generate belongs to the project you generated it in and can see nothing outside it. VPS Snaps does not paper over that: you add one connection per project, and each one shows only that project's servers.
The response hands back two things at once
create_image returns both an action to track and the image it will become. VPS Snaps records the image ID immediately and then polls the action every 20 seconds until Hetzner reports success — so even a slow image has its ID stored against the run from the first moment.
Locations are irrelevant to setup
Nuremberg, Falkenstein, Helsinki, Ashburn, Singapore — the token is not tied to a location, so there is no region field to get wrong. Every server in the project shows up in the picker regardless of where it runs.
FAQs
Can’t find the answer you’re looking for? Reach out to our support team.
Is this the same as Hetzner's Backups feature?
No, and the difference matters. Hetzner's Backups add-on is a paid per-server percentage that keeps a rolling set of slots on Hetzner's schedule. VPS Snaps creates snapshots — independent images you can take as often as your plan's minimum interval allows, keep for exactly the retention you choose, and delete on your own terms. You can run both; they do not conflict.
What does Hetzner charge for the snapshots?
Hetzner bills snapshot storage per GB per month against the project the images live in, entirely separately from your VPS Snaps subscription. Retention cleanup is what keeps that line item flat: the number of retained images stops growing once the first one ages out.
Can I restore a snapshot onto a different server type?
Yes, as long as the target's disk is at least as large as the image. That is Hetzner's rule, not ours — the image is an ordinary Hetzner Image in your project, so you rebuild from it in the console or via hcloud exactly as you would with a snapshot you had taken by hand.
Running on more than one of these?
Connections are additive and independent — a Hetzner project and an AWS region live side by side in the same workspace, on the same schedules and the same run history.
A snapshot restores a server on Hetzner Cloud and nowhere else. For a copy you can carry anywhere, add a database, file or Docker job on the same server — those write plain .tar.gz and .sql.gz into an S3-compatible bucket you own.
Powerful features to give you peace of mind
Rest easy knowing your data and your reputation are safe.
- Bring your own storage
- Backups land in your own S3-compatible bucket — Backblaze B2, Wasabi, Cloudflare R2, or plain S3. You hold the keys and the data.
- Snapshots stay with your provider
- Provider snapshots are created through the provider's own API and never leave your account. We store the snapshot ID, not the image.
- Seven providers, one dashboard
- DigitalOcean, Hetzner, Vultr, Linode, AWS EC2, Google Compute Engine and Microsoft Azure — scheduled and reviewed from the same place.
- Schedules that fit your traffic
- Hourly, daily, weekly, monthly, or a fixed interval in minutes — anchored to your timezone, so a 02:00 job stays at 02:00 across a DST change.
- Retention that prunes itself
- Set how many days to keep. Older snapshots and archives are cleaned up after each successful run, so storage bills stay flat.
- Step-by-step run logs
- Every run records what it did, in order, with warnings and errors kept in place — so a failure tells you which step broke.
- Complete run history
- Status, duration, byte size, and what triggered each run, kept per job. Proof the backup ran, long after the night it ran.
- Checksummed on upload
- Every archive is hashed as it streams to your bucket and the checksum is stored with the run, so you can verify what landed.
- Run on demand
- Trigger any job by hand before a migration or a risky deploy, without touching its schedule or its retention window.
- Alerts on five channels
- Email plus Slack, Microsoft Teams, Google Chat, and Discord — on success, on failure, and on a job that missed its schedule entirely.
- Encrypted credentials
- SSH keys, database passwords, and storage secrets are sealed with AES-256-GCM before they touch the database.
- Team access with roles
- Invite your team into a shared workspace as owner, admin, or member, so backups outlive whoever set them up.

“The biggest advantage for us is that VPS Snaps works with the infrastructure we already have instead of forcing us into a proprietary backup environment. Provider snapshots stay inside our cloud account, while database and file archives can go directly into our own bucket.”
Schedule your first Hetzner Cloud backup tonight.
Connect the account, pick a server, set a schedule and a retention window. The first run is what proves the credential has the scope it needs — a much better thing to discover on a quiet evening.
No credit card required. Cancel anytime.