Vector tiles make huge maps fast while offering full design flexibility. They are the vector data equivalent of image tiles for web mapping, applying the strengths of tiling – developed for caching, scaling and serving map imagery rapidly – to vector data.
Traditionally, maps are created from image tiles. Like for instance this PNG image tile depicting the corner of lower Manhattan with roads, building footprints, and parks:
To get the underlying vector tile data that makes up this image, you can request it specifically:
http://a.tiles.mapbox.com/v4/mapbox.mapbox-streets-v7/14/4823/6160.mvt?access_token=<your access token>
As the name suggests, vector tiles contain vector data instead of the rendered image. They contain geometries and metadata – like road names, place names, house numbers – in a compact, structured format. Vector tiles are rendered only when requested by a client, like a web browser or a mobile app. Rendering happens either in the client (Mapbox GL JS, Mapbox iOS SDK, Mapbox Android SDK) or on the fly on the server (map API). The specification overview page is a great place to learn more about the Mapbox Vector Tile Specification.
Vector tiles have two important advantages over fully rendered image tiles:
- Styling - as vectors, tiles can be styled when requested, allowing for many map styles on global data
- Size - vector tiles are really small, enabling global high resolution maps, fast map loads, and efficient caching
Vector tiles are an open standard under a Creative Commons Attribution 3.0 US License. We support vector tiles across our products and there is a large list of vector tile implementation by other vendors.
Read the Mapbox Vector Tile Spec on Github and get in touch with us there with feedback and improvements.