For a long time, we told ourselves a comforting lie:
“It’s just a file.”
The file lived in a folder.
The folder lived on a server.
The name of the file basically told you what it was.
And if it didn’t, you could always ask the person who created it.
Which, of course, worked great — right up until it didn’t.
COG and STAC didn’t emerge because the geospatial community suddenly discovered better compression or cooler acronyms.
They emerged because scale finally made the real system visible.
And that system was never “files.”
It was assumptions.
In small systems, filenames carry an incredible amount of unspoken meaning.
final_v3_reprojected_fixed.tif
Everyone nods.
Everyone understands.
Everyone agrees to never talk about it again.
At small scale, this works because:
- The number of files is manageable
- The number of producers is small
- The workflows are tribal knowledge
- The humans are still reachable
At large scale, filenames stop being metadata and start being folklore.
And folklore is not queryable.
Object Storage Broke the Filesystem Fantasy
The moment data moved into object storage, a lot of quiet assumptions died.
There are no directories — only prefixes.
There is no locking.
There is no “nearby.”
There is no guarantee that “opening a file” means anything at all.
Object storage doesn’t care about your workflows.
It only cares about requests.
Which means access patterns suddenly matter more than file formats.
And that’s the moment “just download it” stopped being a strategy.
What We Mean by COG
A Cloud Optimized GeoTIFF (COG) is a GeoTIFF structured so that clients can read only the parts they need using HTTP range requests, without downloading the entire file.
If that sounds obvious now, it’s because scale already won.
The canonical reference is here:
Cloud Optimized GeoTIFF (COG) specification
COGs force you to answer uncomfortable questions up front:
- Can this data be accessed without reading all of it?
- Can multiple consumers read it safely at the same time?
- Can processing be parallelized without coordination?
COG is not just a raster format.
It’s a declaration that:
“This data will be accessed remotely, concurrently, and incrementally — and we accept that reality.”
That’s a workflow decision masquerading as a file format.
What We Mean by STAC
STAC (SpatioTemporal Asset Catalog) is a specification for describing, indexing, and discovering geospatial assets using explicit, machine-readable metadata.
In other words: it’s what happens when “just put it in a folder” finally fails.
The specification lives here:
STAC Specification
STAC exists because once you have enough data, the hard problems are no longer:
- Storage
- Bandwidth
- File formats
They’re:
- Discovery
- Lineage
- Context
- Fitness for use
STAC forces explicit answers to questions that small systems avoid by relying on memory, documentation, or “ask Bob.”
And STAC does something subtle but important:
It admits that you do not know your data by heart anymore.
That admission is the beginning of a scalable system.
This Is Not a Stack. It’s a Contract.
The Contract
COG + STAC + object storage is often described as a “modern geospatial stack.”
That undersells it.
What it really is:
- A contract between producers and consumers
- A contract about access patterns
- A contract about metadata
- A contract about scale
COGs promise: “You can read me efficiently without coordination.”
STAC promises: “You can discover and understand me without tribal knowledge.”
Object storage promises: “I will store this forever, cheaply, and without caring who you are.”
None of these are accidental properties.
They are explicit responses to systems that failed under scale.
The Real Lesson
Cloud-native does not mean “we put it in the cloud.”
It means:
- Assumptions are explicit
- Workflows are visible
- Metadata is mandatory
- Humans are no longer the glue
COG + STAC didn’t win because they’re elegant.
They won because they’re honest.
And honesty turns out to be a surprisingly effective scaling strategy.

Comments
Nothing yet. Say the first thing.
Sign in to join the conversation.