Guides
for everything Geocodio
Guides
for everything Geocodio
Why spreadsheet uploads get queued
Geocodio limits how many spreadsheets or lists can be processed at once.
Anything past that limit waits in line and starts once a slot frees up. There are no actions needed on your end, as all of this happens automatically.
This applies to both the spreadsheet geocoding tool and the Lists API.
This is a deliberate concurrency cap. For Pay-as-you-go and Flex accounts, it’s a fair-use measure to make sure one very large batch of jobs can't crowd out everyone else's. For Unlimited Geocoding accounts with dedicated instances, it ensures you don’t accidentally overload your instance(s).
How many spreadsheets or lists can be geocoded at once
The limit depends on your plan.
| Plan | Concurrent spreadsheets/lists |
|---|---|
| Pay-as-you-go | 1 |
| Flex | 1 |
| Unlimited Geocoding | 3 |
For Unlimited Geocoding, your total concurrency scales with the number of instances you have. So for each instance adds another 3 concurrent slots.
Dashboard and API uploads share the same queue
A spreadsheet you start from the Geocodio dashboard draws from the same pool of processing slots as a list you create through the API.
If you start a dashboard upload and an API list around the same time, they're competing for the same slots, and neither one gets priority over the other.
What to do while a spreadsheet is queued
If a spreadsheet has been sitting there for a while, leave it alone
The original upload is still in the queue and will process on its own. Uploading it again just creates a second list behind the first one, and you'll be billed for every lookup a second time once it runs.
Uploading more spreadsheets at once doesn't make any of them finish sooner. They all draw from the same limited number of slots, so extra uploads just serialize behind whatever is already processing.
A list moves through a several states that are visible on the dashboard and via API: UPLOADED → ENQUEUED → PROCESSING → COMPLETED. A list can also move to FAILED from either ENQUEUED or PROCESSING. COMPLETED and FAILED are both terminal, and once a list reaches one of those, its state won't change again.
There's no field in the API that reports the concurrency limit or how many lists are ahead of yours in line, so the state is the only signal you'll get. Keep polling it (or checking the dashboard). It will move to PROCESSING automatically once a slot opens up.
See the Lists API documentation for the full set of fields returned for a list.
How to make spreadsheets process faster
If you're regularly waiting on queued spreadsheets, two things can help:
For Pay-as-you-go and Flex, consolidate into fewer, larger spreadsheets. The limit is on the number of spreadsheets processing at once, not on row count, so five files of 10,000 rows each will take longer overall than one file of 50,000 rows.
For Unlimited, smaller spreadsheets are better since they process faster.
Moving to a plan with a dedicated instance, or adding an additional instance if you already have one, raises your concurrent-processing limit by 3 per instance. See Additional Instances for details.
When to contact support
If either of the following happen, please email [email protected] with the list ID and we will take a look:
A list reaches the FAILED state
A list stays queued for far longer than the rest of your account's activity would explain