Back to all posts

How to Export Google Maps Saved Places as GeoJSON: Complete Guide

Learn how to export your Google Maps saved places as GeoJSON with step-by-step instructions, including solutions for the geocoding challenge.

July 20, 2025

6 min read

GeoJSON has become the default format for geographic data on the web. If you're building a custom map, working with modern mapping libraries, or doing spatial analysis in Python or R, GeoJSON is likely what you need. The problem: Google Maps doesn't export your saved places in GeoJSON format - or any format with actual coordinates.

This guide covers how to get your saved places out of Google Maps and into proper GeoJSON files.

What is GeoJSON?

GeoJSON is an open standard for encoding geographic data using JSON (JavaScript Object Notation). Unlike older formats like KML or Shapefile, GeoJSON is human-readable, easy to parse, and natively supported by virtually every modern mapping library and GIS tool.

A simple GeoJSON file looks like this:

{
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "properties": {
        "name": "Favorite Coffee Shop",
        "category": "Starred"
      },
      "geometry": {
        "type": "Point",
        "coordinates": [-122.4194, 37.7749]
      }
    }
  ]
}

Each place becomes a "Feature" with properties (name, notes, category) and geometry (the coordinates). This structure works seamlessly with tools like Leaflet, Mapbox GL JS, D3.js, QGIS, and geospatial Python libraries like GeoPandas.

Why Choose GeoJSON?

Web development: If you're building a web map with Leaflet, Mapbox, or any JavaScript mapping library, GeoJSON is the native format. No conversion needed.

Data science: Python's GeoPandas, R's sf package, and other analysis tools work directly with GeoJSON. It's the standard for spatial data in modern data pipelines.

Interoperability: GeoJSON is an OGC standard and works across platforms. Your data isn't locked into any particular ecosystem.

Readability: Unlike binary formats, you can open a GeoJSON file in any text editor and understand what's there. This makes debugging and manual edits straightforward.

Not the format you need? If you're loading places onto a GPS device or outdoor app, GPX format is more appropriate. For Google Earth visualization, see our KML guide.

The Missing Coordinates Problem

Google Takeout exports your saved places as CSV files with names, addresses, and URLs - but no coordinates. GeoJSON requires coordinates (that's the "Geo" part), so you need to geocode your places before converting to GeoJSON.

How to Export and Convert to GeoJSON

Step 1: Download from Google Takeout

  1. Go to Google Takeout
  2. Click "Deselect all"
  3. Find and select only "Saved"
  4. Click "Next step""Create export"
  5. Wait for the email, download, and unzip

You'll find CSV files in the "Saved" folder - one for each of your lists.

Step 2: Geocode and Convert

The CSV files need coordinates added before they can become GeoJSON. A geocoding service like Takeout Tools handles both steps: upload your CSVs, select GeoJSON as the output format, and download the result.

For developers who prefer to handle this programmatically, the workflow is:

  1. Parse the CSV files
  2. Geocode each address using Google Geocoding API, Nominatim, or another service
  3. Construct GeoJSON features from the results
  4. Output as a FeatureCollection

Step 3: Use Your GeoJSON

Your exported GeoJSON is ready for use in any compatible tool:

Web mapping libraries:

// Leaflet
L.geoJSON(yourGeoJSON).addTo(map);

// Mapbox GL JS
map.addSource('places', { type: 'geojson', data: yourGeoJSON });

Python (GeoPandas):

import geopandas as gpd
places = gpd.read_file('saved-places.geojson')

QGIS: Layer → Add Layer → Add Vector Layer, select your GeoJSON file

Kepler.gl: Drag and drop the file directly into the interface

GeoJSON Structure Details

After conversion, your GeoJSON will follow this structure:

{
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "properties": {
        "name": "Place Name",
        "address": "123 Main St, City",
        "notes": "Your notes here",
        "list": "Starred Places",
        "url": "https://maps.google.com/..."
      },
      "geometry": {
        "type": "Point",
        "coordinates": [longitude, latitude]
      }
    }
  ]
}

Note that GeoJSON uses [longitude, latitude] order (x, y), which is the opposite of how Google Maps typically displays coordinates. This is a common source of confusion but is correct per the GeoJSON specification.

Pro Tips

  1. Validate your GeoJSON. Use our free GeoJSON validator to check that your file is valid before using it in production. Invalid GeoJSON can cause silent failures in mapping libraries.

  2. Keep coordinate precision reasonable. Six decimal places is plenty for saved places. More precision just increases file size without adding useful accuracy.

  3. Use the properties object. GeoJSON's properties can hold any metadata - use them for filtering and styling. For example, assign different colors based on the list property.

  4. Consider file size. If you have thousands of places, GeoJSON can get large. For web applications, consider loading data dynamically or using vector tiles for very large datasets.

  5. Preserve your source files. Keep the original Google Takeout CSV files. If you need to regenerate or convert to different formats later, you'll have the raw data.

Frequently Asked Questions

Why does GeoJSON use longitude-latitude order instead of latitude-longitude?

GeoJSON follows the mathematical convention of (x, y) coordinates, where longitude is the x-axis and latitude is the y-axis. Most mapping libraries expect this order and will display your points in the wrong location if you swap them.

Can I convert GeoJSON to other formats?

Yes. Tools like ogr2ogr (part of GDAL), QGIS, or online converters can transform GeoJSON to KML, GPX, Shapefile, and other formats. GeoJSON is a good "source of truth" format because it's widely supported.

How do I style my GeoJSON on a map?

GeoJSON itself doesn't contain styling information. You apply styles in your mapping library:

  • Leaflet: Use the style option in L.geoJSON()
  • Mapbox: Define styles in your map style specification
  • QGIS: Right-click the layer → Properties → Symbology

What if I have different types of places?

Use the list property (which corresponds to your Google Maps lists) to differentiate. In your mapping code, you can filter or style based on this property - for example, showing restaurants in one color and landmarks in another.

Is GeoJSON good for large datasets?

GeoJSON works fine for hundreds or a few thousand points. For larger datasets (tens of thousands of points), consider alternatives like vector tiles, TopoJSON (compressed GeoJSON), or loading data from an API rather than a static file.


Export to GeoJSON

Convert saved places for web maps and APIs

Try Takeout Tools →


Free Tools

Already have a GeoJSON file? Use our free browser-based tools:

See Other Export Guides

Looking for different output formats?