GitHub backups to your own S3 or Azure Blob Storage

A GitHub backup tool built for teams. Your storage. Your control.

VaultPulse automates daily GitHub repository backups for software teams and development agencies. Preserve Git history, branches, tags, Git LFS objects and repository settings metadata in an Amazon S3 bucket or Azure Blob Storage container you own. Monitor backup health and restore snapshots into new or eligible empty repositories.

View Live Demo
Survive the bad day

Keep an independent copy of your Git history outside GitHub, so a deleted repository or bad force-push is not your only copy. Restoring into GitHub requires GitHub to be available.

Your storage, your credentials

Choose S3 with a scoped IAM role or encrypted access keys, or Azure Blob Storage with an Entra service principal and encrypted client secret.

Set up in minutes

Install the GitHub App, connect and test your S3 or Azure storage, then pick repositories. Daily backups start straight away.

vaultpulse.cloud/dashboard
OPEN LIVE DEMO →
Protected repositories
48
across 3 GitHub accounts
Success rate (30d)
99.4%
1,437 snapshots
Stored in your cloud
212 GB
Amazon S3 or Azure Blob
Needs attention
2
1 failing · 1 stale
acme/payments-api2h agohealthy
acme/web-frontend2h agohealthy
acme/ml-models26h agofailing
Official GitHub App
Your S3 or Azure Blob Storage
Scoped storage credentials
Google SSO, TOTP & RBAC
Built for engineering teams

Everything you need to recover your code

Hosting your code and keeping an independent backup are different jobs. VaultPulse adds scheduled snapshots, customer-owned storage and a recovery workflow to your GitHub repositories.

Daily, complete snapshots

Every branch, tag and commit as a bare mirror, plus Git LFS objects when a repository uses them, and a JSON record of repository settings and branch protection.

Stored in your cloud account

Compressed archives land in your own Amazon S3 bucket or Azure Blob Storage container under a prefix you choose. S3 uses SSE-S3; Azure uses your account's storage encryption. Retention defaults to 30 days; cloud storage charges are separate.

Restore in a few clicks

Pick a snapshot and restore Git branches, tags and LFS into a new or eligible empty repository, including another connected GitHub organization in your workspace. Settings and protections are not recreated.

Backup health at a glance

See which repositories are healthy, failing, stale or waiting for storage, with a 14-day activity chart and a needs-attention list.

Organizations and personal accounts

Connect GitHub organizations and user accounts to one workspace, each with its own S3 or Azure Blob destination. The Unlimited plan has no limit on accounts.

Team roles

Owners, admins and maintainers manage connections and restores; viewers can watch backup health without touching anything.

How it works

Protected in four steps

  1. 1

    Install the GitHub App

    Choose an organization or personal account and grant access to all or selected repositories.

  2. 2

    Connect your storage

    Choose S3 with generated IAM policies, or Azure Blob with a container-scoped Entra service principal. Save and test the connection.

  3. 3

    Pick repositories

    Tick the repositories to protect. The first snapshot runs immediately, then daily.

  4. 4

    Restore when needed

    Restore a snapshot into a new or eligible empty repository in a connected account. Private backups cannot be restored into public repositories.

Security by design

Least privilege, end to end

Each backup uses a short-lived GitHub token scoped to one repository with read-only contents access. Restores get a write token for only the destination repository. Archives go to your own S3 bucket or Azure Blob container. Use a scoped S3 IAM role or encrypted access keys, or an Azure service principal with container-scoped permissions and an encrypted client secret. VaultPulse does not retain a copy of your code.

Per-repository, short-lived GitHub tokens
Cross-account IAM role with External ID
S3 IAM role or encrypted IAM access keys
Azure container-scoped Entra service principal
Restores never overwrite existing history
Roles: Owner, Admin, Maintainer, Viewer
Simple GBP pricing

Start free, grow with your team

Storage is billed by AWS or Azure directly to your account, so you only pay us for the service.

Free

Free forever, no card required

£0/mo
  • 1 personal GitHub account
  • Up to 5 repositories
  • Up to 10 team seats
  • Daily GitHub repository backups
  • Your own S3 or Azure Blob Storage
  • Restore to a new repository
  • Email support
Most Popular

Growth

For growing engineering teams

£99/year

Billed yearly. Save £9 compared with monthly billing.

  • 1 GitHub organization + 1 personal account
  • Up to 50 repositories
  • Up to 20 team seats
  • Everything in Free
  • Backup health dashboard
  • Priority support

Unlimited

For large teams and compliance needs

£199/year

Billed yearly. Save £29 compared with monthly billing.

  • Unlimited GitHub organizations & personal accounts
  • Unlimited repositories
  • Up to 100 team seats
  • Everything in Growth
  • Security review support
  • Dedicated account manager & SLA
Before you choose a backup tool

GitHub backup and recovery questions

Know what your backup contains, where it lives and what recovery requires.

Why back up GitHub repositories outside GitHub?

An independent backup gives you a separate recovery copy if a repository is deleted or history is changed. VaultPulse writes daily snapshots to your own Amazon S3 bucket or Azure Blob Storage container rather than keeping your only copy on the same platform. A completed backup is not proof of recovery: test restores and validate the recovered code.

What does VaultPulse back up, and what is not included?

Snapshots contain Git mirror history, branches, tags, Git LFS objects when used, and repository settings metadata. Default-branch protection metadata is captured when GitHub makes it available. GitHub issues, pull-request discussions, Actions secrets and other secret values are not included. A repository backup is not a complete backup of your GitHub account or organization.

Is a Git clone enough for a backup?

A working clone is useful, but it is not the same as scheduled, retained backup snapshots. Depending on how you clone, it may not contain all refs, LFS objects or repository settings metadata. VaultPulse combines a Git mirror with LFS and settings capture, daily scheduling, backup history and a restore workflow.

How do GitHub repository restores work?

Choose a saved snapshot and restore into a new repository or an existing empty repository that the GitHub App can access. The destination can be another connected, plan-eligible GitHub account or organization in the same VaultPulse workspace. Restore pushes branches, tags and LFS and sets the original default branch; it does not recreate repository settings or branch protections. GitHub must be available, and private sources cannot be restored into public repositories.

Where are backups stored, and how long are they retained?

Choose your own Amazon S3 bucket or Azure Blob Storage container. S3 uses SSE-S3 and a scoped IAM role with an External ID or encrypted IAM access keys. Azure uses an Entra service principal with an encrypted client secret and your account's storage encryption. Retention defaults to 30 days; lifecycle rules, soft delete and immutability can affect actual retention. AWS or Azure storage and request charges are separate from your VaultPulse subscription.

Can I monitor backups and download readiness reports?

The dashboard shows recorded backup success, failing and stale repositories, snapshots and restore history. You can generate downloadable PDF backup-readiness reports for selected repositories. These assess recorded evidence and configured policies; they do not validate recovered content, certify ISO/IEC 27001 compliance or constitute a SOC 2 audit.

See the workflow in the live GitHub backup demo, review plans and pricing, or ask about your recovery requirements.

Contact Us

Questions about protecting your code?

Ask about onboarding, GitHub App permissions, S3 or Azure Blob Storage setup, pricing, security reviews, or anything else you need before rolling VaultPulse out to your organization.

Support mailbox
support@vaultpulse.cloud
Best for
Demos, support, pricing & security