---
title: "Supported file formats and limits"
description: "Check which vector, raster, and tabular file formats MangoMap supports, the file size limit, storage by plan, and coordinate systems."
sidebar:
  label: "Supported formats and limits"
search:
  keywords: [file types]
---

Use this page to check that MangoMap supports your data before you start. MangoMap accepts vector, raster, and tabular files up to 5 GB each, plus live WMS connections. Your plan sets the total storage limit. See the table at the bottom.

You pick the format in the `Data format` dropdown on the `Import data` page. Where the dropdown name differs from the format name, the table notes give it.

<img src="/_assets/importing-data/supported-formats--data-format.png" alt="Import data page with the Data format dropdown open, listing CSV, Geo database, GeoJSON, KML, Shapefile, Tab, GeoTIFF, and WMS" width="1600" height="960" />

Some files must be zipped, unzipped, renamed, or converted before the `Import data` page accepts them.

<!-- diagram:supported-formats-flow -->
<svg class="dark:hidden" style="width: 100%; height: auto" viewBox="0 0 640 708" xmlns="http://www.w3.org/2000/svg" role="img" aria-labelledby="supported-formats-flow-inline-title supported-formats-flow-inline-desc">
  <title id="supported-formats-flow-inline-title">What to do with your file</title>
  <desc id="supported-formats-flow-inline-desc">Flowchart: connect a web map service as WMS; zip a .gdb folder or a loose .tif first; unzip or rename a .kmz, a .json or a zipped shapefile first; convert a format that is not in the Data format list; upload everything else as it is.</desc>
  <defs>
    <marker id="supported-formats-flow-inline-arrow" markerWidth="8" markerHeight="6" refX="7" refY="3" orient="auto"><polygon points="0 0, 8 3, 0 6" fill="#525252"/></marker>
    <marker id="supported-formats-flow-inline-arrow-accent" markerWidth="8" markerHeight="6" refX="7" refY="3" orient="auto"><polygon points="0 0, 8 3, 0 6" fill="#c4360c"/></marker>
  </defs>
  <rect width="100%" height="100%" fill="#f5f5f5"/>
  <path d="M192 60 L192 86" fill="none" stroke="#525252" stroke-width="1.2" marker-end="url(#supported-formats-flow-inline-arrow)"/>
  <path d="M316 136 L358 136" fill="none" stroke="#525252" stroke-width="1.2" marker-end="url(#supported-formats-flow-inline-arrow)"/>
  <path d="M316 272 L358 272" fill="none" stroke="#525252" stroke-width="1.2" marker-end="url(#supported-formats-flow-inline-arrow)"/>
  <path d="M316 408 L358 408" fill="none" stroke="#525252" stroke-width="1.2" marker-end="url(#supported-formats-flow-inline-arrow)"/>
  <path d="M316 544 L358 544" fill="none" stroke="#525252" stroke-width="1.2" marker-end="url(#supported-formats-flow-inline-arrow)"/>
  <path d="M192 184 L192 222" fill="none" stroke="#525252" stroke-width="1.2" marker-end="url(#supported-formats-flow-inline-arrow)"/>
  <path d="M192 320 L192 358" fill="none" stroke="#525252" stroke-width="1.2" marker-end="url(#supported-formats-flow-inline-arrow)"/>
  <path d="M192 456 L192 494" fill="none" stroke="#525252" stroke-width="1.2" marker-end="url(#supported-formats-flow-inline-arrow)"/>
  <path d="M192 592 L192 630" fill="none" stroke="#c4360c" stroke-width="1.4" marker-end="url(#supported-formats-flow-inline-arrow-accent)"/>
  <rect x="318" y="112" width="34" height="16" rx="2" fill="#f5f5f5"/><text x="335" y="124" fill="#525252" font-size="10" font-weight="600" letter-spacing="0.1em" font-family="inherit" text-anchor="middle">YES</text>
  <rect x="318" y="248" width="34" height="16" rx="2" fill="#f5f5f5"/><text x="335" y="260" fill="#525252" font-size="10" font-weight="600" letter-spacing="0.1em" font-family="inherit" text-anchor="middle">YES</text>
  <rect x="318" y="384" width="34" height="16" rx="2" fill="#f5f5f5"/><text x="335" y="396" fill="#525252" font-size="10" font-weight="600" letter-spacing="0.1em" font-family="inherit" text-anchor="middle">YES</text>
  <rect x="322" y="520" width="26" height="16" rx="2" fill="#f5f5f5"/><text x="335" y="532" fill="#525252" font-size="10" font-weight="600" letter-spacing="0.1em" font-family="inherit" text-anchor="middle">NO</text>
  <rect x="200" y="195" width="26" height="16" rx="2" fill="#f5f5f5"/><text x="213" y="207" fill="#525252" font-size="10" font-weight="600" letter-spacing="0.1em" font-family="inherit" text-anchor="middle">NO</text>
  <rect x="200" y="331" width="26" height="16" rx="2" fill="#f5f5f5"/><text x="213" y="343" fill="#525252" font-size="10" font-weight="600" letter-spacing="0.1em" font-family="inherit" text-anchor="middle">NO</text>
  <rect x="200" y="467" width="26" height="16" rx="2" fill="#f5f5f5"/><text x="213" y="479" fill="#525252" font-size="10" font-weight="600" letter-spacing="0.1em" font-family="inherit" text-anchor="middle">NO</text>
  <rect x="200" y="603" width="34" height="16" rx="2" fill="#f5f5f5"/><text x="217" y="615" fill="#525252" font-size="10" font-weight="600" letter-spacing="0.1em" font-family="inherit" text-anchor="middle">YES</text>
  <rect x="76" y="16" width="232" height="44" rx="20" fill="rgba(23,23,23,0.04)" stroke="rgba(23,23,23,0.32)" stroke-width="1"/>
  <text x="192" y="43" fill="#171717" font-size="14" font-weight="600" font-family="inherit" text-anchor="middle">You have data to import</text>
  <polygon points="192,88 316,136 192,184 68,136" fill="#ffffff" stroke="#171717" stroke-width="1"/><text x="192" y="131" fill="#171717" font-size="14" font-weight="600" font-family="inherit" text-anchor="middle">A web map</text><text x="192" y="149" fill="#171717" font-size="14" font-weight="600" font-family="inherit" text-anchor="middle">service (WMS)?</text>
  <polygon points="192,224 316,272 192,320 68,272" fill="#ffffff" stroke="#171717" stroke-width="1"/><text x="192" y="267" fill="#171717" font-size="14" font-weight="600" font-family="inherit" text-anchor="middle">A .gdb folder</text><text x="192" y="285" fill="#171717" font-size="14" font-weight="600" font-family="inherit" text-anchor="middle">or a loose .tif?</text>
  <polygon points="192,360 316,408 192,456 68,408" fill="#ffffff" stroke="#171717" stroke-width="1"/><text x="192" y="403" fill="#171717" font-size="14" font-weight="600" font-family="inherit" text-anchor="middle">A .kmz, .json or</text><text x="192" y="421" fill="#171717" font-size="14" font-weight="600" font-family="inherit" text-anchor="middle">zipped shapefile?</text>
  <polygon points="192,496 316,544 192,592 68,544" fill="#ffffff" stroke="#171717" stroke-width="1"/><text x="192" y="539" fill="#171717" font-size="14" font-weight="600" font-family="inherit" text-anchor="middle">In the Data</text><text x="192" y="557" fill="#171717" font-size="14" font-weight="600" font-family="inherit" text-anchor="middle">format list?</text>
  <rect x="360" y="100" width="264" height="72" rx="20" fill="rgba(23,23,23,0.04)" stroke="rgba(23,23,23,0.32)" stroke-width="1"/><text x="492" y="122" fill="#171717" font-size="14" font-weight="600" font-family="inherit" text-anchor="middle">Connect it as WMS</text><text x="492" y="142" fill="#525252" font-size="12" font-family="inherit" text-anchor="middle">use its https:// GetCapabilities URL</text><text x="492" y="158" fill="#525252" font-size="12" font-family="inherit" text-anchor="middle">then pick the layers to import</text>
  <rect x="360" y="236" width="264" height="72" rx="20" fill="rgba(23,23,23,0.04)" stroke="rgba(23,23,23,0.32)" stroke-width="1"/><text x="492" y="258" fill="#171717" font-size="14" font-weight="600" font-family="inherit" text-anchor="middle">Zip it first</text><text x="492" y="278" fill="#525252" font-size="12" font-family="inherit" text-anchor="middle">.gdb folder → .gdb.zip</text><text x="492" y="294" fill="#525252" font-size="12" font-family="inherit" text-anchor="middle">loose .tif or .tiff → .zip</text>
  <rect x="360" y="372" width="264" height="72" rx="20" fill="rgba(23,23,23,0.04)" stroke="rgba(23,23,23,0.32)" stroke-width="1"/><text x="492" y="394" fill="#171717" font-size="14" font-weight="600" font-family="inherit" text-anchor="middle">Unzip or rename it first</text><text x="492" y="414" fill="#525252" font-size="12" font-family="inherit" text-anchor="middle">.kmz → .kml, .json → .geojson</text><text x="492" y="430" fill="#525252" font-size="12" font-family="inherit" text-anchor="middle">zipped shapefile → its four files</text>
  <rect x="360" y="508" width="264" height="72" rx="20" fill="rgba(23,23,23,0.04)" stroke="rgba(23,23,23,0.32)" stroke-width="1"/><text x="492" y="530" fill="#171717" font-size="14" font-weight="600" font-family="inherit" text-anchor="middle">Convert it first</text><text x="492" y="550" fill="#525252" font-size="12" font-family="inherit" text-anchor="middle">for example .xlsx → .csv,</text><text x="492" y="566" fill="#525252" font-size="12" font-family="inherit" text-anchor="middle">.gpx or .gpkg → .geojson</text>
  <rect x="62" y="632" width="260" height="60" rx="20" fill="rgba(196,54,12,0.08)" stroke="#c4360c" stroke-width="1.4"/>
  <text x="192" y="657" fill="#171717" font-size="14" font-weight="600" font-family="inherit" text-anchor="middle">Upload it as it is</text>
  <text x="192" y="675" fill="#525252" font-size="12" font-family="inherit" text-anchor="middle">pick the format, then add the files</text>
</svg>
<svg class="hidden dark:block" style="width: 100%; height: auto" viewBox="0 0 640 708" xmlns="http://www.w3.org/2000/svg" role="img" aria-labelledby="supported-formats-flow-inline-dark-title supported-formats-flow-inline-dark-desc">
  <title id="supported-formats-flow-inline-dark-title">What to do with your file</title>
  <desc id="supported-formats-flow-inline-dark-desc">Flowchart: connect a web map service as WMS; zip a .gdb folder or a loose .tif first; unzip or rename a .kmz, a .json or a zipped shapefile first; convert a format that is not in the Data format list; upload everything else as it is.</desc>
  <defs>
    <marker id="supported-formats-flow-inline-dark-arrow" markerWidth="8" markerHeight="6" refX="7" refY="3" orient="auto"><polygon points="0 0, 8 3, 0 6" fill="#a3a3a3"/></marker>
    <marker id="supported-formats-flow-inline-dark-arrow-accent" markerWidth="8" markerHeight="6" refX="7" refY="3" orient="auto"><polygon points="0 0, 8 3, 0 6" fill="#ff7a4d"/></marker>
  </defs>
  <rect width="100%" height="100%" fill="#141414"/>
  <path d="M192 60 L192 86" fill="none" stroke="#a3a3a3" stroke-width="1.2" marker-end="url(#supported-formats-flow-inline-dark-arrow)"/>
  <path d="M316 136 L358 136" fill="none" stroke="#a3a3a3" stroke-width="1.2" marker-end="url(#supported-formats-flow-inline-dark-arrow)"/>
  <path d="M316 272 L358 272" fill="none" stroke="#a3a3a3" stroke-width="1.2" marker-end="url(#supported-formats-flow-inline-dark-arrow)"/>
  <path d="M316 408 L358 408" fill="none" stroke="#a3a3a3" stroke-width="1.2" marker-end="url(#supported-formats-flow-inline-dark-arrow)"/>
  <path d="M316 544 L358 544" fill="none" stroke="#a3a3a3" stroke-width="1.2" marker-end="url(#supported-formats-flow-inline-dark-arrow)"/>
  <path d="M192 184 L192 222" fill="none" stroke="#a3a3a3" stroke-width="1.2" marker-end="url(#supported-formats-flow-inline-dark-arrow)"/>
  <path d="M192 320 L192 358" fill="none" stroke="#a3a3a3" stroke-width="1.2" marker-end="url(#supported-formats-flow-inline-dark-arrow)"/>
  <path d="M192 456 L192 494" fill="none" stroke="#a3a3a3" stroke-width="1.2" marker-end="url(#supported-formats-flow-inline-dark-arrow)"/>
  <path d="M192 592 L192 630" fill="none" stroke="#ff7a4d" stroke-width="1.4" marker-end="url(#supported-formats-flow-inline-dark-arrow-accent)"/>
  <rect x="318" y="112" width="34" height="16" rx="2" fill="#141414"/><text x="335" y="124" fill="#a3a3a3" font-size="10" font-weight="600" letter-spacing="0.1em" font-family="inherit" text-anchor="middle">YES</text>
  <rect x="318" y="248" width="34" height="16" rx="2" fill="#141414"/><text x="335" y="260" fill="#a3a3a3" font-size="10" font-weight="600" letter-spacing="0.1em" font-family="inherit" text-anchor="middle">YES</text>
  <rect x="318" y="384" width="34" height="16" rx="2" fill="#141414"/><text x="335" y="396" fill="#a3a3a3" font-size="10" font-weight="600" letter-spacing="0.1em" font-family="inherit" text-anchor="middle">YES</text>
  <rect x="322" y="520" width="26" height="16" rx="2" fill="#141414"/><text x="335" y="532" fill="#a3a3a3" font-size="10" font-weight="600" letter-spacing="0.1em" font-family="inherit" text-anchor="middle">NO</text>
  <rect x="200" y="195" width="26" height="16" rx="2" fill="#141414"/><text x="213" y="207" fill="#a3a3a3" font-size="10" font-weight="600" letter-spacing="0.1em" font-family="inherit" text-anchor="middle">NO</text>
  <rect x="200" y="331" width="26" height="16" rx="2" fill="#141414"/><text x="213" y="343" fill="#a3a3a3" font-size="10" font-weight="600" letter-spacing="0.1em" font-family="inherit" text-anchor="middle">NO</text>
  <rect x="200" y="467" width="26" height="16" rx="2" fill="#141414"/><text x="213" y="479" fill="#a3a3a3" font-size="10" font-weight="600" letter-spacing="0.1em" font-family="inherit" text-anchor="middle">NO</text>
  <rect x="200" y="603" width="34" height="16" rx="2" fill="#141414"/><text x="217" y="615" fill="#a3a3a3" font-size="10" font-weight="600" letter-spacing="0.1em" font-family="inherit" text-anchor="middle">YES</text>
  <rect x="76" y="16" width="232" height="44" rx="20" fill="rgba(242,242,242,0.05)" stroke="rgba(242,242,242,0.34)" stroke-width="1"/>
  <text x="192" y="43" fill="#f2f2f2" font-size="14" font-weight="600" font-family="inherit" text-anchor="middle">You have data to import</text>
  <polygon points="192,88 316,136 192,184 68,136" fill="#1c1c1c" stroke="#f2f2f2" stroke-width="1"/><text x="192" y="131" fill="#f2f2f2" font-size="14" font-weight="600" font-family="inherit" text-anchor="middle">A web map</text><text x="192" y="149" fill="#f2f2f2" font-size="14" font-weight="600" font-family="inherit" text-anchor="middle">service (WMS)?</text>
  <polygon points="192,224 316,272 192,320 68,272" fill="#1c1c1c" stroke="#f2f2f2" stroke-width="1"/><text x="192" y="267" fill="#f2f2f2" font-size="14" font-weight="600" font-family="inherit" text-anchor="middle">A .gdb folder</text><text x="192" y="285" fill="#f2f2f2" font-size="14" font-weight="600" font-family="inherit" text-anchor="middle">or a loose .tif?</text>
  <polygon points="192,360 316,408 192,456 68,408" fill="#1c1c1c" stroke="#f2f2f2" stroke-width="1"/><text x="192" y="403" fill="#f2f2f2" font-size="14" font-weight="600" font-family="inherit" text-anchor="middle">A .kmz, .json or</text><text x="192" y="421" fill="#f2f2f2" font-size="14" font-weight="600" font-family="inherit" text-anchor="middle">zipped shapefile?</text>
  <polygon points="192,496 316,544 192,592 68,544" fill="#1c1c1c" stroke="#f2f2f2" stroke-width="1"/><text x="192" y="539" fill="#f2f2f2" font-size="14" font-weight="600" font-family="inherit" text-anchor="middle">In the Data</text><text x="192" y="557" fill="#f2f2f2" font-size="14" font-weight="600" font-family="inherit" text-anchor="middle">format list?</text>
  <rect x="360" y="100" width="264" height="72" rx="20" fill="rgba(242,242,242,0.05)" stroke="rgba(242,242,242,0.34)" stroke-width="1"/><text x="492" y="122" fill="#f2f2f2" font-size="14" font-weight="600" font-family="inherit" text-anchor="middle">Connect it as WMS</text><text x="492" y="142" fill="#a3a3a3" font-size="12" font-family="inherit" text-anchor="middle">use its https:// GetCapabilities URL</text><text x="492" y="158" fill="#a3a3a3" font-size="12" font-family="inherit" text-anchor="middle">then pick the layers to import</text>
  <rect x="360" y="236" width="264" height="72" rx="20" fill="rgba(242,242,242,0.05)" stroke="rgba(242,242,242,0.34)" stroke-width="1"/><text x="492" y="258" fill="#f2f2f2" font-size="14" font-weight="600" font-family="inherit" text-anchor="middle">Zip it first</text><text x="492" y="278" fill="#a3a3a3" font-size="12" font-family="inherit" text-anchor="middle">.gdb folder → .gdb.zip</text><text x="492" y="294" fill="#a3a3a3" font-size="12" font-family="inherit" text-anchor="middle">loose .tif or .tiff → .zip</text>
  <rect x="360" y="372" width="264" height="72" rx="20" fill="rgba(242,242,242,0.05)" stroke="rgba(242,242,242,0.34)" stroke-width="1"/><text x="492" y="394" fill="#f2f2f2" font-size="14" font-weight="600" font-family="inherit" text-anchor="middle">Unzip or rename it first</text><text x="492" y="414" fill="#a3a3a3" font-size="12" font-family="inherit" text-anchor="middle">.kmz → .kml, .json → .geojson</text><text x="492" y="430" fill="#a3a3a3" font-size="12" font-family="inherit" text-anchor="middle">zipped shapefile → its four files</text>
  <rect x="360" y="508" width="264" height="72" rx="20" fill="rgba(242,242,242,0.05)" stroke="rgba(242,242,242,0.34)" stroke-width="1"/><text x="492" y="530" fill="#f2f2f2" font-size="14" font-weight="600" font-family="inherit" text-anchor="middle">Convert it first</text><text x="492" y="550" fill="#a3a3a3" font-size="12" font-family="inherit" text-anchor="middle">for example .xlsx → .csv,</text><text x="492" y="566" fill="#a3a3a3" font-size="12" font-family="inherit" text-anchor="middle">.gpx or .gpkg → .geojson</text>
  <rect x="62" y="632" width="260" height="60" rx="20" fill="rgba(255,122,77,0.10)" stroke="#ff7a4d" stroke-width="1.4"/>
  <text x="192" y="657" fill="#f2f2f2" font-size="14" font-weight="600" font-family="inherit" text-anchor="middle">Upload it as it is</text>
  <text x="192" y="675" fill="#a3a3a3" font-size="12" font-family="inherit" text-anchor="middle">pick the format, then add the files</text>
</svg>
<!-- /diagram:supported-formats-flow -->

## Vector formats

| Format | Required extensions | Upload method | Notes |
| --- | --- | --- | --- |
| Shapefile | `.shp`, `.shx`, `.dbf`, `.prj` | All four files together (not zipped) | All four files are required. The `.prj` provides the coordinate system. |
| GeoJSON | `.geojson` | Single file | Expected coordinate system is `EPSG:4326` (WGS84). |
| KML | `.kml` | Single file | KMZ archives are not accepted in the `Import data` page. |
| MapInfo TAB | `.tab`, `.dat`, `.id`, `.map` | All four files together | Dropdown is labelled `Tab`. |
| Esri File Geodatabase | `.gdb.zip` | Single zipped archive | The `.gdb` directory must be zipped before upload. Dropdown is labelled `Geo database`. |

## Raster formats

| Format | Required extensions | Upload method | Notes |
| --- | --- | --- | --- |
| GeoTIFF | `.zip` | Single zipped archive | The GeoTIFF must be inside a `.zip`; loose `.tif` files are not accepted by the `Import data` page. |

## Tabular formats

| Format | Required extensions | Upload method | Notes |
| --- | --- | --- | --- |
| CSV | `.csv` | Single file | UTF-8 encoded. Must include a longitude column (`Longitude`, `Lon`, `Long`, `Lng`, `X`, or `Longtitude`) and a latitude column (`Latitude`, `Lat`, or `Y`), case-insensitive. Address geocoding is not performed. |

## Live services

| Service | What you provide | Notes |
| --- | --- | --- |
| WMS | An HTTPS GetCapabilities URL | The URL must use `https://`. After connecting, you select which layers to import. |

## File size limit

Each file you add can be 5 GB or smaller, including each shapefile file.

## Storage allowance by plan

|  | Storage included | Add-ons |
| --- | --- | --- |
| `Business` | 4 GB | Not available — upgrade to `Enterprise` to add more |
| `Enterprise` | 8 GB | 50 GB add-on increments |
| `Agency` | 16 GB | 50 GB add-on increments |

See current plan allowances and upgrades on [MangoMap pricing](https://mangomap.com/pricing). Storage is checked when you start an upload. If your account is at the limit, the upload is blocked and a `Storage limit reached` dialog appears. See [Storage limit reached when importing](/docs/importing-data/troubleshoot-storage-limit).

## Coordinate systems

| What | Behaviour |
| --- | --- |
| Input coordinate system | Detected automatically from the file. |
| If a vector layer has no detected coordinate system | Processing treats its coordinates as `EPSG:4326` (WGS84). The Shapefile form still requires a `.prj` file before it can be submitted. |
| Unsupported coordinate systems | Processing fails with `Unsupported coordinate system <name>. Please reproject your dataset to a common CRS like EPSG:4326 (WGS84) or EPSG:3857 (Web Mercator).` See [Unsupported coordinate system](/docs/importing-data/troubleshoot-unsupported-crs). |

## What's not supported

These formats are sometimes expected but are not accepted by the `Import data` page:

- KMZ archives
- GPX
- GeoPackage (`.gpkg`)
- GML
- Loose GeoTIFFs (`.tif`/`.tiff` outside a `.zip`)
- Excel (`.xlsx`) — convert to CSV first
- Address-only CSVs (no geocoding step in this flow)

For more on how data moves from upload to map, see [How importing data works in MangoMap](/docs/importing-data/concepts-importing-data).
