Cloud Optimized GeoTIFF (COG) has become a key format for distributing geospatial rasters over the Internet. Unlike standard GeoTIFF, it allows GIS software such as QGIS to read only the necessary portions of a file stored in the cloud, which significantly improves performance.
It allows users to quickly access large images without having to download the entire file.
But to understand its benefits, we must first consider the limitations of standard GeoTIFF.
1. Why the Traditional GeoTIFF Has Its Limitations
GeoTIFF is a widely used format for storing:
- satellite images
- orthophotos
- digital elevation models
- raster maps
However, when a file is stored on a remote server, a problem arises.
Suppose we have a 3 GB raster.
If software wants to display only a small area, it often has to:
- download a large portion of the file
- read the necessary blocks
- reconstruct the image.
This works well locally, but becomes inefficient when the data is accessible via HTTP or in the cloud.
This becomes problematic when the data is stored:
- on a remote server
- in cloud storage
- or accessible via HTTP
Result:
- slowness
- high bandwidth consumption
- poor user experience.
2. The Concept of Cloud Optimized GeoTIFF
Cloud Optimized GeoTIFF (COG) is a specific format for GeoTIFF files that allows users to read only the necessary parts of the file without downloading the entire file.
Cloud Storage
┌─────────────────┐
│ COG file │
│ │
│ ┌────┬────┬────┐
│ │T1 │T2 │T3 │
│ ├────┼────┼────┤
│ │T4 │T5 │T6 │
│ ├────┼────┼────┤
│ │T7 │T8 │T9 │
│ └────┴────┴────┘
│ │
│ Overviews │
└─────────────────┘
▲
│
HTTP Range Request
│
▼
QGIS / Client
télécharge uniquement
les tuiles nécessaires
The principle is based on two elements:
Internal tiling
The raster is stored as internal tiles.
This allows only the relevant blocks to be read.
Example:
if a small area is displayed, the software downloads only the corresponding tiles.
Internal pyramids (overviews)
The file contains multiple resolutions of the image.
This allows for:
- fast low-resolution previews
- without having to recalculate the resolution.
A structure optimized for HTTP Range Requests
The key feature of COG is the order in which data is stored in the file.
It is organized so that software can use partial HTTP requests (HTTP Range Requests).
This allows:
- requesting only specific parts of the file
- without downloading the rest.
3. Why it has become a standard in geospatial
COG is now widely used in modern geospatial infrastructures.
Its advantages:
✔ fast access to remote data
✔ cloud-compatible (S3, Azure, GCS)
✔ progressive reading
✔ simple format (always a GeoTIFF)
Many data catalogs now use COGs:
- satellite data
- digital elevation models
- orthophotos
4. Comparison with Other Raster Approaches
| Method | Principle | Advantages | Limitations |
|---|---|---|---|
| Classic GeoTIFF | Monolithic raster | simple | Inefficient at a distance |
| Cloud Optimized GeoTIFF | Structured GeoTIFF for partial reading | Fast access via HTTP | Requires proper creation |
| Web tiles (XYZ) | Split into thousands of images | Very fast | More complex management |
COG falls somewhere in between:
- simplicity of a single file
- performance comparable to web tiles
5. Example of Use in QGIS
QGIS directly supports COGs.
You can load a remote raster via a URL.
For example:
https://download.osgeo.org/geotiff/samples/usgs/o41078a5.tif
QGIS will:
- read the file header
- identify the necessary tiles
- download only those portions.
The raster can remain entirely on the remote server.
In QGIS:
- Layer Menu
- Add Layer
- Add Raster Layer

6. How to Create a Cloud-Optimized GeoTIFF
Creating a COG is very simple with GDAL.
Basic command:
gdal_translate input.tif output_cog.tif -of COG
Example with compression:
gdal_translate input.tif output_cog.tif \
-of COG \
-co COMPRESS=DEFLATE \
-co BLOCKSIZE=512
Common options:
| Option | Description |
|---|---|
| COMPRESS | compression (LZW, DEFLATE, ZSTD) |
| BLOCKSIZE | Tile size |
| RESAMPLING | method for pyramids |
More complete example:
gdal_translate input.tif output_cog.tif \
-of COG \
-co COMPRESS=DEFLATE \
-co BLOCKSIZE=512
7. How to verify that a file is a valid COG
A GeoTIFF is not necessarily a valid COG.
You can verify the structure using:
gdalinfo fichier.tif
or using the tool:
cog_validate fichier.tif
This tool checks:
- the internal order of the blocks
- the presence of overviews
- the file’s optimized organization.
8. When should you use COG?
COG is particularly useful for:
- online data catalogs
- satellite imagery
- DTMs
- orthophotos
- open data infrastructures
However, it is not necessarily useful for:
- small rasters
- files used only locally.
9. A key element of modern geospatial architectures
COG is now a central component of geospatial cloud architectures.
It is often used with:
- STAC (data catalogs)
- Tile servers
- Geospatial APIs
It allows direct access to rasters without a raster database.
10. The Connection to STAC
COG is often used with STAC (SpatioTemporal Asset Catalog).
STAC enables the cataloging of geospatial data in the cloud.
In this case:
- STAC describes the metadata
- the rasters are stored as COG
This combination has become a widely used architecture for satellite data.
Conclusion
Cloud Optimized GeoTIFF is not a new format but an optimized version of GeoTIFF.
This optimization enables:
- fast reading
- efficient remote access
- easy integration into cloud architectures.
It is now one of the most widely used raster formats for the distribution of geospatial data.
A Cloud-Optimized GeoTIFF allows you to transform a simple raster file into a remotely accessible data service. GIS software downloads only the necessary portions of the file, making it possible to view very large rasters without the need for complex server infrastructure.