PMTiles is a single-file archive format for tiled map data that enables serverless map applications hosted on static storage platforms.
The problem PMTiles solves is the need to serve map tiles without maintaining a custom backend or paying for third-party tile services. It packages all tile data into a single file that can be stored on commodity cloud storage like S3, with clients fetching only the tiles they need through range requests. This approach eliminates server infrastructure while keeping costs minimal and maintenance-free.
Teams should adopt PMTiles for web mapping projects where serverless deployment fits the use case. It works well for applications that can tolerate static tile generation and suits scenarios where hosting tiles on S3 or similar storage is preferable to running a tile server. The project provides client libraries for JavaScript environments including Leaflet and MapLibre GL JS, as well as OpenLayers support. Go and Python implementations are available for server-side work. The tool compares itself to Cloud Optimized GeoTIFFs as an alternative approach to efficient geospatial data distribution.
The project maintains a formal specification document and provides reference implementations across multiple languages. Development includes active support for serverless deployment patterns, with dedicated implementations for AWS Lambda and Cloudflare Workers. The tool includes a web-based viewer for inspecting and previewing archives both locally and remotely, and the project publishes command-line utilities for converting existing tile formats and uploading archives to cloud storage.