Xee: Xarray + Google Earth Engine

May 21, 2026 · View on GitHub

⚠️ Breaking Change in v0.1.0

v0.1.0 includes a major refactor with breaking API changes.

Xee: Xarray + Google Earth Engine

Xee Logo

Xee is an Xarray backend for Google Earth Engine. Open ee.Image / ee.ImageCollection objects as lazy xarray.Datasets and analyze petabyte-scale Earth data with the scientific Python stack.

image image Conda Recipe image Conda Downloads

Install

For the latest v0.1.0 prerelease:

pip install --upgrade --pre xee

For all installation paths (including stable line and conda), see docs/installation.md.

Minimal example

import ee
import xarray as xr
from xee import helpers

# Authenticate once (on a persistent machine):
#   earthengine authenticate

project = 'PROJECT-ID'  # Set your Earth Engine registered Google Cloud project ID
# Initialize (high-volume endpoint recommended for reading stored collections)
ee.Initialize(project=project, opt_url='https://earthengine-highvolume.googleapis.com')

# Open a dataset by matching its native grid
ic = ee.ImageCollection('ECMWF/ERA5_LAND/MONTHLY_AGGR')
grid = helpers.extract_grid_params(ic)
ds = xr.open_dataset(ic, engine='ee', **grid)
print(ds)

Next steps:

Features

  • Lazy, parallel pixel retrieval through Earth Engine
  • Flexible output grid definition (fixed resolution or fixed shape)
  • CF-friendly dimension order: [time, y, x]
  • Plays nicely with Xarray, Dask, and friends

Community & Support

Contributing

See Contributing and sign the required CLA. For local development, we recommend the Pixi environments defined in this repository for reproducible test and docs runs.

License

Apache 2.0

SPDX-License-Identifier: Apache-2.0

This is not an official Google product.