Sitemap
Python in Plain English

New Python content every day. Follow to join our 3.5M+ monthly readers.

GeoBridge: Copernicus Climate Data in QGIS, No Code Required

4 min readOct 7, 2026

--

How we built an open-source QGIS plugin that turns a plain-language question into a climate layer on your map.

Press enter or click to view image in full size

This is a short video of what geobridge can do.

Press enter or click to view image in full size

The gap between climate data and the map

Europe publishes some of the best climate data in the world, for free. The Copernicus programme, run by ECMWF, offers decades of ERA5 reanalysis, CAMS air-quality data and CEMS emergency-management products. Yet for most GIS analysts, that data is surprisingly hard to put on a map.

Today the usual route looks like this: find the right dataset among hundreds, learn its exact variable names, write Python to call an API, wrangle the result with xarray or zarr, and finally convert it into something QGIS can open. Each step is reasonable on its own. Together they are a wall between an analyst and a question as simple as “where is the city hottest in summer?”

GeoBridge is our attempt to remove that wall. It is a free QGIS plugin that lets you describe what you need in plain words, preview the answer on the map within seconds, and export analysis-ready data, without writing a single line of code.

Where it started

I built GeoBridge together with Konstantinos Fokeas, with one goal: make Copernicus climate data usable inside an everyday GIS workflow.

We recently presented the result at ECMWF’s headquarters in Reading, UK, with a live demonstration of the full workflow. We were also guided through ECMWF’s operations centre, where the forecasts and data behind GeoBridge are actually produced.

GeoBridge is an independent community project. It is not an official ECMWF product.

Getting started: the first two tabs

GeoBridge lives in one window with four tabs. This article covers the first two, API Key and Search, which take you from a fresh install to real data on your map. Browse by Variable and Time Series will get their own article.

1. API Key: set up once

Paste your free Copernicus Climate Data Store (CDS) key and click Save. That is the whole setup. Search and map previews work even without a key; the key unlocks data export and full-history time series.

2. Search: describe what you need, not what it is called

This is the heart of the plugin. Type a phrase such as “urban heat island” or “PM2.5 exposure”, and GeoBridge ranks the matching Copernicus datasets and variables. Each result shows exactly which dataset and variable it points to, with a link to its catalogue page.

Get Ilias Machairas’s stories in your inbox

Join Medium for free to get updates from this writer.

From a result you can:

  • Preview it on the map. Pick a date range and a time step, click Build layers, and a time-stepped WMTS preview streams onto the QGIS canvas. A slider and a Play button animate it through time, and a colour legend shows what the colours mean.
  • Choose an area of interest. Draw a rectangle on the map, or use an existing polygon layer.
  • Export real data. Export to GeoTIFF from ARCO Zarr, either as raw timesteps or aggregated to daily, monthly or annual statistics, then add it straight to the map, ready for analysis.

Under the hood

Nothing extra to install. Early versions depended on the usual Python stack: xarray, zarr, rioxarray and pyproj. Inside QGIS that stack fought with QGIS’s own bundled libraries and could even crash it. So we rebuilt GeoBridge on what every QGIS already ships: GDAL, NumPy and the Python standard library. Installing the plugin is now a single click in the QGIS plugin manager.

Straight from the archive. The Search tab reads from ARCO Zarr archives that ECMWF publishes (analysis-ready, cloud-optimised). GeoBridge fetches only the chunks covering your area and dates, straight from the archive, with no request queue in between. That is why an export takes seconds rather than a wait in line.

A bug that made it faster. When we tested on a Mac, every ARCO export failed with an error blaming an outdated GDAL. The real cause was different. ECMWF compresses its ARCO archives with a codec called Blosc, and the GDAL bundled with QGIS on macOS is built without it. Rather than ask Mac users to reinstall QGIS, we wrote a small Zarr reader into the plugin itself, in pure Python and NumPy, that decodes the data directly.

The surprise came when we compared it with GDAL on Windows. The results were identical, pixel for pixel, and the new reader was much faster:

These are single runs on one Windows PC and one network, but the gap is far too large to be noise. The built-in reader now runs on every platform, with GDAL kept as a fallback.

Try it

GeoBridge is open source and free to use. In QGIS, open Plugins → Manage and Install Plugins, search for GeoBridge, and click Install. Then paste your CDS key into the API Key tab and type your first question into Search.

In the next article we will look at the other two tabs: Browse by Variable, for requesting any of 135 Copernicus datasets directly, and Time Series, for following a single point through the years. If you try GeoBridge, we would love to hear what you use it for, and what is missing.

--

--

Ilias Machairas
Ilias Machairas
Python in Plain English
Python in Plain English