Skip to content

GeoJSON Viewer

View and visualize GeoJSON files on an interactive map. Paste or upload your GeoJSON data to see it rendered instantly.

Skip to the tool

Most spatial bugs are visible before they are debuggable. A point in the Gulf of Guinea, a polygon covering the whole world, a track that teleports: all of them show up on a map in a second and in a code review never.

The viewer redraws on every keystroke, fits the map to your data, and reports how many features it found. Click any feature to read its properties. Nothing is uploaded. If the geometry looks wrong, the debugging guide works through the usual causes.

How to Use the GeoJSON Viewer

Paste or upload your GeoJSON data into the input panel and it will be rendered instantly on the interactive map. You can zoom, pan, and click on features to inspect their properties. The viewer supports all GeoJSON geometry types including Point, LineString, Polygon, and their Multi variants.

You can also drag and drop .geojson or .json files directly onto the input area. There is no file size limit enforced by the viewer itself, though very large files (over 50 MB) may cause your browser to slow down.

Example GeoJSON

Try pasting this sample into the viewer to see it in action:

GeoJSON{
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "properties": { "name": "Empire State Building" },
      "geometry": {
        "type": "Point",
        "coordinates": [-73.9857, 40.7484]
      }
    }
  ]
}

What Can You Visualize?

  • Points: markers for locations such as addresses, landmarks, or sensor stations
  • LineStrings: paths like roads, rivers, hiking trails, or transit routes
  • Polygons: areas such as parcels, building footprints, city boundaries, or flood zones
  • FeatureCollections: groups of mixed geometry types displayed together on a single map

When a Map Beats a Code Review

Developers and GIS analysts use GeoJSON viewers to quickly sanity-check data before loading it into a database or sending it to an API.

Previewing geocoding results: After batch-geocoding a list of addresses, paste the resulting GeoJSON into the viewer to verify that all points land where expected. Geocoding services occasionally return coordinates in the wrong city or country, and a visual check catches these errors faster than scanning a table of numbers.

Inspecting API responses: Services like Mapbox, Google Maps, and Overpass return GeoJSON (or GeoJSON-like) payloads. Paste the response body directly into the viewer to confirm the geometry type, coordinate order, and property structure before writing parsing code.

Debugging coordinate order: GeoJSON mandates [longitude, latitude], but many APIs and spreadsheets use [latitude, longitude]. If your points appear in the ocean or on the wrong continent, the coordinates are likely swapped. Runturf.flip() over the FeatureCollection or fix the upstream source so it emits longitude first.

Reviewing GIS exports: Data exported from QGIS, PostGIS, or converted from Shapefiles can have subtle issues like missing properties, extra nesting, or incorrect winding order. Viewing the data on a map reveals these problems immediately.

Three Landmarks to Paste

Paste this FeatureCollection containing three well-known landmarks into the viewer. You should see three markers appear on the map, each clickable to reveal its properties:

GeoJSON{
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "properties": { "name": "Empire State Building", "height_m": 443 },
      "geometry": {
        "type": "Point",
        "coordinates": [-73.9857, 40.7484]
      }
    },
    {
      "type": "Feature",
      "properties": { "name": "Statue of Liberty", "height_m": 93 },
      "geometry": {
        "type": "Point",
        "coordinates": [-74.0445, 40.6892]
      }
    },
    {
      "type": "Feature",
      "properties": { "name": "Golden Gate Bridge", "length_m": 2737 },
      "geometry": {
        "type": "Point",
        "coordinates": [-122.4783, 37.8199]
      }
    }
  ]
}

The map auto-fits to show all three features. Click any marker and a popup opens on the map listing that feature's name and its height_m or length_m value. The two NYC points cluster together on the east coast, while the Golden Gate Bridge appears on the west coast, confirming the coordinates are in the correct [longitude, latitude] order.

Moving Around the Map

The map is a standard Leaflet map running its default controls. Click it once to give it focus, then:

  • Arrow keys pan.
  • + and - zoom in and out.
  • Shift and drag draws a rectangle to zoom into.
  • Scroll or double-click to zoom, drag to pan.

There is no separate fit-to-data shortcut. The map already fits itself to the bounding box of your data every time the input changes, so clearing and re-pasting resets the view.

Tips for Working with GeoJSON Data

GeoJSON coordinates are always in [longitude, latitude] order per the RFC 7946 specification. If your points appear in the wrong location, the coordinates may be swapped. Turf's flip()reverses every pair in a file, or a short recursive walker does the same in a few lines.

For large datasets, consider simplifying the geometry first to improve rendering performance. You can also validate your data to catch structural issues before visualization.