Home › Developer Tools › Shapefile Viewer

Shapefile Viewer

Open an Esri shapefile without installing GIS software. Choose the .zip (or the .shp, .dbf and .prj files together) to draw points, lines and polygons on an OpenStreetMap map, browse and search the attribute table, color the map by any field, and export the layer to GeoJSON or CSV. Common projected coordinate systems such as UTM, State Plane and Web Mercator are converted automatically.

Last updated:

Choose a .zip with the .shp, .dbf and .prj files, or select those files together. Drop them on the map to open.

Attribute table

Advertisement
Advertisement

How to use the Shapefile Viewer

  1. Open your shapefile: choose the .zip, or select the .shp, .dbf and .prj files together, or drop them on the map. A sample layer is shown first.
  2. Pick a layer from the menu if the zip holds several shapefiles.
  3. Explore: pan and zoom the map, click a shape to see its attributes and measurements, or click a table row to zoom to it.
  4. Style the map with Color by and Labels to see patterns in a field.
  5. Export the layer as GeoJSON or CSV for web maps, spreadsheets or databases.

Shapefile parts and what this viewer does with them

FileContainsRequired?Used for
.shpGeometry: points, lines or polygons (binary, little/big-endian mix)YesDrawing, measurements, GeoJSON and WKT export
.dbfAttribute table in dBASE III format, one row per shapeFor attributesTable, search, color by, labels, exports
.prjCoordinate system as WKT textStrongly recommendedConverting projected coordinates to latitude/longitude
.cpgText encoding name such as UTF-8 or 1252OptionalDecoding accented and non-Latin text
.shxIndex of record positionsFormally yesNot needed: records are read in order from the .shp
.sbn, .sbx, .qix, .xmlSpatial indexes and metadataNoIgnored

Shape types

CodeTypeGeoJSON export
1, 11, 21Point, PointZ, PointMPoint (Z and M values are dropped)
8, 18, 28MultiPoint (Z, M)MultiPoint
3, 13, 23PolyLine (Z, M)LineString or MultiLineString
5, 15, 25Polygon (Z, M)Polygon or MultiPolygon, holes matched to their outer ring
31MultiPatch (3D surfaces)Drawn as flat polygons

In a shapefile, outer polygon rings run clockwise and holes counterclockwise. GeoJSON (RFC 7946) uses the opposite convention, so rings are reversed on export. Field names in a .dbf are limited to 10 characters and text fields to 254 characters, which is why exported columns sometimes have shortened names like POP_DENSIT.

Tip: when sending a shapefile to someone, zip all of its files together. A .shp on its own has no attributes and no coordinate system.

Frequently asked questions

What files make up a shapefile?

A shapefile is a set of files with the same name: .shp holds the geometry, .shx is an index, and .dbf holds the attribute table in dBASE format. Optional but important are .prj, which describes the coordinate system, and .cpg, which names the text encoding. The .shp is required here; without the .dbf there are no attributes, and without the .prj the coordinate system has to be guessed.

Why is my shapefile shown without a basemap?

The map needs longitude and latitude. If the .prj file is missing, or describes a projection this viewer cannot convert, the shapes are still drawn correctly relative to each other in their own units, but they cannot be placed on the world map. Add the original .prj file to the zip to fix it.

Which coordinate systems are supported?

Geographic coordinates (WGS 84, NAD83, ETRS89 and similar) are shown directly. Projected systems using Transverse Mercator (all UTM zones and many national grids), Lambert Conformal Conic (most US State Plane zones, in meters or US survey feet), Albers equal-area and Mercator/Web Mercator are converted with the published USGS formulas. Other projections are converted with the proj4js library when it can be loaded. Datum shifts of a few meters, such as NAD27 to WGS 84, are not applied.

Is my data uploaded to a server?

No. The zip is unpacked and the .shp and .dbf files are decoded by JavaScript in your browser. Only the background map tiles are requested from OpenStreetMap; they reveal the map area you are looking at, not your data. Turn off the basemap to avoid even that.

Why do accented characters look wrong in the attributes?

Older shapefiles store text in a legacy code page. The viewer uses the .cpg file if present, otherwise the code page byte in the .dbf header, and otherwise tests whether the text is valid UTF-8 before falling back to Windows-1252. The encoding that was used is listed under Layer info.

How do I convert a shapefile to GeoJSON?

Open it here and click Download GeoJSON. Coordinates are converted to WGS 84 longitude/latitude with 7 decimal places, polygon rings are written counterclockwise as RFC 7946 requires, multipart shapes become MultiPolygon or MultiLineString, and every .dbf field becomes a property.

Is there a size limit?

Layers with tens of thousands of features and a few hundred thousand vertices display smoothly. Shapefiles are limited to 2 GB by design, but browsers struggle above a few hundred megabytes; for very large layers, clip or simplify them first.

Are all the tools on FreeToolCabin tested for quality and accuracy?

Yes! Every tool on our site undergoes automated Q/A testing in real browser environments to ensure high precision, correct output, and zero errors. If you happen to spot a bug or have a suggestion, please contact us at [email protected] and our team will review it right away.

Related tools

GeoJSON ViewerView GeoJSON on a map, inspect and edit properties, validate against RFC 7946 and export.KML ViewerOpen KML and KMZ files on an interactive map: placemarks, paths, polygons, folders, export.GPX ViewerOpen GPX tracks on a map with distance, elevation profile, moving time, speed and splits.Coordinate ConverterConvert GPS coordinates between decimal degrees, DMS, DDM, UTM and MGRS, auto-detected.Online Python CompilerRun Python 3 in your browser with input(), numpy, pandas, charts and share links.JSON EditorEdit JSON in a tree and as code side by side: add, rename, drag, change types, undo and download.Unzip FilesOpen and extract ZIP files online.RAR & 7z ExtractorOpen RAR, 7z and other archives online and extract files.Regex TesterTest and debug regular expressions live.File Info ViewerCheck file size, type, date and MD5/SHA hashes.SQLite ViewerOpen .db and .sqlite files in your browser, browse tables and run SQL queries.DOCX ViewerOpen and read Word .docx files in your browser, then print or save them as HTML.EPUB ReaderOpen and read EPUB e-books in your browser with pages, a table of contents and font controls.What Is My BrowserSee your browser, version, OS, engine, screen and which web features it supports.Font ViewerPreview TTF, OTF, WOFF and WOFF2 fonts with sample text, waterfall, glyphs and metadata.Markdown EditorWrite Markdown with a toolbar, live split preview, autosave and .md or HTML export.Regex Cheat Sheet75+ ready-to-use regex patterns for emails, URLs, IPs and dates, each with a live test box.JavaScript Keycode FinderPress any key to see its JavaScript key, code, keyCode, which, location and modifiers.QR Code ScannerScan QR codes with your camera or from an image and safely read the link or text.RAID CalculatorUsable capacity, efficiency and fault tolerance for RAID 0, 1, 5, 6, 10, 50 and 60 arrays.JSONPath TesterTest JSONPath expressions live: filters, slices, wildcards and recursive search, with matches highlighted.Mermaid Diagram EditorWrite Mermaid code and see flowcharts, sequence, Gantt and ER diagrams live. Export SVG or PNG.Country Codes ListSearch ISO 3166 alpha-2, alpha-3 and numeric country codes with calling codes and TLDs.CSS Selector TesterTest CSS selectors on your HTML: highlighted matches, match count and specificity.Git Cheat SheetSearchable Git command reference by task, with copy buttons and an undo/rename/fix wizard.HAR File ViewerOpen a .har file to see a waterfall timeline, headers, bodies, timings and size totals.jq PlaygroundRun jq filters on JSON in your browser with live output, flags and an example library.Markdown Cheat SheetInteractive Markdown syntax reference: edit every example and see the live rendered preview.Regex ExplainerPaste a regular expression and get a plain-English breakdown, railroad diagram and flag notes.XPath TesterTest XPath expressions on XML or HTML: highlighted matches, node paths, values and examples.EML File ViewerOpen .eml email files to read the message, headers and raw source and save attachments.Graphviz Online ViewerWrite Graphviz DOT code and render graphs live; switch layout engines, export SVG or PNG.JavaScript Online CompilerWrite and run JavaScript in your browser with a console, timing, error lines and share links.Jupyter Notebook ViewerOpen .ipynb files and read code, Markdown, math, tables, plots and errors without Python.LaTeX Table GeneratorEdit a table like a spreadsheet or paste from Excel and get LaTeX tabular or booktabs code.Log File ViewerOpen huge log files with level colors, regex and time filters, JSON pretty-print and tail -f.Logic Gate SimulatorBuild logic circuits with AND, OR, NOT, XOR gates and flip-flops; see live outputs and truth tables.MSG File ViewerOpen Outlook .msg emails in your browser: sender, recipients, body, headers and attachments.MongoDB Query TesterTest MongoDB find filters, projections and aggregation pipelines on sample JSON documents.Semantic Version CalculatorBump, compare, sort and test SemVer versions against npm ^, ~ and x ranges.XSLT TesterRun an XSLT 1.0 stylesheet on XML in your browser and see the output as HTML, XML or text.ASCII Diagram EditorDraw boxes, arrows and text on a character grid and copy plain-text diagrams for code and READMEs.DBF File ViewerOpen dBase .dbf files and shapefile tables, search and sort records, export CSV or XLSX.MBOX File ViewerOpen .mbox mail archives: list and search messages, read them, save attachments, export EML.MDB File ViewerOpen Access .mdb and .accdb databases in your browser: list tables, view rows, export CSV.Online Code EditorVS Code-style editor in your browser: tabs, 50+ languages, find/replace, autosave.Online Hex EditorOpen any file as hex and ASCII, edit bytes, search, inspect values and save the result.PHP Online CompilerRun PHP 8 code in your browser with output, HTML preview, error lines and share links.PlantUML EditorWrite PlantUML and see sequence, class, activity and more diagrams live. Export SVG or PNG.Sorting Algorithm VisualizerWatch bubble, insertion, merge, quick, heap and radix sort step by step with live counters.Lottie ViewerOpen Lottie JSON or .lottie files to play, pause, scrub frames, change speed and see details.Diff ViewerPaste a git diff or .patch file and view it side by side or inline, with file navigation.EditorConfig GeneratorBuild an .editorconfig with indent, charset, line endings and trim rules per file pattern.Folder Compare ToolCompare two folders by file list, size and SHA-256 hash, then open a text diff of changed files.Glob Pattern TesterTest glob patterns like **/*.js, {a,b} and !exclusions against a list of file paths.JMESPath TesterEvaluate JMESPath expressions against JSON live, the query language used by the AWS CLI.
See all 53 Code Playgrounds & Testers →