Skip to content
inetGeek

DigitalOcean vs Hetzner

A comparison of DigitalOcean and Hetzner built from values read directly from each provider's own documentation, with the source recorded against every figure.

Updated 23 criteria compared

The short answer

Pick DigitalOcean if
Teams that want plain Linux virtual machines with predictable per-second billing from $4 a month, and the option of managed databases beside them. App Platform adds Git and Docker deploys on top.
Pick Hetzner if
Self-managed Linux servers in European and US locations, billed hourly with a monthly cap so a deleted server is only charged for the hours it ran.

8 sourced criteria separate them:

Pricing model
DigitalOcean: billed per second with a minimum charge of 60 seconds or $0.01, whichever is higher
Hetzner: Your server's bill will never exceed its monthly price cap. If you delete your cloud server before the end of the billing month, we will only bill you for the hourly rate.
Egress over allowance
DigitalOcean: $0.01 per GiB (Droplets); $0.02 per GiB (App Platform)
Hetzner: €1.00 per TB over the included traffic in Europe and the US; €7.40 per TB in Singapore. Billed in blocks of 100 MB, rounded up.
When you exceed a cap
DigitalOcean: Billed automatically — outbound transfer beyond the pooled plan allowance is charged at $0.01 per GiB; inbound transfer is free
Hetzner: Billed automatically — traffic beyond the amount included with the server is billed in blocks of 100MB, rounded up; Hetzner emails at 75% and 100% of the included traffic but explicitly does not cap or stop usage
Sites or apps included
DigitalOcean: No more than 10 Droplets can be created at the same time through the Control Panel or the API
Hetzner: By default, up to 5 servers (and by default up to 8 dedicated resource servers); Hetzner states default limits can be increased on request
File or inode limit
DigitalOcean: Up to 5000 Block Storage volumes per account
Hetzner: Up to 16 Volumes per server
Docker deployment
DigitalOcean: Supported
Hetzner: Limited
Containers
DigitalOcean: Supported
Hetzner: Limited
Regions
DigitalOcean: NYC1, NYC2, NYC3 (New York City, United States); AMS3 (Amsterdam, the Netherlands); SFO2, SFO3 (San Francisco, United States); SGP1 (Singapore); LON1 (London, United Kingdom); FRA1 (Frankfurt, Germany); TOR1 (Toronto, Canada); BLR1 (Bangalore, India); SYD1 (Sydney, Australia); ATL1 (Atlanta, United States); RIC1 (Richmond, United States); MKC1 (Kansas City, United States); MEM1 (Memphis, United States)
Hetzner: DE Falkenstein (fsn1); DE Nuremberg (nbg1); FI Helsinki (hel1); US Ashburn, VA (ash); US Hillsboro, OR (hil); SG Singapore (sin)

No affiliate links, sponsored placements or paid rankings appear on this site. Ordering follows the sourced data and the stated criteria.

01.

At a glance.

CriterionDigitalOceanHetzner
Pricing
Pricing modelbilled per second with a minimum charge of 60 seconds or $0.01, whichever is higherYour server's bill will never exceed its monthly price cap. If you delete your cloud server before the end of the billing month, we will only bill you for the hourly rate.
Egress over allowance$0.01 per GiB (Droplets); $0.02 per GiB (App Platform)€1.00 per TB over the included traffic in Europe and the US; €7.40 per TB in Singapore. Billed in blocks of 100 MB, rounded up.
When you exceed a capBilled automatically — outbound transfer beyond the pooled plan allowance is charged at $0.01 per GiB; inbound transfer is freeBilled automatically — traffic beyond the amount included with the server is billed in blocks of 100MB, rounded up; Hetzner emails at 75% and 100% of the included traffic but explicitly does not cap or stop usage
Limits
Sites or apps includedNo more than 10 Droplets can be created at the same time through the Control Panel or the APIBy default, up to 5 servers (and by default up to 8 dedicated resource servers); Hetzner states default limits can be increased on request
File or inode limitUp to 5000 Block Storage volumes per accountUp to 16 Volumes per server
Deployment
Docker deploymentSupportedLimited
ContainersSupportedLimited
Infrastructure
Persistent processesSupportedSupported
Persistent storageSupportedSupported
RegionsNYC1, NYC2, NYC3 (New York City, United States); AMS3 (Amsterdam, the Netherlands); SFO2, SFO3 (San Francisco, United States); SGP1 (Singapore); LON1 (London, United Kingdom); FRA1 (Frankfurt, Germany); TOR1 (Toronto, Canada); BLR1 (Bangalore, India); SYD1 (Sydney, Australia); ATL1 (Atlanta, United States); RIC1 (Richmond, United States); MKC1 (Kansas City, United States); MEM1 (Memphis, United States)DE Falkenstein (fsn1); DE Nuremberg (nbg1); FI Helsinki (hel1); US Ashburn, VA (ash); US Hillsboro, OR (hil); SG Singapore (sin)

Only criteria both providers publish appear here; a tinted cell marks a real difference. Criteria only one of them documents are listed below, and an absence there means we found no source — not that the feature is missing. How we source this.

02.

Where they differ.

Pricing model

DigitalOcean
billed per second with a minimum charge of 60 seconds or $0.01, whichever is higher
Hetzner
Your server's bill will never exceed its monthly price cap. If you delete your cloud server before the end of the billing month, we will only bill you for the hourly rate.
Sources (2) →
  • Droplet Pricing | DigitalOcean Documentation ↗

    “billed per second with a minimum charge of 60 seconds or $0.01, whichever is higher”

    Read 2026-09-05 · official docs

  • FAQ - Hetzner Docs ↗

    “Your server's bill will never exceed its monthly price cap. If you delete your cloud server before the end of the billing month, we will only bill you for the hourly rate.”

    Read 2026-09-05 · official docs

Egress over allowance

DigitalOcean
$0.01 per GiB (Droplets); $0.02 per GiB (App Platform)
Hetzner
€1.00 per TB over the included traffic in Europe and the US; €7.40 per TB in Singapore. Billed in blocks of 100 MB, rounded up.
Sources (2) →
  • Bandwidth Billing | DigitalOcean Documentation ↗

    “Droplets: Additional outbound transfer is billed at $0.01 per GiB. App Platform: Additional outbound transfer is billed at $0.02 per GiB.”

    Read 2026-09-05 · official pricing

  • Cloud pricing data — hetzner.com ↗

    “"HEL1": { "EUR": { "price": "42.99", "hourPrice": "0.068900", "setupPrice": 0, "traffic": { "0": 0, "20": "1.000000" } } }, "SIN": { "EUR": { "price": "53.99", "traffic": { "0": 0, "1": "7.400000" } } }”

    Read 2026-09-05 · official pricing

When you exceed a cap

DigitalOcean
Billed automatically — outbound transfer beyond the pooled plan allowance is charged at $0.01 per GiB; inbound transfer is free
Hetzner
Billed automatically — traffic beyond the amount included with the server is billed in blocks of 100MB, rounded up; Hetzner emails at 75% and 100% of the included traffic but explicitly does not cap or stop usage
Sources (2) →
  • Droplet Pricing | DigitalOcean Documentation ↗

    “Each Droplet plan includes an amount of free outbound data transfer. Additional outbound transfer is billed at $0.01 per GiB. Inbound transfer to Droplets is free.”

    Read 2026-09-05 · official docs

  • FAQ - Hetzner Docs ↗

    “If you exceed the traffic included in your package, we will bill you for the over-usage in blocks of 100MB. If you only consume a fraction of 100MB, we will round up to the next full 100MB.”

    Read 2026-09-05 · official docs

Sites or apps included

DigitalOcean

No more than 10 Droplets can be created at the same time through the Control Panel or the API

Hetzner

By default, up to 5 servers (and by default up to 8 dedicated resource servers); Hetzner states default limits can be increased on request

Sources (2) →

File or inode limit

DigitalOcean

Up to 5000 Block Storage volumes per account

Hetzner

Up to 16 Volumes per server

Sources (2) →

Docker deployment

DigitalOcean
Supported
Hetzner
Limited
Sources (2) →

Containers

DigitalOcean
Supported
Hetzner
Limited
Sources (2) →

Regions

DigitalOcean
NYC1, NYC2, NYC3 (New York City, United States); AMS3 (Amsterdam, the Netherlands); SFO2, SFO3 (San Francisco, United States); SGP1 (Singapore); LON1 (London, United Kingdom); FRA1 (Frankfurt, Germany); TOR1 (Toronto, Canada); BLR1 (Bangalore, India); SYD1 (Sydney, Australia); ATL1 (Atlanta, United States); RIC1 (Richmond, United States); MKC1 (Kansas City, United States); MEM1 (Memphis, United States)
Hetzner
DE Falkenstein (fsn1); DE Nuremberg (nbg1); FI Helsinki (hel1); US Ashburn, VA (ash); US Hillsboro, OR (hil); SG Singapore (sin)
Sources (2) →
  • Regional Availability | DigitalOcean Documentation ↗

    “NYC1 New York City, United States nyc1 / NYC2 New York City, United States nyc2 / NYC3 New York City, United States nyc3 / AMS3 Amsterdam, the Netherlands ams3 / SFO2 San Francisco, United States sfo2 / SFO3 San Francisco, United States sfo3 / SGP1 Singapore sgp1 / LON1 London, United Kingdom lon1 / FRA1 Frankfurt, Germany fra1 / TOR1 Toronto, Canada tor1 / BLR1 Bangalore, India blr1 / SYD1 Sydney, Australia syd1 / ATL1 Atlanta, United States atl1 / RIC1 Richmond, United States ric1 / MKC1 Kansas City, United States mkc1 / MEM1 Memphis, United States mem1”

    Read 2026-09-05 · official docs

  • Locations - Hetzner Docs ↗

    “DE Falkenstein fsn1 / US Ashburn, VA ash / US Hillsboro, OR hil / SG Singapore sin / DE Nuremberg nbg1 / FI Helsinki hel1”

    Read 2026-09-05 · official docs

03.

Which should you choose?

Choose DigitalOcean if…

Teams that want plain Linux virtual machines with predictable per-second billing from $4 a month, and the option of managed databases beside them. App Platform adds Git and Docker deploys on top.

Editorial · Palash Bagchi · approved

Choose Hetzner if…

Self-managed Linux servers in European and US locations, billed hourly with a monthly cap so a deleted server is only charged for the hours it ran.

Editorial · Palash Bagchi · approved

Consider something else if…

  • DigitalOcean: You want a platform that manages the runtime for you rather than a server you administer.
  • Hetzner: You want managed deployment from Git, or a managed database service — Hetzner Cloud documents neither.
04.

Documented by only one.

These criteria are published by one provider and not the other. An absence here means we have not found a source, not that the feature is missing.

Entry paid planDigitalOcean: $4.00
Storage (entry plan)DigitalOcean: 10 GiB SSD on the cheapest Basic Droplet (Regular CPU, 512 MiB / 1 vCPU, $4.00/mo, size slug s-1vcpu-512mb-10gb)
Memory (entry plan)DigitalOcean: 512 MiB on the cheapest Basic Droplet (Regular CPU, 1 vCPU, $4.00/mo, size slug s-1vcpu-512mb-10gb)
Included bandwidthDigitalOcean: 500 GiB of included outbound transfer on the cheapest Basic Droplet ($4.00/mo, s-1vcpu-512mb-10gb); this is an included allowance, not a hard cap — see overage_behaviour
Max request durationDigitalOcean: The maximum timeout is 15 minutes. This includes initialization and function execution.
Managed connection poolingDigitalOcean: Supported
Git deploymentDigitalOcean: Supported
Scheduled jobsDigitalOcean: Supported
Managed databasesDigitalOcean: Supported
Edge networkDigitalOcean: Limited
Scales to zeroHetzner: Not supported
AutoscalingDigitalOcean: Supported
Backup retentionHetzner: Daily automatic backups with seven slots per server; the oldest is deleted when a new one is taken. Billed at 20% of the server's monthly price.