Methodology
SettleMetric exists because relocation data is usually either crowdsourced (manipulable) or a black box. Our answer is radical transparency: this page publishes every rule we score by. If you disagree with a weight — change it, right here.
Data sourcing
- Taxes and laws come only from official government sources — tax authorities, immigration services, official gazettes. Never from blogs or aggregators.
- Statistics come from open data (OECD, World Bank, UNODC, NOAA/WMO, M-Lab) or national statistics offices.
- Every fact carries its source link, effective date, and the date we last verified it — the ⓘ mark next to every number.
- When we can’t verify something, we show "no verified data" — we never guess and never fill gaps with estimates.
- Tax schemes ship with hand-computed examples that our calculation engine must reproduce in automated tests — the dataset is self-verifying.
Scoring formula
Each criterion maps its raw value to a 0–10 score through fixed, published anchors (piecewise-linear interpolation) or a categorical table — not relative rankings, so adding a new country never changes existing scores. Then:
category score = Σ(criterion weight × score) / Σ(weights)over criteria with dataoverall = Σ(category weight × category score) / Σ(category weights)over categories with data- Missing data is excluded, never imputed; if less than 50% of criteria have data, the overall score is suppressed entirely.
- Cities inherit country-level values (taxes, visas, crypto rules) — marked "country-level" wherever shown.
Adjust the weights yourself
The default weights below are our editorial judgment — your priorities differ. Move the sliders; the ranking recomputes with the exact same formula and encodes into the URL so you can share your view.
Every criterion, every anchor
| Criterion | Category | Applies to | Weight | Value → score anchors | Methodology & preferred sources |
|---|---|---|---|---|---|
| Freelancer tax burden% effective burden at €60k/year self-employed profile | Taxes | country | 9 | 5 → 10; 15 → 8; 25 → 6; 35 → 4; 45 → 2; 55 → 0 | Effective total burden (income tax + mandatory social and health contributions) for a solo IT freelancer with €60,000/year revenue and 10% deductible expenses, using the most favourable eligible scheme in the country's tax-schemes data. Computed by the SettleMetric tax engine; recorded as a curated value with the winning scheme id in method.Sources: SettleMetric tax engine over official schemes (source URLs live on the schemes) · re-verified every 365 days |
| Remote-work legalization ease | Legalization | country | 8 | dedicated-nomad-visa → 10; freelance-permit → 8; long-stay-path → 6; short-stay-only → 3; none → 0 | Best available legalization route for a location-independent earner with a median (non-EU, non-US) passport, classified from this country's legalization-paths data: dedicated digital-nomad visa; general freelance/self-employment permit; realistic long-stay path (e.g. renewable temporary residence); only short visa-free/tourist stays; effectively none.Sources: Official immigration sources (recorded on legalization paths) · re-verified every 180 days |
| Crypto regulation | Money & crypto | country | 5 | legal-friendly → 10; legal-regulated → 8; restricted → 4; banned → 0 | Own classification of the legal status of holding, trading and cashing out cryptocurrency for individuals: legal-friendly (legal with clear, favourable rules or explicit tax exemptions), legal-regulated (legal under standard licensing/AML and taxation), restricted (partial bans: payments or banking access prohibited), banned (holding/trading prohibited). Classified from national regulators' and central banks' official positions.Sources: National regulators / central banks; Atlantic Council tracker (discovery only) · re-verified every 180 days |
| Financial control level | Money & crypto | country | 5 | low → 10; moderate → 7; high → 3; very-high → 0 | Own composite of state control over personal money flows: currency/capital controls (IMF AREAER), restrictions on foreign accounts and transfers, mandatory income declaration scope for residents, cash payment limits, banking access for foreigners. Low = free movement of personal funds and easy non-resident banking; very-high = strict capital controls and pervasive reporting. Method field on each value lists the inputs used.Sources: IMF AREAER; National central bank regulations; National tax authority reporting rules · re-verified every 365 days |
| Homicide rateintentional homicides per 100,000/year | Safety | both | 8 | 0.5 → 10; 2 → 7; 6 → 4; 15 → 1; 30 → 0 | Intentional homicide victims per 100,000 population, latest available year. Country level: UNODC national series. City level: official municipal/police statistics where published; otherwise null (country value shown as country-level).Sources: UNODC Data Portal (CC BY 4.0); National police statistics · re-verified every 730 days |
| Crime rates by offence | Safety | both | 0 | display-only (not scored) | Police-recorded offences per 100,000 inhabitants by offence category (theft, burglary, robbery, assault, sexual violence, drug offences), latest available year — the fuller everyday-safety picture beside the scored homicide headline. Shape: { year, groups: [{ label, rate }] }. Never scored: recorded-crime levels reflect legal definitions and reporting/recording practices that differ by country, so absolute values are context, not a grade. Country level: Eurostat police-recorded crime (crim_off_cat, ICCS categories) or UNODC. City level where an official municipal/police source publishes comparable per-100k rates; otherwise the country value is shown.Sources: Eurostat crim_off_cat (ICCS, CC BY 4.0); UNODC Data Portal (CC BY 4.0); National police statistics · re-verified every 730 days |
| Climate comfortpleasant months/year | Climate | city | 6 | 0 → 0; 4 → 4; 8 → 8; 12 → 10 | Number of months whose 1991–2020 climate normals satisfy: mean daily maximum between 15°C and 28°C and monthly precipitation under 150mm. Computed from the city's climate-normals indicator; the raw normals are stored alongside so users can judge by their own taste.Sources: NOAA/WMO Climate Normals 1991–2020 (public domain); National meteorological services · re-verified every 3650 days |
| Monthly climate normals°C / mm per month, normals 1991–2020 | Climate | city | 0 | display-only (not scored) | Raw monthly normals object ({jan: {tMin, tMax, precipMm}, ...}) for display (climate charts) and as the computation input for the climate-comfort criterion. Display-only: never scored.Sources: NOAA/WMO Climate Normals 1991–2020 (public domain); National meteorological services · re-verified every 3650 days |
| Cost of living (single, excl. rent)USD/month, single person, excluding rent | Cost of living | both | 9 | 500 → 10; 900 → 8; 1400 → 6; 2100 → 4; 3000 → 2; 4200 → 0 | Monthly cost of a defined single-person basket (food, transport, utilities, mobile+internet, modest leisure) excluding rent, curated from national statistics office price data and large local retailers' published prices, converted to USD at the ECB rate recorded in fx-rates. The method field of each value itemizes the basket inputs.Sources: National statistics offices; Eurostat comparative price levels · re-verified every 365 days |
| Monthly cost breakdown | Cost of living | both | 0 | display-only (not scored) | Average monthly consumer spending for a single person, split by category (food, utilities, transport, dining, etc.), excluding rent, from the national statistics office household budget survey. Rendered as a breakdown; not scored — the scored figure is the cost-of-living aggregate.Sources: National statistics offices (household budget survey); Eurostat · re-verified every 365 days |
| Rent by apartment type & location | Housing | both | 0 | display-only (not scored) | STANDARD for the Housing section everywhere (country pages, city pages, and comparisons): rent is always shown as the full matrix of apartment type (studio / 1BR / 2BR / 3BR) × location (central vs outside the centre) — never a single 1-bedroom figure alone. City value = a city's own matrix from major listing-portal market reports; where a source gives rent by room count OR by district but not both at once, the central/outside cells are derived transparently (city room-average × district multiplier) and flagged. Country value = population-weighted average of the covered cities' matrices, computed at build time (consistent with rent-1br-center). Rendered as a table; never scored (the scored housing figure is rent-1br-center).Sources: Major local listing portals (room + district market reports); National central bank housing reports · re-verified every 365 days |
| Private healthcare costUSD/year, comprehensive private insurance premium, healthy 35-year-old | Healthcare | country | 6 | 500 → 10; 1200 → 8; 2000 → 6; 3500 → 4; 5000 → 2; 8000 → 0 | Median of at least three publicly quoted annual premiums for comprehensive private medical insurance (outpatient + inpatient, ~$100k coverage, small deductible) for a healthy 35-year-old resident foreigner, from local and international insurers. Method field lists the insurers quoted.Sources: Insurer public quote engines (local + IPMI) · re-verified every 365 days |
| English proficiency | Language | country | 5 | native → 10; very-high → 9; high → 7; moderate → 5; low → 2; very-low → 0 | Own banding of how far English gets a resident in daily life (government offices, healthcare, housing, services). Informed by EF EPI band (research source, cited with attribution, not republished) plus official language status and service-sector realities. Values are our bands, not EF scores.Sources: EF EPI (research, attribution); Official language policy · re-verified every 730 days |
| International schoolsaccredited international schools, count | Education | city | 4 | 0 → 0; 2 → 4; 5 → 6; 12 → 8; 25 → 10 | Count of international schools in the metro area accredited by or member of IB, CIS, COBIS, or an equivalent national-curriculum-abroad body (verified against the accreditor's public registry, not aggregator sites).Sources: IB World Schools directory; CIS / COBIS member registries · re-verified every 730 days |
| Domestic delivery quality | Infrastructure | country | 4 | excellent → 10; good → 7; basic → 4; poor → 1 | Quality of in-country parcel delivery. excellent = nationwide next-day widely available, dense parcel-locker network, real-time tracking standard; good = 1–3 day delivery, lockers in major cities; basic = reliable but slow (3–7 days), mostly to-door or post-office pickup; poor = unreliable delivery, street addresses often unusable, informal workarounds common. Classified from official service/coverage data of the national postal operator and the two largest private carriers; inputs itemized in each value's method field.Sources: National postal operator service data; Major carriers' official coverage pages · re-verified every 730 days |
| International delivery ease | Infrastructure | country | 4 | seamless → 10; minor-friction → 7; significant-friction → 4; unreliable → 0 | Ease of receiving goods from abroad. seamless = major international carriers deliver door-to-door, meaningful duty-free de-minimis threshold, customs clearance predictable in days; minor-friction = carriers present but low de-minimis, extra paperwork or routine delays; significant-friction = frequent customs holds, high brokerage fees, some marketplaces refuse to ship; unreliable = parcels regularly lost or blocked, informal import channels dominate. De-minimis thresholds and clearance rules from the national customs authority (official source, cite the regulation); carrier presence from carriers' official pages.Sources: National customs authority (de minimis, clearance rules); International carriers' official coverage pages · re-verified every 365 days |
| Available delivery methods | Infrastructure | country | 0 | display-only (not scored) | Structured object of parcel-delivery methods available in the country, rendered as a fact card and used as supporting evidence for the two delivery-quality criteria. Shape: { courierNetworks: string[] (national + international brands operating), parcelLockers: { available: boolean, networks: string[] }, postalPickup: boolean, cashOnDelivery: boolean, notes?: string }. Display-only: never scored.Sources: National postal operator; Carrier and locker-network official pages · re-verified every 730 days |
| Air quality (PM2.5)µg/m³, annual mean PM2.5 | Climate | city | 6 | 5 → 10; 10 → 8; 15 → 6; 20 → 4; 25 → 2; 35 → 0 | Annual mean fine-particulate (PM2.5) concentration for the city, latest available year. Anchors follow the WHO 2021 guideline (5 µg/m³ → 10) through the EU limit value territory (25 µg/m³ → 2). Preferred source: European Environment Agency city-level air quality data; outside Europe: WHO Ambient Air Quality Database or the national monitoring network.Sources: EEA air quality statistics (city level); WHO Ambient Air Quality Database; National monitoring networks (e.g. GIOŚ) · re-verified every 730 days |
| Internet speedMbps, median fixed download | Infrastructure | both | 6 | 10 → 0; 50 → 5; 100 → 7; 200 → 9; 300 → 10 | Median fixed-broadband download speed over the trailing 6 months from M-Lab NDT open data (CC0), aggregated at country or city level. Not comparable with Ookla figures (different test methodology) — do not mix sources within this criterion.Sources: M-Lab NDT (CC0, BigQuery) · re-verified every 365 days |
| Foreign residents% of residents who are foreign nationals | Demographics | both | 0 | display-only (not scored) | Share of the resident population holding foreign citizenship, latest available year, from the national statistics office or Eurostat population-by-citizenship data. Where a large temporary-protection population (e.g. Ukrainians since 2022) is not captured by residence-permit stats, the method/notes state the basis and whether it is included. Display-only: shown as context, never scored — a larger or smaller foreign share is neither 'better' nor 'worse'.Sources: National statistics offices; Eurostat migr_pop1ctz (open data); Migration/border authorities · re-verified every 730 days |
| Nationality mix | Demographics | both | 0 | display-only (not scored) | The largest foreign-national communities by country of citizenship (counts and/or share), latest available year, from official statistics. Shape: { basis: 'foreign-residents' | 'foreign-born' | 'total-population', totalForeign?: number, groups: [{ label, count?, share? }] }. Only groups an official source actually publishes are listed; regional labels (e.g. 'Other Asia') are used only where the source aggregates that way. Rendered as a breakdown; never scored.Sources: National statistics offices (by citizenship); Eurostat migr_pop1ctz / migr_asytpsm (open data); UNHCR data portal (temporary protection) · re-verified every 730 days |