How to Convert Address to Lat Long in Excel (5 Methods Compared)

Convert addresses to latitude and longitude in Excel. Compare 5 methods: CSV2GEO upload, Google Sheets add-on, Google Maps API, Python script, and manual lookup. Free for 100 rows/day.

| April 01, 2026
How to Convert Address to Lat Long in Excel (5 Methods Compared)

You have a spreadsheet full of addresses and you need latitude and longitude for each one. Maybe it is 50 customer locations, 500 store addresses, or 5,000 delivery stops. Excel does not have a built-in geocoding function, so you need an external method.

This guide compares every practical way to convert addresses to lat/long coordinates in Excel — from free formulas to bulk tools that handle 50,000+ rows. Each method includes step-by-step instructions, real examples, and honest tradeoffs so you can pick the right approach for your data size and budget.

Quick Comparison: 5 Methods at a Glance

MethodBest ForMax RowsCostDifficulty
CSV2GEO (upload)Bulk Excel/CSV filesUnlimitedFree (100/day)Easy
CSV2GEO Google Sheets Add-onWorking in Google Sheets50,000+Free (1,000/day)Easy
Google Maps API + Power QueryDevelopers, automationUnlimited$5/1,000 requestsHard
Python scriptDevelopers, recurring jobsUnlimitedFree (API dependent)Hard
Manual (Google Maps)One-off, <10 addresses~10FreeTedious

Method 1: Upload Your Excel File to CSV2GEO (Easiest)

The fastest way to convert addresses to lat/long in Excel is to upload the file directly to a batch geocoder. CSV2GEO processes your entire spreadsheet and returns it with latitude, longitude, and a confidence score for each row.

Step-by-step:

  1. Go to csv2geo.com and drag your Excel or CSV file onto the page.
  2. The tool auto-detects your columns. Map your address fields (street, city, state, zip, country) using the dropdowns.
  3. Click "Preview" to geocode the first 10 rows for free — verify the results look correct.
  4. Click "Process" to geocode all rows. Files up to 100 rows are free every day.
  5. Download the result. Your original data is preserved with new columns: Latitude, Longitude, Formatted Address, and Relevance Score.

What the output looks like:

StreetCityStateLatitudeLongitudeConfidence
1600 Pennsylvania AveWashingtonDC38.8977-77.03651.0
350 5th AveNew YorkNY40.7484-73.98571.0
233 S Wacker DrChicagoIL41.8789-87.63591.0

Pros and cons:

  • No coding required — drag, drop, download.
  • Handles Excel (.xlsx), CSV, and TSV files.
  • 200+ countries supported with rooftop-level accuracy.
  • Free tier: 100 rows per day, no credit card required.
  • For larger files, paid plans start at $14.99/month.

Method 2: CSV2GEO Google Sheets Add-on

If your data is already in Google Sheets (or you can paste it there from Excel), the CSV2GEO add-on geocodes addresses directly inside your spreadsheet without leaving the browser.

How to set it up:

  1. Install the CSV2GEO add-on from the Google Workspace Marketplace (search "CSV2GEO").
  2. Open your spreadsheet. Go to Extensions → CSV2GEO → Open CSV2GEO.
  3. Enter your free API key from csv2geo.com/api-keys.
  4. Select "Separate columns" and map your Street, City, State, Postcode, and Country columns.
  5. Click "Geocode." The add-on processes rows in batches and shows live progress with an ETA.
  6. Results appear in new columns: Latitude, Longitude, Formatted Address, Accuracy, Confidence, and Status.

The add-on highlights low-confidence results in yellow and red so you can review them. Failed rows can be retried with one click or exported to csv2geo.com for advanced processing.

Pros and cons:

  • Works directly inside Google Sheets — no file downloads needed.
  • Free tier: 1,000 geocodes per day.
  • Smart column auto-detection recognizes address headers in multiple languages.
  • Handles sheets with 50,000+ rows via automatic chunked processing.
  • Requires a free CSV2GEO API key.

Method 3: Google Maps Geocoding API with Power Query

If you want to stay inside Excel and have a Google Cloud account, you can use Power Query to call the Google Maps Geocoding API directly from your spreadsheet.

Setup:

  1. Create a Google Cloud project and enable the Geocoding API.
  2. Create an API key and set up billing ($200/month free credit covers ~40,000 geocodes).
  3. In Excel, go to Data → Get Data → From Other Sources → Blank Query.
  4. Open the Advanced Editor and paste this M code:
let
    address = "1600 Pennsylvania Ave, Washington DC",
    apiKey = "YOUR_API_KEY",
    url = "https://maps.googleapis.com/maps/api/geocode/json?address="
          & Uri.EscapeDataString(address) & "&key=" & apiKey,
    response = Json.Document(Web.Contents(url)),
    result = response[results]{0},
    lat = result[geometry][location][lat],
    lng = result[geometry][location][lng]
in
    {lat, lng}
  1. Convert this into a function and apply it to your address column.

Pros and cons:

  • Stays inside Excel — no external tools.
  • Google has excellent global coverage and accuracy.
  • Costs $5 per 1,000 requests after the free $200 monthly credit.
  • Requires a Google Cloud account with billing enabled.
  • Complex setup — Power Query M code is not beginner-friendly.
  • No batch endpoint — each address is a separate API call, making large files slow.

Method 4: Python Script with CSV2GEO API

For developers or recurring geocoding jobs, a Python script gives you full control. Read the Excel file, call the geocoding API, write results back.

import pandas as pd
import requests

df = pd.read_excel("addresses.xlsx")
API_KEY = "geo_live_your_key_here"

def geocode(row):
    address = f"{row['Street']}, {row['City']}, {row['State']} {row['Zip']}"
    resp = requests.get(
        "https://csv2geo.com/api/v1/geocode",
        params={"q": address, "country": "US", "api_key": API_KEY}
    )
    if resp.status_code == 200:
        results = resp.json().get("results", [])
        if results:
            return results[0]["location"]["lat"], results[0]["location"]["lng"]
    return None, None

df[["Latitude", "Longitude"]] = df.apply(
    lambda row: pd.Series(geocode(row)), axis=1
)
df.to_excel("geocoded_output.xlsx", index=False)
print(f"Done: {len(df)} rows geocoded")

Pros and cons:

  • Full automation — schedule it to run daily, weekly, or on file arrival.
  • Works with any file size.
  • Batch API available for paid plans (up to 10,000 addresses per request).
  • Requires Python knowledge.
  • Requires a CSV2GEO API key (free tier: 1,000/day).

Method 5: Manual Lookup via Google Maps

For a handful of addresses (under 10), the simplest approach is to look them up manually on Google Maps and copy the coordinates into your spreadsheet.

  1. Go to maps.google.com and search for the address.
  2. Right-click the pin on the map.
  3. Click the coordinates at the top of the context menu — they are copied to your clipboard.
  4. Paste into your Excel cell.

Pros and cons:

  • Zero setup, completely free.
  • Takes about 30 seconds per address.
  • Not practical for more than 10-20 addresses.
  • No confidence score or error detection.
  • Manual copy-paste errors are common with coordinates.

Which Method Should You Use?

Your SituationBest Method
Under 10 addresses, one-time jobManual Google Maps lookup
Under 100 rows in Excel/CSVCSV2GEO upload (free, no signup)
100–1,000 rows in Google SheetsCSV2GEO Google Sheets add-on
1,000–50,000+ rowsCSV2GEO upload or API
Recurring daily/weekly jobPython script with CSV2GEO API
Already using Google CloudGoogle Maps API + Power Query
International addresses (200+ countries)CSV2GEO (widest coverage)

Common Mistakes When Geocoding Excel Addresses

1. Missing country information

"123 Main Street" exists in hundreds of cities across dozens of countries. Without a country column, the geocoder has to guess — and it will often guess wrong. Always include a country column or set a default country before processing.

2. Combining address into one cell

"1600 Pennsylvania Ave NW, Washington, DC 20500, US" in a single cell works, but separate columns (Street, City, State, Zip, Country) produce better results. Geocoders can match each component independently, which improves accuracy and reduces ambiguity.

3. Abbreviations and typos

"St" vs "Street," "Ave" vs "Avenue," "Blvd" vs "Boulevard" — most geocoders handle these. But "Pennslvania" instead of "Pennsylvania" will fail silently. Run a spell check on your address column before geocoding. It takes 30 seconds and prevents hundreds of NOT_FOUND results.

4. Ignoring confidence scores

A geocoder will always return coordinates, even for a vague query like "somewhere in Texas." The confidence score tells you whether the result is a rooftop match (confidence 1.0) or a city-center guess (confidence 0.3). Always check the confidence column and investigate rows below 0.7.

5. Swapping latitude and longitude

Latitude comes first (the Y axis, −90 to +90). Longitude comes second (the X axis, −180 to +180). Many spreadsheets have them backwards. If your US addresses show coordinates in the ocean off the coast of Somalia, your lat and lng columns are swapped.

What to Do After You Have Lat/Long Coordinates

Geocoding is usually step one. Once you have coordinates, here are the most common next steps:

  • Plot locations on a map — use Google Maps, Mapbox, or CSV2GEO's built-in interactive map.
  • Calculate distances between points — the Haversine formula gives you straight-line distance; routing APIs give driving distance.
  • Find nearest locations — sort by distance to a reference point for store locators or service area analysis.
  • Aggregate by region — group coordinates by state, county, or zip code for reporting dashboards.
  • Reverse geocode for verification — convert coordinates back to addresses to confirm accuracy.

Start Geocoding Your Excel File Now

Ready to convert your addresses to coordinates? Upload your Excel file to CSV2GEO and get geocoded results in minutes. The first 100 rows are free every day — no signup, no credit card, no software to install.

For larger files or API access, plans start at $14.99/month with support for 200+ countries and 461 million addresses.

Ready to geocode your addresses?

Use our batch geocoding tool to convert thousands of addresses to coordinates in minutes. Start with 100 free addresses.

Try Batch Geocoding Free →