To start off if you do choose to use S3 replication you will need to have versioning enabled on the source and destination buckets being used. You have two options for replication, Cross-Region Replication, CRR and, Same-Region Replication, SRR. When you enable replication, objects from one bucket are replicated asynchronously to another bucket and this can be cross-region, same region, even different AWS accounts. When you enable replication however it is important to note that existing objects won’t be replicated unless you choose to run an S3 batch replication on existing objects. You even have the ability to replicate delete markers onto your bucket, however permanent deletions are not replicated. Replication can be useful if you have a dev / test that needs to have the same objects or it can be useful if you want to decrease latency on your S3 bucket by having data replicated to another bucket that’s in a region closer to some of your users. You can’t chain replications, if you have replication from bucket 1 to 2 and bucket 2 to 3, creating an object in bucket 1 will only replicate to 2. It will not also be replicated to 3.