What Counts as a Request?
Table of contents
Each plan includes a monthly request allowance. This page explains exactly what we count as one request so you can size your plan and predict your usage.
The basics
If you are using the HTTP proxy, each HTTP call is one request. A single GET (or POST, PUT, etc.) routed through the proxy counts as one request.
When using the SOCKS proxy, we count each TCP Connect as one request.
For HTTPS through the HTTP proxy, one request equals one CONNECT tunnel.
Note: Most database users are going to run into bandwidth limits well before they run into request limits. A lot of applications use a connection library to establish a long-lived connection, which results in very few requests. You will have to see what the best practice is for your use case.
Inbound and outbound both count
It does not matter which direction the traffic flows. Each call routed through QuotaGuard counts as one request whether it is inbound or outbound. Only traffic you actually route through the proxy is counted.
Redirects, retries, and reused connections
QuotaGuard never follows a redirect or retries a request on its own. We count exactly what your client sends, so how your application behaves is what determines the count.
For the HTTP proxy (plain HTTP), every request your client sends is one request, including each redirect hop your client follows and each retry it sends. We count the request when we accept it, before we contact the destination, so an attempt that times out or fails at the destination still counts. A failed proxy authentication (407) does not count.
For HTTPS (one request per CONNECT tunnel):
- A redirect to a different host always opens a new tunnel, so that is one more request.
- A redirect or retry to the same host only adds a request if your client opens a new connection. If your HTTP library reuses a pooled connection, no extra request is counted.
For SOCKS, it is one request per TCP connection, and a connection that fails at the destination still counts.
The practical takeaway: each redirect your client follows and each retry it sends normally counts as another request, unless your client reuses an already-open connection to the same host. Connection pooling reduces your request count.
How this differs on QuotaGuard Shield
On Shield, everything is a tunnel, so one request always equals one CONNECT. There is no per-HTTP-request counting like the HTTP proxy’s plain-HTTP mode. That means a client that pools connections can make many API calls inside a single counted request, and “each API call is one request” only holds for clients that open a new connection per call. The redirect and retry rule is the same as Static: we never follow or retry anything, and a redirect or retry adds a request only when it opens a new tunnel.
Monitoring your usage
You can watch your request and bandwidth usage in real time from your dashboard, or pull it programmatically with our read-only Usage API. We also email your account administrator automatically at 80% and again at 100% of your allowance. For more on how we handle usage near your limit, see our Soft Limit and Overage Policy.
If you have questions about SOCKS bandwidth, our article on “How Does QuotaGuard Measure Bandwidth for SOCKS” might help.
If you need help figuring this out, just reach out to us on Support. Please don’t be shy, we get these questions all the time.