Skip to content

digitalocean spaces

2 posts with the tag "digitalocean spaces"

DigitalOcean Spaces: Regions, Cross-Region Replication, and Backup

DigitalOcean Spaces regions and cross-region replication explained

Spaces Regions and the Replication Question

Section titled "Spaces Regions and the Replication Question"

The problem: people assume DigitalOcean Spaces replicates across regions the way Amazon S3 can, so a single Space feels like a backup. It is not. A Space lives in one region, and DigitalOcean does not copy it to another region for you.

The short answer: pick the region closest to your users when you create a Space, and if you want a second copy in another region or another provider, you have to make it yourself. This page lists the regions, explains what Spaces does and does not replicate, and shows how to create a real backup copy.

Each Space is tied to one datacenter region, chosen at creation and fixed afterward. The current Spaces regions and their locations:

Region codeLocation
NYC3New York City, United States
SFO3San Francisco, United States
AMS3Amsterdam, Netherlands
FRA1Frankfurt, Germany
SGP1Singapore
SYD1Sydney, Australia
BLR1Bangalore, India

DigitalOcean adds regions over time, so check their documentation for the latest availability. The practical rule is unchanged: choose the region nearest the people who read the data most, because a Space only serves from its own region's endpoint.

Does DigitalOcean Spaces Do Cross-Region Replication?

Section titled "Does DigitalOcean Spaces Do Cross-Region Replication?"

No. DigitalOcean Spaces does not offer built-in cross-region replication. There is no setting that mirrors a Space in NYC3 to a Space in FRA1, and no automatic failover to another region.

This is the main difference from Amazon S3, which has Cross-Region Replication (CRR) as a bucket feature. On Spaces, if you want the same objects in two regions, you copy them there yourself and keep them in sync by re-copying when things change.

A few consequences worth knowing:

  • A region outage affects a single Space directly. With no replica, you cannot fail over to another region automatically.
  • Compliance or latency in a second geography means creating a second Space and populating it yourself.
  • There is no native "backup to another region" button. Backup is something you set up, not something Spaces does for you.

DigitalOcean Spaces includes a built-in CDN that caches your objects at edge locations for faster delivery. This is easy to mistake for replication, but it is not. The CDN caches copies for performance and can expire them at any time. The authoritative copy still lives in one region, and if that object is lost, the cache does not protect you. Edge caching speeds up reads; it does not give you a durable second copy.

How to Copy a Space to Another Region or Provider

Section titled "How to Copy a Space to Another Region or Provider"

Since Spaces will not replicate for you, the job is a straightforward copy, and Blober handles it without scripts or AWS-CLI loops.

  • Spaces to another Spaces region. Connect your DigitalOcean account in Blober. It detects every Space across all regions in one view, so you can copy objects from a Space in one region into a Space you create in another. Run it again later to refresh the copy, skipping objects that already exist.
  • Spaces to another provider. Use the same flow to copy a Space to AWS S3, Backblaze B2, Wasabi, Cloudflare R2, Azure Blob, Google Drive, Dropbox, or local and NAS storage, for an offsite backup that does not depend on DigitalOcean at all.
  • Resumable. Large copies survive a dropped connection and continue where they stopped.

This gives you the second copy that Spaces does not provide on its own, in whichever region or provider you choose.

If the goal is not a backup but a move, the steps are the same, just pointed at one destination. The most common move is to Amazon S3, which has the storage tiers and ecosystem Spaces lacks. There is a full walkthrough in How to Migrate from DigitalOcean Spaces to AWS S3, including how Blober detects Spaces across all seven regions and maps them to S3 storage classes.

For very large Spaces with millions of objects, see Migrating 100 Million Files from DigitalOcean to Backblaze.

Does DigitalOcean Spaces support cross-region replication? No. There is no built-in cross-region replication. To have a Space's objects in a second region, you copy them yourself, which Blober can do across all regions in one workflow.

Which regions can I create a Space in? Currently NYC3, SFO3, AMS3, FRA1, SGP1, SYD1, and BLR1. DigitalOcean occasionally adds regions, so confirm on their site.

Can I move a Space from one region to another? Not in place. You create a new Space in the target region and copy the objects over. Blober copies between regions directly without downloading everything to your computer first.

Is the Spaces CDN a backup? No. The CDN caches objects at the edge for faster delivery and can evict them at any time. The durable copy still sits in one region. For a backup, make a separate copy in another region or provider.

How do I migrate from DigitalOcean to AWS? Connect both in Blober, set DigitalOcean as the source and S3 as the destination, and run. The DigitalOcean Spaces to AWS S3 guide covers it step by step.

Make the second copy that DigitalOcean Spaces will not make for you, to another region or another provider. Blober is a one-time purchase with no per-GB fees.

Download Blober at blober.io

How to Migrate from DigitalOcean Spaces to AWS S3

Migrate from DigitalOcean Spaces to AWS S3 with Blober

Growing Out of DigitalOcean Spaces

Section titled "Growing Out of DigitalOcean Spaces"

DigitalOcean Spaces is a good starting point for object storage. It is simple, affordable ($5/month for 250 GB + 1 TB transfer), and S3-compatible. For small to mid-size projects, it does the job.

But as your storage needs grow, you run into limitations:

  • Region constraints. Spaces are region-scoped. Each region only sees its own Spaces. Cross-region replication is not available.
  • No storage tiers. Everything is stored at the same tier. There is no equivalent to S3's Glacier or Intelligent-Tiering for cost optimization.
  • Limited ecosystem. AWS S3 integrates with hundreds of services: Lambda, CloudFront, Athena, Step Functions, SageMaker. DigitalOcean's ecosystem is smaller.
  • Bandwidth limits. The included 1 TB transfer can be burned through quickly on busy applications.

When a project outgrows Spaces, AWS S3 is the most common destination.

DigitalOcean runs Spaces across 7 regions: NYC3, SFO3, AMS3, SGP1, FRA1, SYD1, and BLR1. If you have Spaces in multiple regions, you need to handle each region separately.

Blober detects all your Spaces across all DigitalOcean regions automatically. When you connect your DigitalOcean account, Blober probes all 7 regions in parallel and presents a unified view of all your Spaces. You do not need to configure each region separately.

DigitalOcean recently introduced cold storage tiers for Spaces. Blober detects whether a Space is using Standard or Cold storage and flags it accordingly. This helps you make informed decisions about which S3 storage class to target.

Step 1: Connect DigitalOcean Spaces

Section titled "Step 1: Connect DigitalOcean Spaces"

Add DigitalOcean Spaces as a provider in Blober. You can use either:

  • S3-compatible credentials (Access Key + Secret Key) for basic access
  • Personal Access Token for richer bucket listing with project metadata

Blober discovers all your Spaces across all regions.

Add AWS S3 with your Access Key ID, Secret Access Key, and preferred region. Blober lists your S3 buckets.

Create a workflow with DigitalOcean as the source and S3 as the destination. Browse your Spaces, select files or entire Spaces, and choose the target S3 bucket and storage class.

Options for the destination:

  • Storage class: Standard, Intelligent-Tiering, Standard-IA, Glacier Instant Retrieval, Glacier, or Deep Archive
  • Target bucket: Any existing S3 bucket (or create one in the AWS console first)

Blober handles the transfer with parallel multipart uploads on both sides. S3-to-S3-compatible transfers are efficient because both services speak the same protocol.

DigitalOcean SpacesAWS S3 StandardAWS S3 Standard-IA
Storage (1 TB)$5/mo (250 GB included) + $20/mo extra$23/mo$12.50/mo
Bandwidth (1 TB)Included$90/mo$90/mo
PUT requests (100K)$0.50$0.50$1.00

DigitalOcean is cheaper for simple, low-traffic use cases. S3 is more cost-effective at scale with its tiering options, especially if you use Intelligent-Tiering or Glacier for archival data.

One-time purchase. Transfer as much as you need.

Download Blober at blober.io