The SpatioTemporal Asset Catalog (STAC) is a community-driven specification for organizing and discovering geospatial data, particularly satellite imagery and earth observation products. By providing a common JSON-based language for describing spatiotemporal assets, STAC has become a foundational component of the cloud-native geospatial ecosystem, enabling efficient search and access across data providers, platforms, and tools.
Background
The geospatial community's transition to cloud computing in the mid-2010s created an urgent need for standardized metadata that could support large-scale, programmatic discovery of earth observation data. Existing standards like ISO 19115 were comprehensive but complex, and the growing volume of satellite imagery required lightweight, machine-readable catalogs. STAC emerged around 2018 from discussions among geospatial data providers, cloud platform operators, and open-source developers, many associated with Radiant Earth Foundation and the broader cloud-native geospatial community.
The specification was developed openly on GitHub with a philosophy of starting simple and extending incrementally. STAC 1.0.0 was released as a stable specification, and the community has since progressed to version 1.1.0.
Purpose and Scope
STAC provides a standardized way to describe geospatial data assets so that they can be more easily indexed, discovered, and accessed. The specification defines four semi-independent components:
| Component | Description |
|---|---|
| STAC Item | A GeoJSON Feature with additional fields describing a spatiotemporal asset |
| STAC Catalog | A simple JSON structure that links to Items and other Catalogs |
| STAC Collection | An extension of Catalog with additional metadata about a group of Items |
| STAC API | A RESTful API specification for searching and serving STAC metadata |
Each STAC Item describes a single spatiotemporal asset (such as a satellite scene) with its spatial footprint (geometry), temporal extent, links to the actual data files, and descriptive properties. The use of GeoJSON as the base format ensures broad compatibility with existing geospatial tools.
Extensions
STAC's modular extension system allows communities to add domain-specific metadata without modifying the core specification. Common extensions include:
- Electro-Optical (EO) for optical satellite imagery properties
- SAR for synthetic aperture radar metadata
- Point Cloud for lidar and similar data
- Scientific Citation for DOIs and bibliographic references
- Projection for coordinate reference system information
Extensions are maintained in a dedicated GitHub organization and follow a maturity lifecycle from proposal through pilot to stable.
Governance and Maintenance
STAC is maintained by a community of contributors coordinated through GitHub and the Cloud-Native Geospatial (CNG) Discourse forum. There is no single governing body; instead, the specification evolves through pull requests, community calls, and consensus-driven decision-making. Radiant Earth Foundation has been a key organizational supporter. The specification and all related materials are released under Creative Commons Attribution 4.0.
Notable Implementations
STAC is implemented by major earth observation data providers and platforms including Microsoft Planetary Computer, Amazon Web Services (AWS) Earth Search, Google Earth Engine, USGS/NASA Landsat and Sentinel collections, and Element 84's Earth Search. The STAC Index catalogs known public STAC endpoints. Client libraries exist in Python (pystac, pystac-client), JavaScript, and other languages. STAC Browser provides a web-based interface for navigating any STAC catalog.
Related Standards
- ISO 19115 is the comprehensive international standard for geographic metadata that STAC complements with a lighter-weight, web-native approach.
- OGC API - Records provides a broader catalog standard from the Open Geospatial Consortium.
- Cloud-Optimized GeoTIFF (COG) is the companion format specification commonly used for the data assets that STAC catalogs reference.
STAC