Batch Geocoder
Paste up to 50 addresses (or lat/lng pairs), run a rate-limited batch, and download results as CSV for CRM, maps, and logistics.
By Aryan Khan, Founder & Editor · Updated October 2026
For example, a 50-row mailing list becomes a 50-row coordinate table in one run — the list a map can finally read, exported as CSV.
How to use Batch Geocoder
Lists are where geocoding earns its keep. Fifty lines at a time, in either direction:
The Batch Geocoder turns up to 50 pasted addresses into coordinates, or 50 coordinate pairs into addresses, in one rate-limited run, and downloads the results as CSV. Paste one entry per line, choose the direction, run it, and take the table to your spreadsheet, CRM or map.
- 1Choose Address → coordinates or Coordinates → address.
- 2Paste one entry per line (max 50).
- 3Click Geocode and wait for the table to fill.
- 4Download CSV when you need the results in a spreadsheet.
What people use Batch Geocoder for
1. CRM and mailing imports
A customer list with a lat/long column becomes mappable, routable, analysable. One list, one run — single addresses belong to Address to Coordinates.
2. Logistics preparation
Delivery points geocoded in bulk feed the route tools. The Route Optimizer is downstream of exactly this table.
3. Research datasets
Survey addresses become points; points become maps; maps become arguments. The CSV is the hand-off format every tool accepts.
4. Reverse clean-ups
A spreadsheet of mystery coordinates from an old GPS export becomes addresses a human can file — the reverse direction's whole purpose.
Worked examples
The batch runs rate-limited on purpose: open geocoding services ask bulk users to be polite, and 50 rows at a courteous pace is the deal this page keeps on your behalf.
One malformed address in fifty returns no match while the other 49 succeed — the table shows the failure honestly instead of inventing a pin for it.
Forward versus reverse batch
The two directions this page runs — pick by what your spreadsheet holds.
| Direction | You paste | You get | Typical job |
|---|---|---|---|
| Forward | Addresses, one per line | Latitude and longitude per row | Mapping a customer list |
| Reverse | Lat/long pairs, one per line | Structured address per row | Naming old GPS points |
| Either | Up to 50 lines | A downloadable CSV | Spreadsheet round-trips |
Results come from open geocoding data. Accuracy per row follows that address's match quality — spot-check the important rows in the Address Validator.
Batch geocoding turns address lists into coordinates, but every match should be quality-checked
Batch geocoding is useful when a spreadsheet or list of place names needs latitude and longitude for mapping, distance analysis or GIS work. Automated matching saves time, but ambiguous addresses, missing postal codes and similarly named places can produce plausible-looking coordinates in the wrong location.
Review low-confidence or unexpected matches before using the output downstream. For large production workloads, also respect the rate limits and usage terms of the underlying geocoding service rather than treating a public endpoint as an unlimited bulk API.
How to interpret the result
The most common errors come from using a correct result to answer the wrong geographic question. Keep these points in mind for Batch Geocoder:
- Treat postal and administrative answers as different datasets. A 'wrong' city result is frequently a correct administrative answer disagreeing with a postal habit. If a form demands the mailing version, your postal service is authoritative; if it demands legal boundaries, the administrative layer is.
- Check accuracy before trusting a GPS-derived answer: indoors, browser positioning can be off by blocks, which flips counties near borders. Zoom the map and nudge the pin by hand when the stakes are real — the tools here let every GPS result be corrected with a click.
Limits & appropriate use
Every location stack has a competence boundary, and naming it is part of being trustworthy. OpenStreetMap's administrative coverage is excellent where mappers are active and thinner in rapidly changing or sparsely mapped regions; brand-new developments can lag, and disputed zones follow the community's de-facto consensus rather than arbitrating sovereignty. Postal layers add a second boundary: ZIPs and postcodes are delivery-routing systems, not geography, so PO boxes and carrier routes can legitimately disagree with the map. Indoor positioning adds a third: a browser fix can be a block off, which matters precisely at the borders where people ask these questions.
None of this makes the tools unsafe to use; it makes them safe to use *knowingly*. The design response is transparency: fields stay separate so layers never blur, empty answers are shown as empty rather than guessed, accuracy context travels with GPS results, and every page names its sources. For questions where the cost of being wrong is high — a property line, a legal filing, a medical dispatch — the escalation is always the same: licensed surveys, official registers and emergency services own those answers, and a good free tool points at the door instead of pretending to be it.
- Legal boundaries and property lines → licensed surveyor / county recorder.
- Mailing validity → the postal service's own address tools.
- Life-safety dispatch → official emergency services, never a map lookup.
Data & methodology
Forward: Photon (Komoot) OpenStreetMap search, first hit per line. Reverse: Nominatim reverse API. Sequential requests with ~1s delay.
For source details, licences and model limitations, see Data Sources and Methodology.
Key terms worth knowing
- Administrative boundary
- The legally defined polygon for a country, state, county or municipality.
- Postal vs administrative city
- Mailing city follows postal routes; legal city follows municipal boundaries — they can differ.
Editorial guidance: MapBench explains the method and limitations so the tool can be used as a transparent reference, not as a black-box answer. For legal boundaries, safety-critical routing, surveying, engineering, regulated decisions or official statistics, verify the result with the responsible authority or a qualified professional.
Category: Location. Results are intended for everyday analysis and planning unless a page explicitly states otherwise.
Method, assumptions & limits
- This tool’s method
- Forward: Photon (Komoot) OpenStreetMap search, first hit per line. Reverse: Nominatim reverse API. Sequential requests with ~1s delay.
- Before relying on the answer
- Check the selected pin before reading the returned place or boundary label. Address labels, administrative areas and postal geography can disagree.
- What the result cannot establish
- For official jurisdiction or mailing decisions, confirm the result with the responsible local authority or postal service.
Coverage: Worldwide. Search, basemap and external data requests may use third-party services; browser-based does not mean every operation is offline. Read the source and licence notes, calculation methodology and privacy policy. If a result looks inconsistent, report a correction with the inputs and mode used.
Frequently asked questions
Clear answers about the calculation, accuracy and appropriate use.
How many rows?
Up to 50 per run. That limit protects free OpenStreetMap-based services so they stay available for everyone.
Why is it slow?
Requests are spaced about one second apart to respect rate limits. Keep the tab open until the progress bar finishes.
Is data uploaded to MapBench servers?
No. Your browser calls public geocoding APIs directly. We do not store your address list.
Good enough for postal certification?
No. This is open-data matching for planning and enrichment. Use certified postal tools for discounted bulk mail.
Forward vs reverse?
Forward turns addresses into coordinates. Reverse turns lat/lng pairs into a readable address label.
How many rows can I run?
Up to 50 per batch — paste one entry per line. Bigger lists chunk into fifties; the limit keeps the run inside the geocoding service's fair-use pace.
Forward vs reverse — which do I need?
Addresses in hand → forward, for coordinates. Coordinates in hand → reverse, for addresses. The names describe what you paste.
What format should lines be?
One complete address per line (number, street, town, postcode, country where ambiguous) or one 'lat, lng' pair per line for reverse. Completeness is accuracy.
A row failed — now what?
Fix that line's address (more detail usually) and run it singly in Address to Coordinates. Batch failures are per-row, never contagious.
My list has duplicates.
They geocode twice and agree with themselves — harmless but wasteful. Dedupe in the spreadsheet first for a cleaner table.
International addresses in one batch?
Include the country in each line and the forward direction handles the mixture; ambiguity, not nationality, is what breaks rows.
Related tools and resources
Singles run in Address to Coordinates and Coordinates to Address; scepticism lives in the Address Validator.
More free tools
Sources, methodology & editorial trust
- ✓ Browser-first processing where supported
- ✓ External sources are documented
- ✓ No account required for public tools
- ✓ Review data sources
Calculations are documented with their assumptions, limitations and source context rather than presented as unexplained answers.
Reviewed and maintained by Aryan Khan, Founder & Editor of MapBench.
Part of our location & geocoding hub
Batch Geocoder sits in the location & geocoding cluster, alongside 37 other tools that answer neighbouring questions with different methods or datasets.
You may also need
When this answer is only part of the job, these clusters cover the next step.
Read the guide behind this tool
How to Convert Coordinates to an Address — Reverse geocoding explained: what turns a latitude and longitude into a street address, why the answer can be approximate, and how to check a result before you rely on it.