News

How we count a bulk request: one item, one unit

Send one API call with a hundred addresses inside it, and that call uses a hundred requests, not one. We count every item in a bulk or batch request individually. It is a simple rule, but it is worth spelling out clearly, because it shapes how a batch job should be planned and budgeted.

The logic is straightforward once you think about what a batch call is actually doing. A single HTTP request that geocodes a hundred addresses is doing a hundred units of work on our end: a hundred lookups, a hundred answers, a hundred lines in the response. Charging for that as if it were one request would mean charging a fraction of a cent for what is really a hundred separate pieces of information. Counting by item keeps pricing tied to the actual work done, not to how many times you happened to open a connection.

This applies the same way whether you are near the free tier or paying for what you use. If your network still has 400 requests left in its daily free allowance and you send a batch of 1,000 addresses, 400 of those items are covered by the free allowance and the remaining 600 draw on prepaid credit or an Unlimited package. The quota headers on the response reflect this exactly: X-Quota-Used moves by the item count, not by the call count, and X-Credits-Remaining reflects whatever the batch consumed beyond the free portion.

It also means there is no incentive to break work into many small calls to game a quota, and no penalty for combining work into fewer, larger ones. A hundred single-item calls and one hundred-item call cost the same and count the same. Choose whichever shape is easier for your code to write and your infrastructure to run. Some teams prefer many small calls because it is simpler to retry a failure. Others prefer one large call because it is fewer round trips. Both are priced identically.

For planning purposes, this makes capacity math easy. If a daily job needs to process 50,000 addresses, that is 50,000 requests, full stop, regardless of whether it is sent as one call, ten calls, or five hundred calls. At €0.0001 a request beyond the free allowance, that math takes seconds to work out on paper.

Every endpoint and every compatibility host follows the same per-item counting for batch and bulk operations. There is no separate, cheaper batch pricing tier and no separate, more expensive one. A lookup costs the same whether it arrives alone or inside a list of a thousand others.

If you are building a batch job against My Geocode, plan your request volume by counting the addresses, coordinates, or IPs you are sending, not the number of HTTP calls that carry them. That number is what shows up in your quota, and it is what any invoice will reflect.