Route CO₂ pipelines the least-cost way — and price them — inside QGIS.
CO2GIS turns land use, slope, crossings and existing corridors into a COMET cost surface, finds the globally optimal corridor between a source and a sink, and estimates its CAPEX down to the cell — all in one tabbed QGIS interface, no programming required.
▶ Watch the 2-minute demo · 🌐 Website & docs
Planning a CO₂ pipeline is a multi-criteria spatial problem — the best corridor depends on land, terrain and infrastructure, while the cost depends on length, diameter and pressure. General GIS does routing but has no CO₂ cost model; network optimisers price graphs, not continuous terrain. CO2GIS joins a COMET raster cost surface, raster least-cost routing and engineering-grade cell-level CAPEX in a single workflow.
- COMET cost surface — land use, slope, infrastructure crossings and existing corridors combine into one relative crossing-cost per raster cell.
- Globally optimal routing — accumulated-cost path via the GRASS chain (
r.cost → r.drain → r.thin → r.to.vect); the true least-cost corridor, not a greedy guess. - Cell-level CAPEX — pipeline diameter from Darcy–Weisbach, priced from the same factors that drove the route, with booster stations inserted past the pressure budget.
- Precise or fast — exact cell-by-cell estimation, or a fast point-sampling mode for scenario exploration. You choose accuracy vs speed.
- No coding — a seven-tab workflow with COMET reference values one click away, every parameter editable.
Every coefficient and threshold below is a reference default — all are editable in the plugin's Price Estimation tab. For the full parameter reference, formulas and derivations, see the documentation.
Each raster cell gets a relative crossing cost from the COMET formula:
C_cell = Fc · Fs · [ Flu · (1 − 0.1·N) + 0.1·N · Fci ]
Fc = corridor factor, Fs = slope, Flu = land use, Fci = crossing, N = road/rail features in the cell (capped at 10). The bracket blends land-use cost (N = 0) and crossing cost (N = 10).
r.cost propagates accumulated cost from the origin; r.drain back-traces the minimum-cost path from the destination; r.thin → r.to.vect turn it into a clean line. The result minimises cost, not distance — the globally optimal corridor across the whole territory, not a greedy local path.
Diameter is computed once from the CO₂ mass flow rate via Darcy–Weisbach:
D = ( 8·λ·M² / (π²·ρ·(Δp/L)) )^(1/5)
The route is then priced cell by cell, reusing the routing factors — so the least-cost route is, by construction, also the cheapest to build:
Ip = Bc · D · Σ ( C_cell · L_cell )
I_total = Σ Ip + Σ I_B
Routes past the pressure budget are split into segments with intermediate booster stations. The segment length limit is derived, not fixed — by default total drop (3 MPa) ÷ admissible drop (0.02 MPa/km) ≈ 150 km. Each booster's cost scales with its compressor power Sc:
I_B = α · Sc + β
Precise mode (default) prices every crossed cell exactly; fast mode samples a few points per segment for quick scenario exploration — accuracy vs speed.
Defaults (all editable): Bc = 1357 €/m², λ = 0.015, ρ = 827 kg/m³, Δp/L = 0.02 MPa/km, Δp = 3 MPa, α = 0.547 M€/MW, β = 0.42 M€. Full derivation in the cost-model docs.
From the QGIS Plugin Repository (recommended) — in QGIS: Plugins → Manage and Install Plugins, search CO2GIS, install.
From ZIP — download a release and use Plugins → Manage and Install Plugins → Install from ZIP.
Requirements: QGIS 3.16+ with the bundled GRASS provider and Processing framework (both ship with the standard QGIS installers). No extra Python packages — the plugin uses only PyQGIS (Qt via the qgis.PyQt wrapper), GDAL/OGR and NumPy.
Once enabled, a CO2GIS action appears in the Plugins menu and toolbar.
Seven tabs, each feeding the next:
| Tab | Input | Output |
|---|---|---|
| Land Use | classified land-cover raster (e.g. COSc) | Flu cost raster |
| Slope | DEM | Fs cost raster |
| Crossings | road/rail vector | Fci cost raster + N count raster |
| Corridors | existing pipeline/oil corridors vector | Fc cost raster |
| Aux | — | merge vectors, resample & clip rasters (speed-ups) |
| LCP | the four cost rasters + N + origin/destination |
combined cost raster → route |
| Price Estimation | route + cost rasters + flow/physical parameters | CAPEX (precise or fast) |
Each cost tab has a Populate according to COMET button that fills in reference values. Every parameter stays editable.
Issues and pull requests are welcome — see CONTRIBUTING.md.
CO2GIS is free and open-source. If you're using it for commercial CCS/CCUS projects and need custom development or priority enterprise support, reach out at co2gis.support@gmail.com.
CO2GIS began as the practical component of a Master's dissertation in Computer Engineering at the Polytechnic University of Leiria (ESTG) — and is now developed independently and in the open.
GNU General Public License v2.0 or later (GPL-2.0-or-later), consistent with QGIS and GRASS GIS.