Tile Services

The API Tile Service and Basemap Tile Service make is easy to visualize Planet imagery in desktop or web mapping applications that support either the XYZ or WMTS protocol. These services offer a low-friction way for web developers and GIS analysts to interact with, and derive value from Planet imagery without the need for further image processing.


A valid Planet account is required to access either of the tile services. Authentication is achieved by providing a valid api_key as a query parameter to all tile requests.

NOTE: Permissions Required

For all Planet tile services, you must have permission to access the specific resource requested, otherwise the tile request will return a 404 error.

Tile Service URLs

The Planet tile services serve tiles using the following domains: https://tiles0.planet.com https://tiles1.planet.com https://tiles2.planet.com https://tiles3.planet.com

Using multiple subdomains allows more tiles to load concurrently in web browsers. Libraries like OpenLayers and Leaflet provide support to easily make use of all subdomains by providing the proper string patterns.

API Tile Service

The API Tile Service acts an extension to the Planet API by allowing visualization of assets available in Planet's item archive as tiles. The tiled imagery returned by this service is a compressed version of the high-quality visual asset, making is easy to incorporate into any supporting client. At this time, only clients supporting the XYZ tile protocol are supported.

API Tile Service Request Structure


API Tile Service Request in Python with Basic HTTP Authentication

import os
# import os module to access enviornmental modules

import requests
from requests.auth import HTTPBasicAuth
# import helper functions to make Basic request to Planet API

PLANET_API_KEY = os.getenv('PL_API_KEY')
# Setup the API Key from the `PL_API_KEY` environment variable

BASE_URL = 'https://tiles{0-3}.planet.com/data/v1/{item_type}/{item_id}/{z}/{x}/{y}.png'

if PLANET_API_KEY is None:
    PLANET_API_KEY = '12345'
# pass in your API key

auth = HTTPBasicAuth(PLANET_API_KEY, '')
# HTTPBasicAuth() wants a username & password; you can pass an empty string for the password

res = requests.get(url=BASE_URL, auth=auth)

# make a request to Tile Services API and test the response
Parameter Value
item_type Item type of the item to view.
item_id Item id of the item to view.
z Tile zoom level.
x Tile row in the grid.
y Tile column in the grid

As an example, a complete URL for a tile request for the PSScene3Band item with an id of 20161221_024131_0e19 would look like the following:

API Tile Service Example


Basemap Tile Service

The Basemap Tile Service provides access to tiles for any of Planets color corrected weekly or monthly global mosaics. The Basemap Tile Service works with any client that supports either the XYZ or the WMTS protocol. A complete product specification for Planet Basemaps is available here (PDF link).

Learn More

When you're ready to dive deeper into using Planet's Tile Services, you'll find a collection of guides and tutorials on Planet School. You may be interested in this Python tutorial for visualizing imagery over time.

Rate this guide: