GeoJSON Viewer & Validator
GIS & Geography ToolsPaste GeoJSON to see it drawn on an interactive map. The viewer checks that your input is valid JSON and that its type is one of the nine GeoJSON types defined in RFC 7946, then formats it with indentation. Supports Point, LineString, Polygon, their Multi- variants, GeometryCollection, Feature and FeatureCollection.
GeoJSON Guide
How to Use
Paste your GeoJSON into the text area and press View GeoJSON. Valid input is drawn on the map and reformatted with two-space indentation. If the input is not valid JSON, the parser error is shown together with the position of the problem. If it parses but its type is not a GeoJSON type, a type error is shown instead. Your input is never cleared, so you can fix it in place.
The Nine GeoJSON Types
Point
A single position.
{ "type": "Point", "coordinates": [139.7, 35.68] }MultiPoint
An array of positions.
{
"type": "MultiPoint",
"coordinates": [[139.7, 35.68], [135.5, 34.7]]
}LineString
Two or more positions forming a line.
{
"type": "LineString",
"coordinates": [[139.7, 35.68], [135.5, 34.7]]
}MultiLineString
An array of LineStrings.
{
"type": "MultiLineString",
"coordinates": [[[139.7, 35.68], [135.5, 34.7]]]
}Polygon
One or more closed rings. The first ring is the outer boundary, any others are holes.
{
"type": "Polygon",
"coordinates": [
[
[139.7, 35.6], [139.8, 35.6],
[139.8, 35.7], [139.7, 35.6]
]
]
}MultiPolygon
An array of Polygons.
{
"type": "MultiPolygon",
"coordinates": [
[
[
[139.7, 35.6], [139.8, 35.6],
[139.8, 35.7], [139.7, 35.6]
]
]
]
}GeometryCollection
A collection of geometries of mixed types.
{
"type": "GeometryCollection",
"geometries": [
{ "type": "Point", "coordinates": [139.7, 35.68] }
]
}Feature
A geometry paired with a properties object.
{
"type": "Feature",
"geometry": {
"type": "Point",
"coordinates": [139.7, 35.68]
},
"properties": { "name": "Tokyo" }
}FeatureCollection
An array of Features. The most common top-level type for real data.
{ "type": "FeatureCollection", "features": [] }Tips
- Most syntax errors come from a trailing comma, single quotes instead of double quotes, or unquoted keys. The error message reports the character position, so start reading there.
- If a shape is drawn somewhere unexpected, suspect the coordinate order before the data itself.
- Paste one FeatureCollection rather than checking features one at a time — it renders in a single pass.
- Data in a projected system, such as plane rectangular coordinates, has to be converted before it will land in the right place.
- This tool checks syntax and type only. Coordinate ranges and ring winding order are not inspected.
Glossary
- RFC 7946
- The specification that defines GeoJSON. It fixes the coordinate reference system to WGS84 and the coordinate order to longitude then latitude, and defines exactly nine types. Earlier documents written against the 2008 draft may use other coordinate systems.
- Position
- A single coordinate, written as an array of longitude and latitude, optionally followed by an elevation. Every geometry in GeoJSON is built from positions, which is why a mistake here shifts the whole shape.
- GeometryCollection
- A geometry that holds other geometries of mixed types in a "geometries" array. Unlike a FeatureCollection it carries no properties, so it describes shapes without attributes.
- Syntax validation and semantic validation
- Syntax validation asks whether the text parses and whether the type is one this format defines. Semantic validation asks whether the values make sense — coordinates inside valid ranges, rings that close, winding order. This tool performs the former.
FAQ
- Q: Is the GeoJSON I paste sent to a server?
- A: No. Parsing, validation and rendering all happen in your browser. Nothing is sent to a server, so you can paste data you are not allowed to share.
- Q: Why do I get "Valid JSON, but not GeoJSON"?
- A: Your input parsed correctly as JSON, but its "type" field is missing or is not one of the nine GeoJSON types. A plain object such as {"a":1} is valid JSON and still not GeoJSON.
- Q: Does it validate against RFC 7946 completely?
- A: No. It checks that the input is valid JSON and that its type is one of the nine GeoJSON types. It does not check coordinate ranges, ring winding order or the bbox member, so a document can pass here and still be rejected by a stricter validator.