LowEndBox - Cheap VPS, Hosting and Dedicated Server Deals

How Does Your Provider Handle Bandwidth Overages? It Can Get Weird

Nerd Receiving a Bandwidth Overage BillMost prepaid VPS services come with a bundle of bandwidth.  For example, if you buy a 1GB VPS, you might get 1TB bandwidth.

That seems straightforward, but you may want to understand exactly what it means before you sign up.  Is that 1TB egress our both inbound and outbound?  A lot of use cases are very asymmetrical, so it may not matter to you.  For example, if you’re setting up a web server, a high percentage of your traffic will be outbound.  The only inbound will be you working on the site, uploading images and code, and perhaps something like comments or other visitor interactions.  If your page has a couple 3MB images and some other code, then you could be sending off 10MB per hit easily, and even if people are commenting furiously, it takes a lot of comments to equal 1MB (1MB is about 200,000 words in English).

But if your use case is different and inbound vs outbound is more balanced, you might want to understand that your 1TB is really 500GB.  Unless, of course, your provider only charges for egress.  Some providers do that, which has the happy circumstances of making their systems ideal for backups.  In that scenario, you’re sending data constantly to your VPS (which is free), and probably (hopefully!) only occasionally restoring from it (egress).


Another important thing to understand is what happens if you exceed the allocated bandwidth.

Here, for example, is a rather confusing policy from Vultr:

Your bandwidth cap is the total of your free bandwidth, instance bandwidth, and any purchased bandwidth. For billing purposes, each month has 672 hours, and bandwidth allocations are made hourly throughout the month. An overage charge will be applied if you exceed your currently-allocated bandwidth at any point during the month.

Reading further, it appears that you get your 2TB (or whatever) as “free bandwidth” and them some “instance bandwidth” dolloped out hourly, but it’s not clear.  One could read this as meaning you get 1/672nd of your bandwidth every hour, so if you go over 1/672nd the allocated bandwidth in the first hour of the billing month, you get charged.

That’s how DigitalOcean does it:

Droplets are billed per hour up to a maximum of 672 hours per month (28 days multiplied by 24 hours). For every hour the Droplet exists during the month, whether it’s powered on or not, it will earn 1/672 of its total allowance up to that limit. Once it’s been active for 672 hours, it has reached its full bandwidth allowance.

For example, if a Droplet’s maximum monthly data transfer allowance is 1,000 GiB, it will accrue 1,000 GiB / 672 hours ≈ 1.5 GiB per hour that the Droplet exists. Droplet usage is rounded to the nearest hour.

Inbound is free at DO, so in theory even if you started an instance and had to transfer in gigabytes of data in order to get things setup, you’d be fine.  But it wouldn’t be hard to exceed a few gigabytes in the first hours of a billing cycle on a busy VM that gets a lot of traffic.

Vultr and DO do this because they’re selling VMs on an hourly basis.

But what about providers who sell on a monthly basis?  These are the kinds of policies I’ve seen:

Everything Suddenly Stops: You got 1TB, you used 1TB, now there’s no more bandwidth for you.

You Can Buy More: If you’ve got over your allotment, they’ll cut you off but you can buy more bandwidth at some published rate.  Usually there would be a series of warnings at 80%, 90%, etc. as you approach the limit.

Clocking You Down: Let’s say you get 1TB at 1gbps.  If you go over, you might be clocked down to 10mbps for the rest of the billing cycle.

Unlimited: This one is easy – no worries ever!

What’s been your experience with bandwidth overages?


No Comments

    Leave a Reply

    Some notes on commenting on LowEndBox:

    • Do not use LowEndBox for support issues. Go to your hosting provider and issue a ticket there. Coming here saying "my VPS is down, what do I do?!" will only have your comments removed.
    • Akismet is used for spam detection. Some comments may be held temporarily for manual approval.
    • Use <pre>...</pre> to quote the output from your terminal/console, or consider using a pastebin service.

    Your email address will not be published. Required fields are marked *