- HTML 64.9%
- Python 35.1%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| scripts | ||
| grid_datacenter_map.html | ||
| LICENSE | ||
| nodes_datacenter_capacity.csv | ||
| README.md | ||
| region_capacity_summary.csv | ||
Spain grid capacity — datacenter siting map
Interactive map of where the Spanish transport grid (REE, 400/220 kV) has spare demand connection capacity — the level where hyperscale / datacenter loads connect.
Open grid_datacenter_map.html in any browser (needs internet for the base map tiles).
What it shows
- Points = individual transport nodes with available capacity, coloured/sized by MW. Filter by size (≥50 / ≥100 / ≥200 / ≥500 MW).
- Region bubbles (toggle) = total capacity per Comunidad Autónoma — the "areas" view.
Headline metric = datacenter-grade available capacity = max(CEP-CH, CEP-SH) from REE's
column "Capacidad de acceso disponible para solicitudes (criterio general) → Demanda".
CEP = consumo con interfaz de electrónica de potencia (power-electronics load, i.e. a
datacenter). No-CEP (conventional load) is shown in popups but excluded from the metric.
Key findings (REE data, 3 Jun 2026)
- Only 210 of 936 transport nodes (~22%) have any demand capacity — matches REE's public statement that ~25% of nodes still have headroom.
- ~39 GW of datacenter-grade headroom nationally, heavily clustered:
Andalucía (9.2 GW) · Galicia (8.7 GW) · Castilla y León (7.0 GW), then Murcia, C.
Valenciana and Extremadura. See
region_capacity_summary.csv.
Files
| File | Contents |
|---|---|
grid_datacenter_map.html |
Self-contained interactive map (data inlined) |
nodes_datacenter_capacity.csv |
All 936 nodes, ranked by DC-grade MW, with CEP breakdown + coords |
region_capacity_summary.csv |
Per-region totals |
data/REE_GRT_demanda_*.xlsx |
Raw REE source file |
scripts/extract.py |
Parse REE workbook + geolocate nodes (GeoNames) |
scripts/build_map.py |
Aggregate regions + build map payload |
scripts/build_html.py |
Render the HTML map |
Caveats
- Values are indicative, published monthly, and not additive between neighbouring nodes.
- Points are placed on the matched town centre (via GeoNames), not the exact substation. 60 capacity nodes with non-town names (e.g. GUADAME, MESON D.V.) are region-level only and listed in the map panel — the region bubbles include them.
- Nodes reserved for competitive auction (concurso) are excluded from this first-come metric.
- Transport layer only; distribution (DSO) capacity is additional. Always confirm a node with a formal access request to REE / the DSO.
Refresh (monthly)
REE republishes ~5 days into each month. Run from this folder (the scripts expect the
GeoNames files data/ES.txt + data/admin1.txt, both already included):
D=2026_07_03 # publication date of the new file; input read as data/GRT_demanda.xlsx
curl -sSL -o data/GRT_demanda.xlsx \
"https://www.ree.es/sites/default/files/12_CLIENTES/Documentos/${D}_GRT_demanda.xlsx"
python3 scripts/extract.py && python3 scripts/build_map.py && python3 scripts/build_html.py
# outputs: grid_datacenter_map.html, data/nodes_ranked.csv, data/region_summary.csv
cp data/nodes_ranked.csv nodes_datacenter_capacity.csv
cp data/region_summary.csv region_capacity_summary.csv
Sources: REE — Conoce la capacidad de acceso ·
CNMC capacity maps.
Method from the project's spanish-grid-capacity skill.