Works with your stack
Set it once. Sleep better every night.
You shouldn't have to remember to back up your database. Write a cron expression and Capsule's daemon takes it from there — every backup compressed, checksummed, encrypted, and pushed to the cloud the moment it completes. Old backups clean themselves up — you never think about any of it again.
- ✓Standard cron expressions — daily, weekly, hourly, or custom
- ✓Pause and resume any schedule with a single keystroke
- ✓Schedule changes apply instantly — no daemon restart needed
- ✓Runs as a systemd service — survives reboots and restarts automatically
One click back to before it broke.
Browse your backup history, select a snapshot, confirm. Capsule pulls it from the cloud, verifies the checksum, decrypts and decompresses it, and pipes it directly into your database. No manual commands, no guessing which file is the right one.
- ✓Every restore is verified — you'll never load a corrupted backup
- ✓Auto-rollback: if a restore fails halfway, your database is put back the way it was
- ✓Restore from your terminal, or from the dashboard while you're away from your desk
- ✓Confirm before overwriting — no accidental data loss
One tool for every database you run.
Postgres on bare metal, MySQL in Docker, MongoDB on a remote box — normally that's three different dump tools, three cron scripts, three things to silently break. Capsule speaks each database's native tooling and puts every backup behind one interface.
- ✓PostgreSQL, MySQL, MongoDB out of the box
- ✓Works with Docker containers and remote hosts
- ✓Each database gets its own schedule and credentials — one place to see them all
No backup? No deploy.
Add one step to your deploy pipeline, and Capsule backs up your database before every release. If the backup doesn't succeed, the deploy simply doesn't happen — so even if a release goes wrong, your data from one minute before is safe.
- ✓Blocks the deploy if the backup fails or times out
- ✓One-line GitHub Action — or a single curl call from any CI
- ✓Tag each backup with a note — know exactly which snapshot predates which release
- name: Pre-deploy backup uses: capsule-infra/backup-action@v1 with: license-key: ${{ secrets.CAPSULE_LICENSE_KEY }} connection-label: prod-postgres note: deploy ${{ github.sha }} - name: Deploy Backend run: ./deploy.sh
✓ backup confirmed · 2.4 MB — deploy proceeding
How it works
Your backups live off your server.
A backup stored on the same server as your database isn't a backup — it's a copy. Capsule pushes every snapshot to the cloud the moment it's created, so a dead server can't take your data with it.
Install the agent on your server.
One command installs the Capsule CLI on the server where your databases live. It registers as a systemd service — starts on boot, restarts on failure, keeps itself up to date, no babysitting.
curl -fsSL https://trycapsule.xyz/install.sh | sudo shAuthenticate once. Every backup goes off-server.
This is the critical step. Run capsule auth and paste your license key when prompted — this connects your agent to Capsule's cloud. From this point, every backup is encrypted and pushed off-server — so if your server goes down, your data doesn't go with it.
capsule authConnect your databases.
Launch the Capsule TUI and add your PostgreSQL, MySQL, or MongoDB connections. Credentials are tested live, encrypted on disk, and never leave your server.
capsuleAfter that, it's automatic. The agent backs up on your schedule, pushes to Capsule's cloud, and syncs everything to your web dashboard — servers, connections, backup history, and every failure, so nothing goes wrong silently.
Get started free →Why Capsule
Not all backup tools are the same.
A cron job and a checkbox aren't a backup strategy. Here's what makes Capsule different.
You hold the encryption keys — we never see your data
Auto-rollback if a restore fails halfway through
Pre-deploy backup gate — a GitHub Action that blocks your deploy until a fresh backup is confirmed
Works on any host, any VPS — no cloud lock-in
Use cases
Built for developers and small teams.
Whether you're shipping a side project, running a startup's self-hosted stack, or managing client databases — Capsule fits the way you already work.
Credentials stay on your server
The agent stores database credentials locally, encrypted on disk. They are never transmitted to Capsule's servers.
We only store encrypted ciphertext
Backups are AES-256 encrypted on your server before upload. Capsule's cloud receives ciphertext — not your data.
We don't hold the decryption key
Your encryption key is derived locally and never leaves your server. We are cryptographically unable to read your backups.
From the school of hard knocks
What it costs to find out the hard way.
Lost 3 weeks of user data when my VPS provider had a storage failure. No backups. I spent 4 days rebuilding from memory and old exports. I won't make that mistake again.
Alex R.
Indie Hacker
Lost 3 weeks of user data when my VPS provider had a storage failure. No backups. I spent 4 days rebuilding from memory and old exports. I won't make that mistake again.
Alex R.
Indie Hacker
I spent a year thinking my cron job copying files to the same VPS was a backup strategy. It wasn't. If that server had gone down, those 'backups' would have gone with it.
Mia T.
Founding Engineer · B2B SaaS
I never tested my restore process until I actually needed it. Turns out my pg_dump cron had been failing silently for weeks. By the time I noticed, I'd lost a month of data.
James O.
Freelance Developer
A client called me at 7am saying their site was down and data was gone. I had nothing — no backups, no answer. I lost that client. Now backups are the first thing I set up on every server, before anything else.
Sara K.
DevOps Consultant
My server got compromised and wiped. The backups I thought I had were on the same machine — gone too. A backup on the same server isn't a backup. It's just a second copy of what you're about to lose.
Dan M.
Technical Founder
A botched migration wiped a MySQL table on a Friday evening. No automated backups — just a manual dump from Monday. We lost 4 days of data and spent the weekend explaining it to customers. Not once. Never again.
Priya N.
SRE · Startup
Got questions?
We've got answers. And if we don't, we'll get back to you.
Is my data encrypted?
Yes — AES-256 before it leaves your server, and encrypted at rest in our cloud. Your keys are derived locally. We never see them.
Yes — AES-256 before it leaves your server, and encrypted at rest in our cloud. Your keys are derived locally. We never see them.
PostgreSQL, MySQL, and MongoDB out of the box. The agent picks the right dump tool automatically — and if your server is missing the MongoDB tools, capsule install-mongo sets them up for you. More databases are on the way.
In Capsule's cloud, off your server entirely. That's the whole point — if your server goes down, your backups don't go with it.
Only once, at install — to place the binary and register the systemd service that runs your backups on schedule. After that, it only touches the databases you explicitly connect. Your database credentials never leave your server.
It shows up on your dashboard — every failure, even one where the database dump itself broke before a single byte was written. Backups that fail silently in a log file on a server nobody reads aren't backups.
Nothing bad — your backups are already in the cloud. Spin up a new server, reinstall the agent, run capsule auth, and restore. The dead server can't touch your data.
Yes. For Docker containers, Capsule runs the dump command directly inside the container via docker exec — no exposed port needed. Remote hosts and managed databases connect over the standard port.
You get a 30-day window to export anything you need. After that, your data is permanently deleted from our servers.
Run capsule → pick your connection → open Backups → select a snapshot → confirm. The agent downloads it from the cloud, decrypts and decompresses it, and pipes it straight into your database — and rolls back automatically if anything fails midway. You can also kick off restores from the web dashboard.
Still have questions? support@trycapsule.xyz
Pricing
Honest pricing. Free to start.
Start on a free plan that's genuinely useful, and upgrade the day Capsule is guarding data you can't afford to lose.
No credit card to start · Cancel anytime
Stop hoping. Start knowing.
Your databases deserve better than hoping nothing goes wrong.
Capsule takes 60 seconds to install and runs quietly in the background. Start free — upgrade the day it's guarding data you can't afford to lose.
No credit card to start · Cancel anytime