# European alternatives to Amazon S3 in 2026, and how to move

Last updated: 2026-11-10

If your code already talks to S3, you can usually keep it and change three things: the endpoint, the keys and the bucket names. **Hetzner Object Storage** is a simple target for moderate traffic, **OVHcloud** publishes a full S3 migration path with free egress at the destination, and **Impossible Cloud** fits data that's downloaded a lot, with no egress or API fees. **Exoscale** suits data that must stay in one named country.

The hard part is rarely the copy. It's the S3 features your app relies on, and the AWS bill for moving data out.

## S3 replacements at a glance

| Provider | Company | Storage price | Egress | Help with moving |
|---|---|---|---|---|
| Hetzner | Germany | €6.49 a month excl. VAT, includes 1 TB | 1 TB included, then €1 per TB excl. VAT | Free uploads and free S3 operations |
| OVHcloud | Roubaix, France | See its price list | Free at the destination | Published S3 migration guide |
| Impossible Cloud | Hamburg, Germany | €7.99 per TB a month | No fees, under a fair use policy | 5 TB free for 30 days, assisted migration |
| Exoscale | Lausanne, Switzerland | Billed by use | Outbound billed, inbound free | Works with any S3-compatible tool |
| IONOS | Germany | $4.99 per TB on its US price list | Not included in the storage price | No fee for PUT, GET, LIST or DELETE, 30-day trial |
| Clever Cloud | France | See its pricing page | Not stated | Ready-made s3cmd config, AWS CLI guide |
| Eurobase | Warsaw, Poland | Included in each plan | Plan transfer allowance | Not S3-compatible |

Prices are from each provider's own page, checked on 9 and 10 November 2026.

## What to check before you copy a single object

- **Which S3 calls your code makes.** List every operation: multipart uploads, presigned URLs, CORS, lifecycle rules, versioning, object lock, server-side encryption. Then compare against what the new provider documents. Hetzner keeps a list of supported S3 actions, and OVHcloud's migration page names the features to verify first.
- **Your object sizes.** Millions of tiny files behave differently from a few large ones. Exoscale bills a minimum of 128 KiB per object, and Hetzner caps a bucket at 50 million objects.
- **Egress on both sides.** AWS charges to send data out, and the new provider may charge for downloads. Model both bills.
- **Permissions.** IAM policies don't travel, so you'll recreate keys and bucket policies.
- **What triggers on upload.** If S3 events start Lambda functions today, plan a replacement before the move, because that wiring stays on AWS.
- **Who the provider is.** An EU region of a US company and an EU company are different answers. See [EU region or EU company](/i/eu-region-vs-eu-company-cloud-act).

## Getting your data out of AWS without a large bill

AWS gives every account 100 GB a month of free data transfer to the internet. Above that, it waives the charge for customers moving off AWS, but not automatically: you ask AWS Support, and once approved, you get credits for the data being migrated. You don't have to close your account.

Outside the EU, eligible customers have 180 days to finish the move. If you're in the EU and switching under the Data Act, AWS points you to the criteria in its EU Data Act Addendum instead, and the UK has a separate switching addendum.

## 1. Hetzner Object Storage

A German host with S3-compatible buckets in Falkenstein, Nuremberg and Helsinki. Uploads into Hetzner are free, and so are S3 operations such as PUT, GET and DELETE, which keeps the copy itself cheap.

- **Best for:** app uploads and backups with moderate download traffic.
- **Price:** a base fee of €6.49 a month excl. VAT covers 1 TB stored and 1 TB downloaded. Anything above that is charged by the hour as you use it.
- **What it lacks:** editing an uploaded object, since Hetzner doesn't allow changes to stored data; you upload a new version instead. The console only creates buckets and keys, and everything else goes through the S3 API.

## 2. OVHcloud Object Storage

OVHcloud, a large French provider, has a migration page aimed squarely at S3 users: keep your application's S3 calls, change the endpoint and credentials, copy with rclone or another tool, verify, then cut over with a way back. Its checklist has you confirm lifecycle rules, replication, versioning, Object Lock, encryption, ACLs and CORS in your region before any copy.

- **Best for:** production data that needs one of its five storage classes or a Multi-Zone setup across three zones, which comes with a 99.99% availability SLA.
- **Price:** by storage class and region. See OVHcloud's public cloud price list.

## 3. Impossible Cloud

Impossible Cloud is headquartered in Hamburg, Germany, and keeps every object in one hot tier in European data centres. Downloads and API calls cost nothing under its fair use policy, which it defines as egress in line with normal workloads.

- **Best for:** media, downloads and backups where egress would dominate an S3 bill.
- **Price:** €7.99 per TB a month, billed monthly on demand with no commitment. Reserved capacity for 1, 3 or 5 years starts at 25 TB and is sold through partners. You can test 5 TB free for 30 days without a credit card.
- **What it lacks:** cheaper storage tiers for cold data, since there's one class at one price.

## 4. Exoscale

A Swiss cloud with Simple Object Storage in 8 zones across Switzerland, Germany, Austria, Bulgaria and Croatia. Data and replicas stay in the country of the zone you pick, so residency is a choice you make per bucket.

- **Best for:** regulated data that must sit in a named country, or in Switzerland.
- **Price:** billed by use, for storage and outbound traffic. Inbound traffic is free, and traffic between workloads and storage in the same zone is free too. Archival Storage is €0.0042 per GB a month, on request.
- **What it lacks:** cheap storage of very small files, because of the 128 KiB minimum per object.

## 5. IONOS

IONOS Cloud Object Storage runs in data centres in Germany, Spain and the USA, so pick a European location when you create the bucket. Object Lock can keep files from being changed or deleted for a retention period you set.

- **Best for:** large archives where a low price per TB matters most.
- **Price:** $4.99 per TB on its US price list. Writes, reads, LIST and DELETE calls carry no fee, while data transmission is added at its current rates. You can try it for 30 days without a contract.

## 6. Clever Cloud Cellar

Cellar is the S3-compatible add-on of Clever Cloud, a French platform. You can download a ready-made s3cmd configuration from the add-on dashboard, use the AWS CLI, set bucket policies and CORS, and sign URLs.

- **Best for:** apps already hosted on Clever Cloud that want their bucket on the same bill.
- **Price:** see Clever Cloud's pricing page.
- **What it lacks:** bucket names with underscores, which Cellar rejects. Rename those during the move.

## 7. Eurobase, for the app that uses the bucket

Eurobase doesn't replace S3: its Storage product keeps project files in public or private buckets, but it has no S3 API, so S3 clients and SDKs can't point at it. What Eurobase does is host the web app: a Next.js or other frontend on V8 isolates, or a server in a container, deployed from Git on European infrastructure run by Scaleway, a French provider.

- **Best for:** moving the app off AWS too, while files live in one of the S3-compatible stores above.
- **Price:** a Free plan, then €10 or €20 a month + VAT for the workspace. There are no usage charges today: work over a limit is refused, apps on V8 isolates and Functions stop until the monthly reset, and containers and static sites keep serving.
- **What it lacks:** an S3 API, managed Postgres and persistent disks. Containers lose what they wrote when they scale to zero, so files belong in object storage. Work toward ISO 27001 and SOC 2 has started, but neither certificate is held today.

## A migration plan that holds up

1. Inventory buckets, object counts, total size and every S3 operation your code uses.
2. Create the target buckets, keys and policies first, ideally as code.
3. Ask AWS Support for the free data transfer before the bulk copy.
4. Copy while S3 stays the source of truth. rclone supports AWS S3, Hetzner, Impossible Cloud, IONOS Cloud, OVHcloud, Scaleway and Clever Cloud Cellar, and `aws s3 sync` accepts a different provider through `--endpoint-url`.
5. Check counts, sizes and checksums. Be careful with ETags: rclone's docs point out that for multipart or encrypted uploads the ETag isn't the MD5 of the data.
6. Switch the endpoint and keys in your app's configuration, catch up on objects written since the first copy, and keep the S3 buckets until you're confident.

If you're still choosing a store mainly on cost, [S3-compatible object storage in Europe](/i/european-object-storage) compares prices side by side.

## Frequently asked questions

### Does AWS charge egress when I move my data out of S3?

The first 100 GB a month is free. For a full move, AWS waives the transfer cost through credits if you request them from AWS Support. Outside the EU you have 180 days to finish, and EU customers follow the EU Data Act process instead.

### Do I need to rewrite my code to leave S3?

Usually not, if the new provider supports the S3 operations you use. Event triggers, IAM roles or specific encryption modes may need rework.

### What's the best tool to copy buckets from S3 to a European provider?

rclone is a common choice because it speaks to both sides and can compare the result with `rclone check`. The AWS CLI also works with `aws s3 sync` and `--endpoint-url`.

### Is Eurobase Storage S3-compatible?

No. It's project file storage with public and private buckets, managed from the Eurobase dashboard. For an S3 API, pair an app on Eurobase with one of the providers above.

## Sources

- [AWS: free data transfer out when moving out of AWS](https://aws.amazon.com/blogs/aws/free-data-transfer-out-to-internet-when-moving-out-of-aws/)
- [Hetzner Object Storage](https://www.hetzner.com/storage/object-storage/) and [Hetzner Object Storage overview](https://docs.hetzner.com/storage/object-storage/overview/)
- [OVHcloud: migrate S3 data to a European cloud](https://www.ovhcloud.com/en/public-cloud/object-storage/public-cloud-uc-migrate-s3-data-european-cloud-no-code-changes/) and [OVHcloud public cloud prices](https://www.ovhcloud.com/en/public-cloud/prices/)
- [Impossible Cloud pricing](https://www.impossiblecloud.com/pricing) and [Impossible Cloud about us](https://www.impossiblecloud.com/about-us)
- [Exoscale Object Storage](https://www.exoscale.com/object-storage/) and [Exoscale pricing](https://www.exoscale.com/pricing/)
- [IONOS Cloud Object Storage](https://cloud.ionos.com/storage/object-storage)
- [Clever Cloud Cellar documentation](https://www.clever.cloud/developers/doc/deploy/storage/cellar/) and [Clever Cloud pricing](https://www.clever.cloud/pricing/)
- [rclone S3 backend](https://rclone.org/s3/) and [AWS CLI s3 sync](https://docs.aws.amazon.com/cli/latest/reference/s3/sync.html)
- [Eurobase Storage](/products/storage), [Eurobase plans](/docs/plans), [Migrate from Render](/docs/guides/migrate-from-render) and [Eurobase subprocessors](/legal/subprocessors)
