Methodology
How we know this
Borgo Data exists to be honest, so the data has to be checkable. This page lays out exactly where every figure comes from, how current it is, and what it can’t tell you. Nothing here is our opinion of a town — it’s public data, named and dated, so you (or your lawyer) can verify any of it.
Last reviewed: June 2026
What we promise — and what we don’t
- Sourced. Every number traces to a public source you can open yourself. We name it on each town page.
- Dated. We show when each town was last refreshed, so you can judge how current it is.
- Honest about gaps. When we don’t have reliable data, we say “unknown” — we never guess, and an unknown is never counted against a town.
- Not for sale. The data is never paid for or paid placement. The only revenue is clearly-disclosed referrals.
- Never “verified true.”We will not stamp data as certified-correct. Our sources are public records that themselves carry no guarantee (OpenStreetMap is volunteer-mapped; official statistics lag reality). We show you the source and the date and let you judge — a badge claiming we’d confirmed every figure on the ground would be exactly the kind of spin we exist to avoid.
Where each figure comes from
Population & demographics
Resident counts, median age, age structure, foreign-resident numbers and nationalities, year-on-year change, and long-range population projections.
Services, distances & surroundings
Distance to supermarket, pharmacy, doctor, school, station, beach and the like; leisure facilities; and the surroundings layer (river, forest, coast, mountain… / industry, busy road, railway…).
1€ / cheap-house scheme status
Whether a town appears to run a house scheme, any deadline seen, and a quote from the page we found it on.
Civic vitality signals (from the comune’s own website)
Softer indicators of how ‘alive’ a town’s administration is, read from the same municipal pages we already visit: how recently the site’s official notice board (Albo Pretorio) and news were updated, roughly how many dated notices appeared in the last year, whether residents can do things online (PagoPA, SPID, an online desk), whether there’s an active events/festival life, and whether the town keeps an English-language or tourism section.
Climate & comfort
Typical temperatures and comfort indicators.
Earthquake history
Recent seismic events near the town.
Recovery-fund (PNRR) projects
EU recovery-fund projects tied to the comune, and approximate amounts.
Town photos
A single representative photo where one is openly licensed.
How the fit scores are calculated
The “who this town suits” scores aren’t opinions — they’re a transparent weighted average of the factual factors we have for a town. Here’s the whole method, with nothing hidden.
1. Each factor is scored 0–1
Every factor is turned into a 0–1 value from the raw data. Distances reward being close: a service within about 1 km scores 1.0, fading to 0 by about 5 km. “More is better” factors (e.g. facilities) rise toward 1.0 as they reach a sensible target. Data-backed factors like climate comfort, hazard safety, clean air and car-free viability already arrive on a 0–1 scale.
2. Each audience weights the factors it cares about
Every audience has a fixed set of weights (0–1) saying how much each factor matters to them. For example, a retiree weights:
healthcare 1.0 · climate 0.9 · cost of living 0.9 · quiet/low-density 0.8 · safety 0.8 · daily shopping 0.7 · air & water 0.7 · hazard safety 0.7 · car-free 0.6 · culture 0.5 · transport 0.5 · community 0.3
A family, by contrast, leads with schools 1.0, safety 0.9 and healthcare 0.9. Weights live in a config file, so they’re tunable without code.
3. The score is a weighted average — of known factors only
We combine the factor scores the town actually has data for, each pulled by its weight, and scale to 0–10:
A factor with no data is excludedfrom both the top and bottom of that fraction — never scored 0. Guessing a missing factor as bad would be exactly the dishonesty this project avoids.
4. Thin data is pulled toward neutral (confidence shrinkage)
A “10/10” built from one or two factors is noise, not signal. So we measure coverage— how many of an audience’s cared-about factors had data — and pull the raw score toward the neutral midpoint (5) in proportion to how little data backs it:
score = 5 + ( raw − 5 ) × coverage
Full coverage leaves the score untouched; thin coverage drags it toward neutral. And below a hard floor — fewer than 2 real factors— we show no number at all, because there isn’t enough to say anything honest. Each town page shows the coverage and lets you expand any audience to see the exact factors, values and weights that produced its score.
A low score means a poorer fit for that group’s needs — not that it’s a bad town. The weights are our editorial judgement of what each group tends to need; the factor values are data.
What 0%, 50% and 100% mean for each factor
The 0–1 factor scores in step 1 aren’t arbitrary — each has a fixed rule. Here’s what full marks, half marks and zero mean for the main factors:
| Factor | 100% | 50% | 0% |
|---|---|---|---|
| Daily shopping (supermarket) | within 1 km | about 3 km | 5 km or more |
| Healthcare (nearest of GP / pharmacy / hospital) | GP within 2 km (or pharmacy 1 km, hospital 5 km) | GP about 6 km | GP 10 km+ (and others far) |
| Schools | within 1 km | about 4.5 km | 8 km or more |
| Public transport (train) | station within 2 km | about 6 km | 10 km or more |
| Airport access | within 40 km | about 80 km | 120 km or more |
| Nature / coast (beach) | within 5 km | about 22 km | 40 km or more |
| Dining & social (restaurants + cafés ≤5 km) | 20 or more | about 10 | none mapped |
| Quiet / low density | under 2,000 people | ≈10–50k → 0.4 | over 50,000 → 0.2 (never 0) |
| Population trend | growing +5% or more | about −10% | shrinking −25%+ → 0.1 |
| Climate, air, hazard-safety, car-free | ideal (mild / clean / safe / walkable) | middling | harsh / polluted / exposed |
Distance factors fade linearly between the two thresholds. A few factors have a floor (e.g. a large town still scores 0.2 for “quiet,” not 0) so they’re never treated as absolute zeros. Data-backed factors (climate, air, hazard safety, car-free) arrive already scored 0–1 by their own models.
Every audience’s weights
The full weight vector for each audience, exactly as the scorer uses it. Higher = matters more to that group. Anything not listed isn’t counted for that audience.
Retiree / Pensioner Calm, affordable retirement.
Remote worker / Digital nomad Works online; needs connectivity.
Family with children Schools and safety first.
Student Transport, affordability, social life.
Expat / International mover Community and ease of integration.
Seasonal / project worker Here for a season or a project.
Property investor Value/yield; cares about trajectory.
Culture & lifestyle seeker Art, events, festivals, things to do.
A worked example: Albugnano for a retiree
A real town and the live retiree weights, end to end. Albugnano has data for 9 of the retiree’s 12 factors.
| Factor | Value | Weight | Value × weight | From |
|---|---|---|---|---|
| Healthcare access | 0.82 | 1.0 | 0.820 | doctor 3.4 km, pharmacy 3.2 km |
| Quiet / low density | 1.00 | 0.8 | 0.800 | population 525 |
| Hazard safety | 1.00 | 0.7 | 0.700 | 0 quakes / 20 yrs |
| Air & water quality | 0.87 | 0.7 | 0.609 | PM2.5 9.2 µg/m³ |
| Climate comfort | 0.55 | 0.9 | 0.495 | mean 12.0 °C |
| Daily shopping | 0.68 | 0.7 | 0.476 | supermarket 2.3 km |
| Public transport | 0.28 | 0.5 | 0.140 | train 7.8 km |
| Car-free viability | 0.20 | 0.6 | 0.120 | car essential |
| Community vitality | 0.22 | 0.3 | 0.066 | 4 births vs 12 deaths |
| Totals (factors with data) | 6.2 | 4.226 |
No data for: Cost of living, Safety, Culture & events— excluded, not scored 0.
coverage = 9 / 12 = 0.75
score = 5 + ( 6.8 − 5 ) × 0.75 = 6.4 / 10
The raw 6.8 is pulled down to 6.4because a quarter of the retiree’s factors had no data — the score stays honest about how much it rests on. This is exactly the breakdown you can open under “who this town suits” on the Albugnano page.
Check it yourself
Because every figure is public and dated, you can verify any of it: each town page names its sources, and the links above go straight to them. The data pipeline is code working from these open sources, so the numbers are in principle re-derivable from scratch — “don’t take our word for it” is the point. If you ever find a figure that looks wrong, it usually means the underlying public source needs updating (and on OpenStreetMap, anyone — including you — can fix it).
Borgo Data provides information, not professional advice. For a specific purchase, confirm the details that matter with the comune and a qualified Italian lawyer.