bucketpilot/Docs

How to replicate S3 buckets across AWS accounts

Keep a copy of your S3 data in a different AWS account for isolation and disaster recovery — scheduled, incremental, and verifiable.

Why a second account

A backup in the same AWS account shares the account's blast radius: a compromised credential, a runaway script, or a billing suspension can take the original *and* the copy. Replicating to a different account (often in a different region too) is the standard answer — the copy survives anything that happens to the first account.

AWS's native S3 Replication can do this, but it's per-bucket configuration with IAM policies on both sides, only replicates objects written *after* it's enabled, and needs a batch job for backfill.

How to do it in BucketPilot

  1. 1.Connect both AWS accounts as credentials (the one-click CloudFormation role works per account).
  2. 2.Discover buckets and import the source bucket from account A and the destination bucket from account B — they sit side by side in one console.
  3. 3.Create a replication job: source, destination, optional prefix, and a schedule (hourly, daily, or weekly).
  4. 4.Check the first run's log — per-object events show exactly what copied, skipped, or failed.

Runs are incremental — only new or changed objects transfer — and everything streams, so object size isn't a limit. The job's run history is your evidence that the copy is current; failures notify you instead of failing silently.

© 2026 BucketPilot