GeoTIFF and Cloud Optimized GeoTIFF for Dummies

Another article in my “For Dummies” series, without a background in geospatial data and geosciences, this is how I try to make sense of the available geospatial data formats.

GeoTIFF File Format

GeoTIFF is based on the TIFF format and is used as an interchange format for georeferenced raster imagery. The Open Geospatial Consortium (OGC) published version 1.1 of the OGC GeoTIFF Standard in September, 2019.

GeoTIFF file format is in widespread use worldwide and there are strong software support in the form of open source library: libgeotiff and Geospatial Data Abstraction Library (GDAL) package. Specifically the Earth science cloud computing community has developed a means of optimizing GeoTIFF files for use in cloud computing workflows. Cloud Optimized GeoTIFF (COG) files adhere to the GeoTIFF specification so all prior software and workflows can still be used with the COG files.

GeoTIFF format is not suitable for every data type, it is widely used as a distribution format for satellite and aerial photography imagery. GeoTIFF is not suitable for storing complex multi-dimensional data structures nor for storing vector data with many attributes. For these multi-dimensional data, netCDF is widely used within the geospatial data science community and working groups.

Working with Cloud Optimized GeoTIFF in Earth Engine

Earth Engine can load images from Cloud Optimized GeoTIFF (COG) stored in Google Cloud Storage. An example of readily available COG dataset in Google Cloud Storage is the public Landsat dataset. By using Google Cloud Storage, we can store any ee.Image from any Earth Engine operation, but also load COG data hosted on a GCS bucket. In order to utilize this feature, users need to have access to both Google Earth Engine and Google Cloud Platform to create new project and create a Google Cloud Storage within the project to be accessed by the Google user / Service Account.

COG data from external source can also be loaded by Google Earth Engine. As an example, with Python, rio-cogeo library can be used to convert a traditional GeoTIFF to a Cloud Optimized GeoTIFF format, once done, this file can be uploaded to Google Cloud Storage bucket for further analyses in the Google Earth Engine.


  1. GeoTIFF | Earthdata (
  2. Cloud Optimized GeoTIFF (
  3. Cloud GeoTiff Backed Earth Engine Assets  |  Google Earth Engine

Published by josefmtd

Electronics Engineer

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: