JoseFitani
🌐 GIS & Formats

GeoJSON Viewer

This tool previews GeoJSON data on an interactive map. Paste a GeoJSON document into the text box or upload a .geojson or .json file, then click Render on map to see its features drawn with the map automatically zoomed to fit them.

It also validates what you paste: it reports JSON syntax errors, rejects documents whose type is not valid GeoJSON, and counts the features and geometry types it found. Everything runs 100% in your browser — your data is never uploaded to any server, so even sensitive datasets stay private. It does not edit GeoJSON, convert it to other formats, or save anything.

Everything runs in your browser — the file is never uploaded anywhere.

Loading map…

How to use this tool

1
Paste or upload GeoJSON

Paste a GeoJSON document into the text box, or click the upload button and choose a .geojson or .json file from your device.

2
Render on map

Click Render on map. The tool checks the document is valid GeoJSON and draws every feature; the map zooms to fit them automatically.

3
Check the validation summary

Read the feature count and geometry-type breakdown to confirm the file contains what you expected, then iterate on the text and re-render.

What people use this tool for

Debug a broken GeoJSON export

A GIS export that fails to load elsewhere can be pasted here to find out whether the problem is a JSON syntax error or a structural issue like a missing features array.

Example: Paste the output of an ogr2ogr conversion to see which line breaks the JSON.
Sanity-check data before publishing

Before attaching a GeoJSON to a blog post or dataset, verify visually that the coordinates land where they should and that nothing is empty.

Example: Confirm a city-boundary polygon actually outlines the city, not an ocean.
Teach the GeoJSON format

Students learning web mapping can paste small hand-written examples and immediately see how Points, LineStrings and Polygons render.

Example: Compare a FeatureCollection with a bare Geometry to see how both are accepted.

How it's calculated

The pasted text is parsed with JSON.parse; any syntax error is reported verbatim. The result is then checked structurally: it must be an object whose type is one of the nine GeoJSON types, FeatureCollections must carry a features array of Feature objects, and GeometryCollections must carry a geometries array. Valid documents are rendered with Leaflet's L.geoJSON layer and the map view is fit to the layer bounds. No network request is made for the data itself; only the OpenStreetMap base tiles are loaded.

Related tools and resources

Pair this with the KML converter or the GPX viewer when your data arrives in a different format, or drop validated points into the marker map.

Frequently asked questions

Is my GeoJSON uploaded to a server?

No. Parsing, validation and rendering all happen in your browser with JavaScript. Only the OpenStreetMap background map tiles are fetched from the network; your data never leaves your device.

What exactly does the validator check?

It checks that the text is valid JSON, that the top-level type is a recognized GeoJSON type, and that FeatureCollection and GeometryCollection documents have the required features or geometries arrays. It does not check whether coordinates are sensible — a point at 0,0 is still 'valid'.

Why does the map not move after rendering?

The map fits itself to the bounds of the drawn features. If nothing visible appears and no error is shown, the features may be empty geometries or located far from the default view — check the feature count and zoom out.

Can I edit the GeoJSON here?

You can edit the text in the box and re-render to preview changes, but the tool has no graphical editor and does not save files. For editing, use a GIS application and come back here to verify the result.

Data sources & methodology