A residential traffic bill rarely matches what the automation engineer expected: a task budgeted for a couple of gigabytes ends up eating twice that in practice. Here is what counts toward the billed volume, where the gap between expectation and invoice comes from, how to estimate a task's weight in advance, and which practices save traffic without breaking session stability.
What actually gets billed
The counter tallies the entire volume passing through the assigned node in both directions — not just the useful HTML response, but everything the browser or script requested over that channel. That includes images, fonts, stylesheets, analytics scripts and ad banners: if an element loads through the proxy, its bytes land on the same bill as the target content.
Background requests add up too: alongside the main page, the browser reaches out to trackers, impression counters, cookie syncing and update checks. Many of these calls never show up in the automation's interface, but each one passes through the same paid channel.
Why the counter grows faster than expected
The main cause is underestimating page weight at the budgeting stage. A product card with images weighs 2–5 MB, not the 0.3–1 MB of a plain catalogue page, and a feed with autoplaying video adds tens of megabytes per minute without a single click. If the budget was calculated from a text page's weight while the real task opens cards with media, the gap with the actual bill will be a multiple.
The second cause is retries: a session that breaks mid-load does not refund the traffic already spent, so the browser requests the page again and the failed attempt is billed the same as the successful one. The less stable the channel, the more such repeats pile up without adding to the result. Chasing the cheapest channel can backfire here — more in cheap versus expensive proxies: where the savings are illusory.
How to estimate a task's weight in advance
Only a test run gives an accurate forecast: take 10–20 typical requests from the task, run them through a channel with traffic tracking on, and calculate the average weight per request. Multiply that figure by the planned request count — it is more reliable than any general benchmark.
Without a test run, start from the page type: a text catalogue page is 0.3–1 MB, a product card with images is 2–5 MB. A thousand product-card checks fit into roughly 3–5 GB, a hundred into 0.3–0.5 GB, a thousand text pages into about 1 GB. Daily monitoring of a hundred pages adds up to 1.5–3 GB a month. These figures work for a first estimate; a trial run against real URLs gives the exact number for a specific site.
Traffic-saving practices
First and most significant — disable loading of images, fonts and video wherever the automation only needs text or page structure: a headless browser can block resource types at the request level instead of rendering the entire page for one field. Second — block ad-network and tracker domains by list: they carry no target data but still add to the bill without fail.
Third — do not chase the cheapest channel at the expense of stability. A broken session costs more: reloading the page burns traffic again, and an unstable channel is exactly what produces such repeats. What matters is not the price per gigabyte but the cost of a successful result — the metrics worth checking when picking a provider are laid out in how to check proxy quality.
How the spend differs from a mobile channel
The billing mechanics are identical: both channels issue an address per session and meter traffic gigabyte by gigabyte. The difference is the price per gigabyte and the reason behind it. A mobile IP runs through a carrier's NAT, where one address serves hundreds of live subscribers at once — the mechanics are covered in why mobile proxies are hard to ban. Because such addresses are scarce and resistant to blocking, mobile traffic usually costs more per gigabyte than residential.
The takeaway: if a task specifically needs ban resistance rather than just a "residential-looking" ASN, the premium pays for itself in successful sessions per gigabyte — a residential channel gets banned more often on the same task, and the retries eat up the price difference saved.
Frequently Asked Questions
Does traffic still count if a request fails?
Yes, the counter records transferred bytes regardless of the request's outcome. A dropped connection or an error response still passed through the channel and counts toward the paid volume.
Can I restrict what loads through the proxy at the script level?
Yes, most headless browsers and automation libraries let you block resource types — images, fonts, media — or specific domains before the request executes, which cuts the bill without changing the channel's rate.
Why do different providers show different spend on the same task?
The difference is usually not the rate itself but node stability: a provider with frequent session drops forces the script to re-request pages, and the bill picks up traffic for failed attempts a stable channel would never have generated.
Residential and mobile traffic-billed plans live in the proxy catalogue. If a task does not need residential-looking origin, a datacenter channel at a fixed monthly price costs less — the breakdown is in datacenter proxies: when they are enough.