Bandwidth and Egress Fees: The Bill Nobody Reads Until It Hurts
Two providers sell you the same 2GB server for $12. One includes 2TB of transfer. The other bills $0.09 for every gigabyte your users download. Serve 3TB of video from each and the first bill is $12 while the second is over $250. Transfer pricing is where cloud bills diverge, and it's the line item people read only after the surprise.
The terms, quickly: ingress (data in) is free almost everywhere. Egress (data out to the internet) is the metered one. Most VPS providers bundle an allowance per instance (DigitalOcean, Vultr, Linode, and Hetzner all include real terabytes) and bill overage at $0.01-0.02/GB. The hyperscalers bundle little or nothing and bill $0.08-0.12/GB, which is how an AWS bill becomes a meme. A handful of providers (Cloudflare on its application products, Bunny and Backblaze in their niches) price egress at or near zero as their whole competitive strategy.
The traps, in rough order of pain: object storage egress, where your files live in S3-style storage, every download meters, and "cheap storage" gets expensive; cross-region and cross-service transfer inside a hyperscaler, which meters in ways nobody predicts from the pricing page; CDN pricing that's really egress pricing wearing a hat; and "unmetered" shared hosting, which means throttled, not free.
The defenses are boring and effective. Put a CDN with a generous free tier in front of anything static. Cloudflare's free plan absorbs the bulk of most sites' transfer before the origin ever bills it. Keep chatty services in the same region. If you serve large files, choose storage priced for it (Backblaze B2 with Cloudflare, or Bunny) rather than paying general-purpose object-storage egress. And before choosing a host for anything media-heavy, do the one estimate that matters: monthly gigabytes out times the overage rate, next to the bundled allowance.
Every provider page on this site lists transfer allowances per tier where the provider publishes them, and hidden-cost notes flag the egress traps we found during capture.