Hubbry Logo
Tiled web mapTiled web mapMain
Open search
Tiled web map
Community hub
Tiled web map
logo
8 pages, 0 posts
0 subscribers
Be the first to start a discussion here.
Be the first to start a discussion here.
Tiled web map
Tiled web map
from Wikipedia
An exaggeration of a tiled web map, in this case the default OpenStreetMap style near Melbourne, Australia. Tiled web maps are normally displayed with no gap between tiles.

A tiled web map or tile map (also known as slippy map[1] in OpenStreetMap), is a web map displayed by seamlessly joining dozens of individually requested data files, called "tiles". It is the most popular way to display and navigate maps, replacing other methods such as Web Map Service (WMS) which typically display a single large image, with arrow buttons to navigate to nearby areas. Google Maps was one of the first major mapping sites to use this technique. The first tiled web maps used raster tiles, before the emergence of vector tiles.

There are several advantages to tiled maps. Each time the user pans, most of the tiles are still relevant, and can be kept displayed, while new tiles are fetched. This greatly improves the user experience, compared to fetching a single map image for the whole viewport. It also allows individual tiles to be pre-computed, a task easy to parallelize. Also, displaying rendered images served from a web server is less computationally demanding than rendering images in the browser, a benefit over technologies such as Web Feature Service (WFS). While many map tiles are in raster format (a bitmap file such as PNG or JPEG), the number of suppliers of vector tiles is growing. Vector tiles are rendered by the client browser, which can thus add a custom style to the map. Vector map tiles may also be rotated separately from any text overlay so that the text remains readable.

Defining a tiled web map

[edit]
XYZ Tiles coordinate numbers

Properties of tiled web maps that require convention or standards include the size of tiles, the numbering of zoom levels, the projection to use, the way individual tiles are numbered or otherwise identified, and the method for requesting them.

Most tiled web maps follow certain Google Maps conventions:

  • Tiles are 256x256 pixels
  • At the outer most zoom level, 0, the entire world can be rendered in a single map tile.
  • Each zoom level doubles in both dimensions, so a single tile is replaced by 4 tiles when zooming in. This means that about 22 zoom levels are sufficient for most practical purposes.
  • The Web Mercator projection is used, with latitude limits of around 85 degrees.

The de facto OpenStreetMap standard, known as Slippy Map Tilenames[2] or XYZ,[3] follows these and adds more:

  • An X and Y numbering scheme
  • PNG images for tiles
  • Images are served through a Web server, with a URL like http://.../Z/X/Y.png, where Z is the zoom level, and X and Y identify the tile.

Tile numbering schemes

[edit]

There are three main numbering schemes in use:[4]

  • Google Maps / OpenStreetMap: (0 to 2zoom-1, 0 to 2zoom-1) for the range (−180, +85.0511) - (+180, −85.0511)
  • Tile Map Service: (0 to 2zoom-1, 2zoom-1 to 0) for the range (−180, +85.0511) - (+180, −85.0511). (That is, the same as the previous with the Y value flipped.)
  • QuadTrees, used by Microsoft.

Standards

[edit]

Several standards exist:

Client libraries

[edit]

To display a tiled map in a browser usually requires the support of a web mapping framework. This framework handles the retrieval of tiles, display, caching, and user navigation. Popular frameworks for tiled maps include Google Maps API, OpenLayers and Leaflet.

References

[edit]
[edit]
Revisions and contributorsEdit on WikipediaRead on Wikipedia
from Grokipedia
A tiled web is an interactive digital mapping technique that displays geographic on the web by dividing the into a grid of small, square tiles—typically 256×256 pixels—pre-rendered as raster images or vector and dynamically loaded from a server based on the user's , zoom level, and panning actions, enabling efficient and for large datasets. This approach was pioneered by upon its public launch on February 8, 2005, developed by brothers Lars and Jens Rasmussen through their company Where 2 Technologies, which acquired in 2004; it marked a shift from static, reload-heavy web maps to fluid, Ajax-based interactions that transformed online geographic visualization. Prior efforts, such as early GIS tiling in the 1990s, laid groundwork, but 's implementation popularized the "slippy map" interface now ubiquitous in web applications. Tiled web maps operate on a structure of zoom levels, where each level doubles the resolution (e.g., level 0 shows the full in one tile, while higher levels like 18 or 23 reveal street-level detail), using the (EPSG:3857) to flatten the Earth's curved surface into a planar grid for consistent tiling across providers. Tiles are requested via standardized templates, such as {z}/{x}/{y}.[png](/page/PNG) for raster formats or Mapbox Vector Tiles (MVT) for vector ones, with coordinates calculated from / to ensure alignment; this allows browsers to cache tiles and fetch only visible portions, reducing bandwidth and latency. Key standards from the Open Geospatial Consortium (OGC) include the (WMTS), which defines protocols for accessing pre-generated georeferenced tiles over HTTP, and the Two Dimensional Tile Matrix Set (TMS), which specifies tiling schemes for interoperability in geospatial applications. Raster tiles deliver static imagery (e.g., or ) suited for basemaps, while enable dynamic styling and interactivity on the client side using libraries like Leaflet or GL JS, supporting advanced features such as 3D extrusion and real-time updates. These elements make tiled web maps essential for services like , which employs a quadkey system for tile addressing, and platforms handling billions of geospatial queries daily.

Fundamentals

Definition and Purpose

A tiled web map is a method for rendering interactive geographic maps in web browsers by dividing the Earth's surface into a grid of small, fixed-size tiles—typically 256×256 pixels—pre-rendered as raster images (e.g., or ) or vector data and dynamically loaded and assembled as users interact with the map. This approach, also known as a slippy map, allows for seamless display of large-scale without loading entire images at once, instead fetching only the tiles corresponding to the current . The primary purpose of tiled web maps is to enable efficient delivery and rendering of map data over the , particularly for applications requiring real-time interaction, such as systems, geographic systems (GIS), and location-based services. By loading only visible tiles on demand, this technique minimizes bandwidth consumption, reduces latency, and supports for global datasets, making it feasible to handle vast amounts of geospatial without overwhelming client devices or servers. Key benefits include support for smooth zooming and panning through multi-level tile pyramids, which provide progressively detailed views at different scales, and the ability to overlay vector data for enhanced , such as custom markers or routes. This facilitates global coverage by pre-generating or caching in a standardized grid, using tile numbering schemes as a mechanism for precise retrieval. Tiled web maps have been foundational to services like , introduced in 2005 to revolutionize online navigation with its tile-based slippy interface, and , which adopted the approach from 2006 onward to deliver crowdsourced mapping data efficiently.

Historical Development

The roots of tiled web mapping technology trace back to pre-web geographic information systems (GIS) developed in the 1970s, which laid the groundwork for spatial data handling and visualization. Pioneering efforts included the Canada Geographic Information System (CGIS), operational from 1971, which enabled land-use analysis through vector data overlays, and the ODYSSEY GIS at Harvard Laboratory, initiated in the mid-1970s for vector-based polygon processing. These systems emphasized computational mapping but were limited to mainframe environments without web integration. By the 1990s, the rise of the World Wide Web introduced early web GIS using static images embedded in HTML pages, often generated server-side with tools like Esri's ArcIMS or MapServer. A seminal example was the Xerox PARC Map Viewer in 1993, the first interactive web-based map, which rendered GIF images dynamically via Perl scripts to support basic querying and zooming. These static approaches, however, suffered from slow reloads and limited interactivity, setting the stage for tiled innovations. The pivotal shift to dynamic tiled web mapping occurred in the mid-2000s, driven by advancements in web technologies. The introduction of Asynchronous JavaScript and XML (AJAX) in 2005 enabled seamless client-server communication, allowing maps to load image tiles incrementally without full page refreshes. This technique was exemplified by the launch of in February 2005, which divided maps into small raster tiles (typically 256x256 pixels) served over HTTP, revolutionizing user experience with smooth panning and zooming known as "slippy maps." Microsoft Virtual Earth, released in 2005 and updated in 2006, further popularized the slippy map concept by integrating aerial imagery with tiled rendering, influencing competitors to adopt similar architectures. Concurrently, (OSM), founded in 2004, embraced tiled rendering in 2006 using early tile schemes later formalized in the Tile Map Service (TMS) specification to support crowdsourced data visualization, fostering open-source alternatives to proprietary systems. In the 2010s, tiled evolved from predominantly raster-based tiles to hybrid raster-vector approaches, enhancing flexibility and . Raster tiles dominated the 2000s for their simplicity in styled images, but —encoding raw geometric in formats like Mapbox Vector Tile (introduced around 2010)—gained traction for enabling client-side styling and interactivity via . This transition supported scalable, customizable maps, as seen in platforms like and adopting vector rendering. The proliferation of access post-2010, fueled by smartphones and responsive design, further drove responsive tiling to optimize bandwidth and rendering on varied devices, reducing loads for on-the-go users. Standardization efforts by the (W3C) in the 2010s, including the Maps for HTML Community Group chartered in 2013, aimed to integrate native map elements into , promoting interoperable tiled map widgets without proprietary plugins. In the 2020s, vector tiles became the predominant format for tiled web maps, offering superior performance and customization. Major platforms, including , deployed vector tiles in July 2025, while collaborative initiatives like Overture Maps integrated open datasets into tiled formats to support advanced geospatial applications.

Technical Components

Tile Generation Process

The tile generation process for tiled web maps involves preparing geographic from vector or raster sources into discrete tiles, which can be either raster images or vector-encoded data, typically using specialized map servers or libraries. This can occur through pre-generation, where tiles are computed and stored in advance for static maps with infrequent updates, or on-the-fly rendering, which dynamically produces tiles in response to user requests for more current or customized . Pre-generation is common for base layers like those from , enabling faster client-side loading, while on-the-fly approaches suit dynamic content such as real-time overlays. The process for raster tiles follows a series of key steps to transform raw data into usable image tiles. First, data ingestion loads sources such as shapefiles, files, or spatial databases like , which store vector features (e.g., roads, buildings) or raster imagery (e.g., satellite photos). Second, the data undergoes projection transformation, often converting to Web Mercator (EPSG:3857) to align with standard web map schemes. Third, rasterization renders the projected data into images at multiple zoom levels, applying styling rules for symbology, labels, and colors to simulate different scales—from global overviews at low zoom to street-level detail at high zoom. Finally, the rendered images are divided into a grid of fixed-size tiles, usually 256x256 pixels, and stored in formats like hierarchical directories or single-file databases. For , the process differs by avoiding rasterization and instead focusing on partitioning and encoding for client-side rendering. After ingestion and projection transformation similar to raster tiles, vector features are generalized or simplified based on zoom levels to manage complexity and file size. The is then sliced into spatial extents corresponding to the tile grid, with features within each extent encoded into a binary format such as Mapbox Vector Tiles (MVT), which uses to store geometries, attributes, and metadata efficiently. This enables dynamic styling, interactivity, and scalability without pre-rendering images. Libraries such as Mapnik and GDAL are widely used for raster tile tasks, with Mapnik excelling in vector rendering through XML-based stylesheets that define layers and visual rules, and GDAL handling raster processing via utilities like gdal2tiles for efficient pyramid generation across zoom levels. For vector tiles, tools like Tippecanoe convert GeoJSON or other vector sources into MVT tiles, while Planetiler generates large-scale tilesets from OpenStreetMap data. Output tiles are typically compressed images in PNG or JPEG formats for raster tiles to balance quality and file size, supporting transparency in PNG for overlay compatibility, whereas vector tiles use compact binary formats like .pbf. For storage, the MBTiles specification packages tiles into a single SQLite database file, facilitating offline access and efficient querying by zoom, column, and row coordinates, and supports both raster and vector tiles. Generating tiles for large-scale coverage presents significant challenges, particularly with global datasets that can require billions of tiles—for instance, covering at 20 zoom levels exceeds 10^12 tiles, demanding substantial computational resources and storage. Handling such volumes often involves distributed processing or cloud-based pipelines to manage time and cost, while updating tiles for dynamic like or requires strategies to invalidate and regenerate only affected regions without full recomputation.

Coordinate Systems and Projections

Tiled web maps predominantly employ the , designated as EPSG:3857, which serves as the due to its seamless integration with models and straightforward mathematical operations that facilitate uniform square tiling across global extents. This projection, also known as Pseudo-Mercator or , treats the Earth as a with a of approximately 6,378,137 meters, enabling efficient rendering of web-based maps by services such as and . Its conformality preserves local shapes and angles, making it suitable for interactive navigation, though it introduces scale distortions that increase toward the poles. In this coordinate system, geographic coordinates in latitude (φ) and longitude (λ) are transformed into planar pixel coordinates for tiling purposes, primarily using spherical Mercator formulas to support global views without singularities at the equator. The easting (x) coordinate is derived simply as x=Rλx = R \cdot \lambda, where RR is the Earth's spherical radius and λ\lambda is the longitude in radians; the northing (y) follows the Mercator-specific formula y=Rln(tan(π4+ϕ2))y = R \cdot \ln\left(\tan\left(\frac{\pi}{4} + \frac{\phi}{2}\right)\right), projecting the spherical surface onto a plane. These transformations yield meters-based coordinates ranging from approximately -20,037,508 to +20,037,508 in both x and y directions, covering the valid extent from 85.051° N to 85.051° S latitude. Pixel coordinates within the map view are then scaled relative to the tile grid, allowing seamless subdivision for rendering. Zoom levels in tiled web maps operate on discrete scales that progressively refine detail, with each increment in zoom level zz doubling the resolution by quadrupling the number of tiles—resulting in 2z2^z tiles along each side of the global grid for standard 256×256 tiles. The ground resolution, or meters per , at a given varies longitudinally and is calculated as resolution=cos(ϕ)2π[R](/page/R)2562z\text{resolution} = \frac{\cos(\phi) \cdot 2\pi [R](/page/R)}{256 \cdot 2^z}, where ϕ\phi is in radians; at the and zoom 0, this yields about 156,543 meters per , halving with each zoom increase. This hierarchical structure ensures consistent -to-world scaling, with numbering schemes indexing these coordinates to enable efficient retrieval and caching of specific sections. Despite its prevalence, the exhibits significant limitations, particularly severe area distortions near the poles where high-latitude regions like appear disproportionately enlarged compared to equatorial areas. The projection's validity is restricted to latitudes below approximately ±85°, beyond which tiles become infinitely stretched, rendering polar regions impractical for accurate representation in standard tiled schemes. For non-interactive applications or thematic mapping requiring minimal distortion, alternatives such as the Plate Carrée ( under EPSG:4326 are preferred, as they maintain equal degrees per pixel across the globe without meridional convergence, though they sacrifice shape preservation.

Tile Numbering Schemes

The XYZ numbering scheme is the de facto standard for identifying tiles in web mapping services, employing three integer coordinates: z for zoom level, x for the horizontal column index, and y for the vertical row index. This scheme divides the world map into a grid where, at zoom level z, the total number of tiles is 2z2^z in both the x and y dimensions, covering the full extent from longitude -180° to +180° and latitude approximately -85.0511° to +85.0511°. The origin (0,0) is positioned at the northwest corner of the map, with x values increasing eastward (rightward) and y values increasing southward (downward), aligning with typical screen coordinate systems. To derive tile coordinates from geographic longitude (\lon\lon) and latitude (\lat\lat) in degrees, the coordinates are first converted to radians and mapped using the Spherical (EPSG:3857). The x coordinate is calculated as: x=\lon+180360×2zx = \left\lfloor \frac{\lon + 180}{360} \times 2^z \right\rfloor The y coordinate uses the inverse Mercator formula: y=1ln(tan(\lat)+1cos(\lat))π2×2zy = \left\lfloor \frac{1 - \frac{\ln\left(\tan(\lat) + \frac{1}{\cos(\lat)}\right)}{\pi}}{2} \times 2^z \right\rfloor
Add your contribution
Related Hubs
User Avatar
No comments yet.