QPS
Queries per second, the rate at which you send requests, which has to be balanced against both a target's limits and a proxy's concurrency ceiling.
QPS is the rate you are sending at, requests per second, and it is the number two different limits are usually expressed in. A target enforces a maximum QPS per address before it throttles you; a proxy plan may cap the QPS or the concurrent connections it will carry. Your effective throughput is whichever of those two ceilings you hit first, which is why a fast network can still feel slow on a plan that limits the rate.
It is worth separating from concurrency, because the two are related and not the same. Concurrency is how many requests are in flight at once; QPS is how many complete per second. They move together, more concurrency generally raises QPS, but the relationship is bounded by latency: if each request takes half a second and you run ten at a time, you get roughly twenty per second regardless of how much more concurrency you add, until you shorten the latency or widen the pool.
Against a target, QPS is the number that trips rate limiting, and the defence is arithmetic rather than clever. A limit counted per address means the sustainable total QPS is the per-address limit multiplied by how many distinct addresses you spread across, which is the whole reason a pool raises throughput: not by making any address faster, but by letting you run many addresses each staying under its own ceiling. Push the per-address QPS too high and you trip the limit no matter how large the pool.
The honest way to set it is from below and per target, the same discipline as concurrency. Start at a conservative rate, raise it while watching the error rate, and treat the point just before failures begin as your ceiling for that destination. A fixed, machine-regular QPS is also itself a signal, so genuine variance in the rate both keeps you under limits and looks less mechanical than a metronome would.
Frequently asked questions
What is the difference between QPS and concurrency?
Concurrency is how many requests are running at the same time; QPS is how many finish per second. They rise together but are linked by latency: with slow requests, adding concurrency stops raising QPS once you are waiting on round trips rather than on slots. You tune concurrency; QPS is partly the result of that choice and partly a property of the target's speed.
How do I increase my QPS without getting blocked?
Spread the rate across more addresses rather than pushing any single one harder. If a target limits QPS per address, your safe total is that per-address limit times the number of distinct exits you use, which is exactly what a pool provides. Raising the rate on one address just trips its limit sooner, so scale the pool, not the per-address rate.
Do proxy providers limit QPS?
Many cap either the request rate or the concurrent connections, and it is often in the plan detail rather than the headline. A rate cap is a throughput cap in different words, so a cheap-looking per-gigabyte price can still be slow in practice. Check for it before comparing plans, since two at the same price can differ sharply in what they let you actually send.
Back to the full glossary.