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.
- Migration steps: docs/migration-guide-v0.1.0.md
- Canonical install options (prerelease vs stable): docs/installation.md
Xee: Xarray + Google Earth Engine

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.
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
SPDX-License-Identifier: Apache-2.0
This is not an official Google product.