The month you pass the included transfer, one provider adds a line item, one rounds the overrun up in 100MB blocks, and one does not bill you at all. DigitalOcean charges $0.01 per GiB past a pool shared by every Droplet in the team. Hetzner bills 100MB blocks at a published €1.00 per additional TB, a sentence whose unit is written as per hour. OVHcloud sells unlimited traffic in the US and EU, and on its Asia-Pacific VPS ranges a monthly quota is followed by a 10 Mbps port rather than a charge.
Every figure on this page was read from a provider's own page on 2026-11-01, and each table names the page it came from. Where a provider's own two pages disagree, this article quotes both and says so. The rest of the monthly bill is priced separately.
Bandwidth is the line item that most VPS price pages skip, because the honest answer is not a number. Included transfer is quoted per plan, but what happens after it runs out is a billing rule, and the rule lives in a documentation page that the pricing table links to only by implication. So the question “what does an overrun cost” has three different shapes here: a metered charge, a rounded block, and a speed limit. This page walks each one from the provider's own text, then puts the same 1,000 GiB overrun on three invoices so the difference is visible.
| Provider | What the allowance is | What happens past it | Published rate |
|---|---|---|---|
| DigitalOcean | One pool per team; each Droplet accrues its plan's allowance by the second | Billed per GiB of outbound transfer | $0.01 per GiB |
| Hetzner | Per server: 20 TB at EU locations, 1 TB at US locations | Billed in 100MB blocks, rounded up | €1.00 per additional TB, unit written as “per hour” |
| OVHcloud, US and EU | “Unlimited traffic” on the plan card | No overage rate published | No charge stated |
| OVHcloud, Asia-Pacific | 1 TB, 3 TB or 4 TB per month depending on the plan | Bandwidth limited to 10 Mbps | No charge stated |
Sources, all read on 2026-11-01: docs.digitalocean.com/products/billing/bandwidth/ (“Additional outbound transfer is billed at $0.01 per GiB”); docs.hetzner.com/cloud/billing/faq/ (“we will bill you for the over-usage in blocks of 100MB”); hetzner.com/cloud/general-purpose/ and hetzner.com/cloud/cost-optimized/ for the per-TB sentence and the 20 TB / 1 TB split; us.ovhcloud.com/vps/ for “Unlimited traffic” on each plan card and the Asia-Pacific footnote.
The first thing to unlearn is that the allowance belongs to the server. DigitalOcean's bandwidth page says the opposite in plain words: “Transfer allowance and usage is pooled cumulatively across all Droplets at the team level, not individually per Droplet. Accrued transfer does not roll over between months and cannot be transferred between teams.” A team running a busy web server and an idle build machine has one number to watch, not two, and the idle machine's unused allowance is what absorbs the busy one's overrun.
The second thing is that the allowance is not handed over on the first of the month. It accrues while the Droplet exists: “For every second a Droplet exists, it accrues 1/2,419,200 of its total transfer allowance towards the team's transfer pool, up to the maximum included with its plan.” The page's own example turns a 1,000 GiB plan into about 0.0004 GiB per second. A Droplet that is created on the 15th and destroyed on the 30th therefore contributes roughly half its plan's allowance, while a team that migrates traffic onto it in the same window bills the full volume. This is the mechanism behind a complaint that shows up regularly in provider forums — a server that was up for two weeks producing an overage charge — and it is arithmetic, not a penalty: half a month of existence, half the allowance.
| Basic plan | Included transfer | Droplet / month | Overage at $0.01 per GiB |
|---|---|---|---|
| 512 MiB / 1 vCPU | 500 GiB | $4.00 | $1.00 per 100 GiB |
| 1 GiB / 1 vCPU | 1,000 GiB | $6.00 | $1.00 per 100 GiB |
| 2 GiB / 1 vCPU | 2,000 GiB | $12.00 | $1.00 per 100 GiB |
| 2 GiB / 2 vCPU | 3,000 GiB | $18.00 | $1.00 per 100 GiB |
| 4 GiB / 2 vCPU | 4,000 GiB | $24.00 | $1.00 per 100 GiB |
| 8 GiB / 4 vCPU | 5,000 GiB | $48.00 | $1.00 per 100 GiB |
| 16 GiB / 8 vCPU | 6,000 GiB | $96.00 | $1.00 per 100 GiB |
Transfer allowances and monthly prices from the Basic table on digitalocean.com/pricing/droplets, read 2026-11-01. The overage column is the published $0.01 per GiB applied to 100 GiB, which is the same dollar figure on every plan because the rate does not vary by plan — only the allowance does. Overage is billed on the pooled team total, so the column describes the rate, not a per-plan limit.
Put a number on it. A 4 GiB / 2 vCPU Droplet includes 4,000 GiB and costs $24.00. If the team pushes 4,500 GiB of outbound transfer in the cycle, the overrun is 500 GiB and the extra line is 500 × $0.01 = $5.00, for a $29.00 invoice. On the $4.00 plan the same 500 GiB over its 500 GiB allowance is also $5.00 — more than the server itself, because the rate is flat and the allowance is not. That asymmetry is the whole risk: the cheapest plans have the least room and the same per-gigabyte price.
Two more rules from the same page are worth knowing before you plan a migration. First, the meter counts interfaces, not intentions: “Any data transfer sent by a Droplet using a public network interface counts against the transfer pool for that Droplet's team. All IPv6 traffic uses the public interface. Data transfer between Droplets over the VPC network uses a private network interface.” Traffic between your own Droplets over the VPC is therefore free, and the same traffic over public IPs is not. Second, dropped packets are not billed: “We do not bill for outbound data transfer that we determine is dropped by a DigitalOcean firewall rule.” A firewall that blocks an outbound flood stops the charge as well as the traffic, which is not true of every provider's meter.
One more number to keep separate: App Platform on the same account is billed at $0.02 per GiB of additional outbound transfer, and Spaces subscriptions include 1,024 GiB with additional transfer at $0.01 per GiB. The Droplet rate is $0.01 per GiB. Same company, same invoice, three published rates depending on which product moved the byte.
Hetzner's billing FAQ starts by narrowing what counts: “We only bill for outgoing traffic. Incoming and internal traffic is free.” Internal is defined generously — other Cloud servers in the same network zone reached over their public IPs, other Cloud servers over private Networks, Hetzner dedicated root servers, and other Hetzner Online servers, services or hosting packages. Outgoing traffic to a Cloud server in a different network zone is not internal, and the page lists the four zones it means: eu-central, us-east, us-west and ap-southeast.
Then the granularity: “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.” The worked example is a server with 20 TB included that uses 20.00008 TB in a month. The billable over-usage is 0.0001 TB, which is 100MB, against an actual overrun of about 80MB. Rounding up is a rounding rule, not a fee, but it decides the smallest unit you can be billed for, and 100MB is the smallest unit on any of the three price lists here.
Hetzner also says what it will not do about it: “We will notify you, the project owner, if the traffic usage exceeds 75% of the included free traffic, and again if you reach 100%. These notifications are a convenience to help you keep track of your usage; they do not cap or stop it. Keeping an eye on your consumption is ultimately up to you. Any traffic used beyond the included amount is billed as usual, even if a notification reaches you late or does not arrive at all.” Two emails, no circuit breaker.
Now the part that needs care. The overage rate appears on the plan pages, not in the billing FAQ, and it is written like this: “Cloud servers located in the EU include at least 20 TB of included traffic. For each additional TB at EU-Central locations we charge € 1.00 per hour, excl. VAT.” The German version of the same block reads “Für jedes weitere TB werden an EU-Central Standorten 1,19 € pro Stunde, inkl. 19 % MwSt. verrechnet” — same unit, per hour, with the VAT-inclusive figure being the €1.00 net rate at 19%. So the wording is not a translation slip on the English page. It is what both language versions publish.
What is not ambiguous is how much traffic a plan includes, and it changes with the location. The same CCX13 — 2 dedicated AMD vCPUs, 8 GB RAM, 80 GB NVMe — is listed at €43.49 per month in eu-central with 20 TB included, and at €43.99 per month in us-west and us-east with 1 TB included. The page states the US rule in the same shape as the EU one: “Cloud servers located in the U.S. include at least 1 TB of included traffic. For each additional TB at U.S. locations we charge € 1.00 per hour, excl. VAT.”
| Hetzner plan and location | Monthly, excl. VAT | Traffic included | Over-usage rule |
|---|---|---|---|
| CX23, eu-central (2 vCPU, 4 GB, 40 GB NVMe) | €5.99 | 20 TB | 100MB blocks, rounded up |
| CCX13, eu-central (2 vCPU, 8 GB, 80 GB NVMe) | €43.49 | 20 TB | 100MB blocks, rounded up |
| CCX13, us-west HIL1 | €43.99 | 1 TB | 100MB blocks, rounded up |
| CCX13, us-east ASH1 | €43.99 | 1 TB | 100MB blocks, rounded up |
Prices and allowances from hetzner.com/cloud/general-purpose/ (CCX13, all three locations) and hetzner.com/cloud/cost-optimized/ (CX23), read on 2026-11-01. Both pages state the 100MB block rule indirectly through docs.hetzner.com/cloud/billing/faq/, which is the page that spells it out. A €0.50 difference in monthly price between eu-central and us-west is printed on the plan card; the difference in included traffic, 20 TB against 1 TB, is printed underneath it.
The practical reading: on the same hardware and nearly the same price, a US-located Hetzner server carries a twentieth of the traffic allowance of an EU-located one. A workload that fits comfortably in the EU allowance can pass the US allowance without changing a line of code, and the only published remedy is the per-TB rate whose unit we just spent a callout on.
OVHcloud answers the question by not asking it. Every plan card on the US VPS page carries “Unlimited traffic” next to its port speed — 500 Mbps on VPS-1 at $4.54, 1 Gbps on VPS-2 at $8.50, 2 Gbps on VPS-3 at $12.32, 3 Gbps on VPS-4 at $23.37 — and the VPS FAQ supports the claim without qualification: “OVHcloud VPS offers provide excellent value for performance, with unlimited traffic and several global locations.” Asked directly whether the bandwidth is guaranteed, the same FAQ answers: “The bandwidth listed on our VPS web page is guaranteed. It is the minimum amount allocated to your service.” That is a stronger statement than a traffic allowance, because it is a floor on speed rather than a cap on volume.
The footnote under the same page is where the limit lives, and it is geographic. “VPSs in Asia-Pacific (Mumbai, Singapore, Sydney) have a monthly traffic quota: 1 TB for VPS-1 and VPS-2, 3 TB for VPS-3 and VPS-4, 4 TB for VPS-5 and VPS-6. Beyond that, bandwidth is limited to 10 Mbps.” No charge, no per-GB rate, no overage line: the consequence of passing the quota is that the server keeps serving at 10 Mbps until the month turns over.
| OVHcloud VPS, Asia-Pacific locations | Monthly quota | Past the quota | Charge |
|---|---|---|---|
| VPS-1, VPS-2 | 1 TB | Bandwidth limited to 10 Mbps | None stated |
| VPS-3, VPS-4 | 3 TB | Bandwidth limited to 10 Mbps | None stated |
| VPS-5, VPS-6 | 4 TB | Bandwidth limited to 10 Mbps | None stated |
Quotas and the 10 Mbps limit are a single footnote on us.ovhcloud.com/vps/, read on 2026-11-01, marked with an asterisk against the “Unlimited bandwidth, up to 1.5 Gbps” line at the top of the page. The same footnote adds that VPS services ordered in data centres outside the United States regions cannot be modified or upgraded after delivery. The US and EU ranges carry no monthly quota on that page.
Ten megabits is not zero, which is why the throttle deserves a number. At 10 Mbps a server moves 10,000,000 bits per second, which is 1,250,000 bytes per second, which is 4,500,000,000 bytes — about 4.5 GB — in a full hour. A site that serves 4.5 GB a day would take a day to move what it used to move in an hour, and the invoice would be unchanged. Whether that is better or worse than a $10 overage charge depends on what the server does: a nightly backup job at 10 Mbps is a slow morning, while a video endpoint at 10 Mbps is effectively down. Neither outcome appears in a price table, which is why the price table is the wrong place to look for it.
Here is one overrun, sized to be comparable: 1,000 GiB of outbound transfer beyond what the plan includes, inside a single monthly cycle.
| Provider | What the invoice shows | What the customer experiences |
|---|---|---|
| DigitalOcean | $10.00 | A line item. 1,000 GiB × $0.01, added to the cycle's total, billed at the usual monthly close. |
| Hetzner, EU location | €1.00 | 10,000 blocks of 100MB at the published per-TB rate. The unit on that rate is written as per hour; see the callout above before budgeting with it. |
| OVHcloud, US or EU | $0.00 | No line item. The plan card says unlimited traffic and no overage rate is published. |
| OVHcloud, Asia-Pacific | $0.00 | No line item, and the port drops to 10 Mbps for the rest of the cycle. |
The DigitalOcean figure is 1,000 × $0.01, the rate on docs.digitalocean.com/products/billing/bandwidth/. The Hetzner figure is 1,000 GiB read as 1 TB at the published €1.00 per TB on hetzner.com/cloud/cost-optimized/, with the unit caveat above. The OVHcloud rows are the absence of a rate on us.ovhcloud.com/vps/ plus the Asia-Pacific footnote. All three pages read 2026-11-01. Nothing here is converted between currencies: dollars and euros are shown as published.
The comparison is deliberately unflattering to the tidy answer. A $10.00 charge is easy to plan for and impossible to be surprised by, because the rate is per gigabyte and the gigabyte is a gigabyte. A €1.00 charge that might be €730 is not a price at all until it lands on an invoice. A $0.00 charge that silently cuts the port to 10 Mbps is a cost with no number attached, and it is the only one of the three that can take a service down without changing the bill. If you are choosing a provider on this line item alone, the ranking depends entirely on which of those three failures you can absorb — and that is a question about your workload, not about the price list.
It depends on the provider, and the three answers are not comparable. DigitalOcean bills additional outbound transfer at $0.01 per GiB. Hetzner bills over-usage in 100MB blocks and states its rate as €1.00 per additional TB per hour, excluding VAT, a unit that conflicts with the same provider's billing FAQ. OVHcloud does not charge for overage on a US or EU VPS: it advertises unlimited traffic there, and on its Asia-Pacific VPS ranges a monthly quota is followed by a bandwidth limit of 10 Mbps. All figures were read from the providers' own pages on 2026-11-01.
Per team, not per Droplet. DigitalOcean's bandwidth page says transfer allowance and usage are pooled cumulatively across all Droplets at the team level, that accrued transfer does not roll over between months, and that each Droplet accrues one 2,419,200th of its plan's allowance for every second it exists. Its worked example: two Droplets with 1,000 GiB each contribute 2,000 GiB to the pool, and usage of 1,500 GiB on one and 100 GiB on the other totals 1,600 GiB, so no overage applies.
Yes. Hetzner's billing FAQ says over-usage is billed in blocks of 100MB and that a fraction of 100MB is rounded up to the next full 100MB. Its own example is a server with 20 TB included that uses 20.00008 TB in a month: the billable over-usage is 0.0001 TB, which is 100MB, for an actual overrun of about 80MB.
The bandwidth is limited to 10 Mbps and no overage charge is mentioned. The footnote on the OVHcloud VPS page states monthly quotas for VPSs in Mumbai, Singapore and Sydney of 1 TB for VPS-1 and VPS-2, 3 TB for VPS-3 and VPS-4, and 4 TB for VPS-5 and VPS-6, with bandwidth limited to 10 Mbps beyond that. The same page advertises unlimited traffic for the US and EU ranges.
No at either provider that states a rule. DigitalOcean says inbound transfer to Droplets is free. Hetzner says it only bills outgoing traffic and that incoming and internal traffic is free, listing traffic between its own Cloud servers in the same network zone, traffic over private Networks, and traffic to its dedicated servers and other Hetzner services as internal. DigitalOcean adds that traffic between Droplets over the VPC network uses a private interface, and that all IPv6 traffic uses the public interface and therefore does count.
An overrun is not a surcharge. It is the point where a provider's billing model becomes visible, and the three models here produce three different things: a per-gigabyte charge at DigitalOcean with a pool that belongs to the team and accrues by the second, a rounded 100MB block at Hetzner with a rate whose published unit does not survive contact with a monthly invoice, and a 10 Mbps port at OVHcloud that never touches the bill. The cheapest plan is not the one with the largest allowance — DigitalOcean's $4.00 Droplet includes 500 GiB and the overage rate is the same $0.01 whether you bought that plan or the $96.00 one. The safest plan is the one whose failure mode you can live with: an invoice you can predict, a block you can watch, or a port you cannot.