Skip to content
TerraSightEUSign in
Trust & methodology

How TerraSight scores regions

Everything below is deliberately boring: transparent inputs, one formula, explicit rules for missing data, and a list of what this platform does not know. Defensibility beats black boxes in an investment-committee room.

1 · Pillars

Every pillar is an EU-wide percentile (0–100) computed across all 1,211 EU-27 + EFTA NUTS-3 regions from the latest available reporting period. Higher always means “better for siting”. Cost-type pillars are inverted so that cheap scores high.

PillarConstruction & source
Economic baseGDP per capita, PPS-adjusted (Eurostat nama_10r_3gdp)
Growth momentumMomentum Index: GDP CAGR 5/10y, acceleration, employment & population trend
Demographic outlookProjected population change to 2040, EUROPOP2019 baseline (Eurostat proj_19rp3)
Labour marketEmployment rate 20–64 (Eurostat lfst_r_lfe2emprt)
Cost advantageInverse of net disposable household income per capita — labour-cost proxy (Eurostat nama_10r_2hhinc)
Talent & skillsTalent Index: tertiary attainment 25–34, lifelong learning, HRST, scientists & engineers
ConnectivityConnectivity Index: transit density, airport access, market-access gravity
Freight intensityRoad freight loaded per 1,000 inhabitants (Eurostat road_go_na_rl3g)
Industrial baseManufacturing share of gross value added (Eurostat nama_10r_3gva)
Digital readinessHouseholds with internet access (Eurostat isoc_r_iacc_h)
GovernanceWorld Bank WGI: government effectiveness, regulatory quality, rule of law, corruption control, political stability (country-level)
Energy costInverse of industrial electricity price, 2–20 GWh band excl. taxes (Eurostat nrg_pc_205, country-level)
ResilienceResilience Index: GDP/labour stability, diversification (HHI), demographics
Quality of lifeQoL composite: income, jobs, education, health, safety, environment, transit
Air qualityClean-Air composite: PM2.5, PM10, NO2 annual means (EEA)

2 · Scoring

A mandate assigns weights to pillars — via an archetype preset (Logistics & distribution, Manufacturing & industrial, Office / HQ & services, Residential development) or fully custom sliders. The score is the weight-normalized blend:

score = Σ(weightᵢ × pillarᵢ) / Σ(weightᵢ)

Weights are shown in every screener run and printed in every PDF report — the model has no hidden terms.

3 · Missing data — the rule that matters

A region missing a weighted pillar is scored at the EU-median assumption (50) for that pillar and carries an explicit partial data flag. Missing pillars are never silently dropped or renormalized — renormalization would reward regions for lacking data on their weakest dimension. Regions with real data for less than 60% of the requested weight are excluded from rankings entirely. Red flags mark weighted pillars in the EU bottom 15%.

4 · Data sources & licences

SourceWhat it feedsLicence
Eurostat dissemination APIEconomy, GVA sectors, demography incl. EUROPOP2019 projections to 2040, labour, education, poverty, crime, tourism, freight, energy pricesCC BY 4.0
GISCONUTS-3 boundaries and geometryEU open data
JRC ARDECOLong-run regional accounts: real GDP, productivity, labour force, investment (1980–2025 incl. short-term forecast)CC BY 4.0
National statistical offices (SCB, StatFin, SSB, DST)Regional dwelling prices — Sweden, Finland, Norway, DenmarkCC0 / CC BY 4.0
World Bank WGIGovernance: rule of law, regulatory quality, government effectiveness, corruption control, political stabilityCC BY 4.0
EEAAir quality (PM2.5, PM10, NO₂, O₃) and industrial facility density (E-PRTR)CC BY 4.0
JRC CEMS/EFAS + census gridFlood exposure: population share in the 100-year river floodplain (90m hazard raster × 100m population grid)CC BY 4.0
Copernicus / Open-MeteoClimate normals and elevationCopernicus licence / CC BY 4.0
MobilityData GTFS · OurAirports · OSM-derived gravityTransit-stop density, airport access, market-access gravityOpen licences

Ingestion runs nightly with upstream freshness polling and hard-fail schema validation — current status is public at /status, and everything here is queryable via the free API. Every indicator value stores its raw-source provenance.

5 · Known limitations

  • No pan-EU market rents, land prices or parcel availability exist in public data — regional dwelling prices are live for all four Nordic countries (national definitions, native currency). The cost pillar uses inverse disposable income as a documented labour-cost proxy.
  • Population projections (EUROPOP2019 baseline) predate recent migration waves and are published on NUTS-2016 boundaries; ~90 recoded regions carry no outlook pillar.
  • NUTS-2- and country-grain sources assign the parent value to each NUTS-3 within it (marked in every indicator description).
  • Zoning, permitting, incentives, and site-level grid capacity are outside public pan-EU data — they are phase-2 diligence, and every report says so.

6 · Does it predict anything? The backtest

We rebuilt the screen's core signals as they stood in 2015 — and again in 2005, as an independent replication — and measured realized outcomes over each following decade. In both windows the ranking strongly anticipated where population accumulated (rank correlation ≈ +0.63 in each, monotone decile ladders, positive within every country tested) — and did not predict %-real-GDP growth, because EU catch-up convergence dominates growth-rate league tables. Both results, including the null, are published in full with all robustness checks.

Read the full backtest →
Test it against a region you know

The fastest way to judge a scoring model is to run it somewhere you have ground truth.

Open the Site Screener →Read the thesis reports
Methodology — TerraSight