What providers publish
The table is limited to figures with a public source read in September 2026; a blank means the provider states nothing beyond a storage type on the pages this site read. Prices are monthly.
| Provider | Network figure | Disk figure | Where it comes from |
|---|---|---|---|
| Linode | network_out cap per plan: Nanode 1 GB 1,000 Mbps, Linode 2 GB 2,000, 4 GB 4,000, 8 GB 5,000; transfer 1 TB, 2 TB, 4 TB, 5 TB | Disk size only | types API |
| Vultr | Bandwidth allowance per plan: vc2-1c-1gb 1,024 GB, vc2-2c-4gb 3,072 GB, vhp-1c-1gb-amd 2,048 GB | Disk size and a type label: SSD (vc2), HIGHFREQUENCY (vhf), AMDHIGHPERF (vhp) | plans API |
| Hetzner | Shared 10 Gbit host connection; "you can expect about 300-500 Mbits" per server; no guarantee | NVMe label only | Hetzner spec page (plan FAQ) |
| Azure | Per-size network bandwidth in Microsoft's VM size tables | Per-disk-tier IOPS and MB/s (a 32 GiB Standard SSD E4: up to 500 IOPS, 100 MB/s; Premium SSD P4: 120 IOPS, burst to 3,500); per-size uncached limits (B2ats v2: 3,750 IOPS, 85 MBps) | Azure spec page and storage page |
| Google Cloud | IOPS per GiB by Persistent Disk type | storage page | |
| InterServer | 10 Gbps shared port per slice; 2 TB transfer per slice | SSD (cloud) or SATA (storage line) label | InterServer guide (VPS page) |
| DigitalOcean, OVHcloud, Contabo, Hostwinds, RackNerd, Kamatera, BuyVM | Transfer allowance per plan; DigitalOcean notes Premium Droplets have "higher network throughput" | Storage type label only | Provider pricing pages, as listed on the storage page |
Two things to read in that table. The hyperscalers publish limits because they sell disks and network as metered products with defined ceilings; the plan-priced hosts publish labels because their disks and network are shared and they do not promise a share. And a cap is not a typical value: Linode's 1,000 Mbps on a Nanode is the most it will pass, not what a transfer will get at 3 pm.
How to test a server yourself
The measurement that matters is the one on the plan you will buy, in the region you will use, at the hours you care about. It costs an hour of a rented server. Vultr, Linode and DigitalOcean bill by the hour; on a monthly-billed host such as InterServer you pay the month.
- Create the server in the target region with the distribution you will run, and install the tools:
apt install sysbench fio iperf3on Debian or Ubuntu,dnf install sysbench fio iperf3on AlmaLinux or Rocky (sysbench may need the EPEL repository). - CPU, single thread:
sysbench cpu --threads=1 --time=60 run. The figure to keep is events per second. Run it again with--threadsequal to the vCPU count to see how the shares scale. - Disk, random 4K:
fio --name=randrw --filename=/root/fio.test --size=2G --rw=randrw --rwmixread=70 --bs=4k --iodepth=32 --numjobs=1 --direct=1 --runtime=60 --time_based --group_reporting, then delete the test file. Keep read and write IOPS separately. Use--direct=1, or you measure the page cache rather than the disk. - Network:
iperf3 -c <host> -t 30 -P 4against a public iperf3 server in the region that matters to you, or better, against a second server of your own in the location your users are, since a public server's own load is part of the result. Add-Rfor the download direction. - Repeat each test three times at different hours and keep the median. The spread between runs is as informative as the median: it is the shared-host effect.
- Destroy the server. On an hourly plan the bill is a few cents.
Providers that publish a test endpoint make the network part easier: Linode's per-region speedtest hosts, InterServer's speed test page with download files from its three datacenters, and the latency test buttons on Kamatera's and Hostwinds's datacenter pages are listed on the low-latency page.
Reading vendor numbers
- "Up to" and caps. A ceiling, enforced by the provider's rate limiter. It tells you what you cannot exceed and nothing about the typical case.
- Burst. Azure's "burst to 3,500 IOPS" is a credit-based allowance for short peaks; the base figure is what a sustained load gets.
- Shared port. InterServer's 10 Gbps and Hetzner's 10 Gbit are the host's uplink, shared by every server on it; Hetzner is the only one of the two to publish a per-server expectation.
- Storage labels. NVMe, SSD and RAID-10 describe hardware, not a rate. Two NVMe plans from two providers can differ by an order of magnitude in what the provider lets a single VM pull.
- Third-party benchmark sites. Useful as a second opinion when they show the command, the date, the region and the plan; useless when they show a score without those four.