Methodology
How we calculate the personal ranking, handle missing data and use exchange rates. The calculation is deterministic and uses no AI.
Versions in use: algorithm rank-2026.09.3 · indicators ind-2026.09.3 · FX fx-2026.09.1. Each saved ranking stores the versions used.
Steps
- Must-have conditions are checked first: met, not met or unknown. A city that does not qualify leaves the ranking.
- Each active criterion looks up the city's latest local data, in the source's classification.
- A common set is formed: criteria with data for every candidate city and in the same comparability group.
- Each criterion scores 0 to 100 with fixed parameters; the final score is the weighted average over the common set.
- Coverage = common-set weight ÷ active weight. Below 60%, the result is provisional with no position.
score = sum(weight × criterion score) ÷ sum of common-set weights
Normalisation (0–100)
Parameters do not depend on the cities being compared: adding or removing a city does not change the others' criterion scores.
| Criterion | Indicator | Rule |
|---|---|---|
| Safety | taxa de homicídios por 100 mil hab. | Linear: 0 or less = 100; 40 or more = 0. |
| Jobs | taxa de desocupação (%) | Linear: 3 or less = 100; 15 or more = 0. |
| Climate | temperatura média anual (normal climatológica, °C) | 100 inside the preferred range (hot 22–28 °C, mild 15–22 °C, cold 5–15 °C); loses 10 points per °C outside. |
| Health services | hospitais por 100 mil hab. | Linear: 5 or more = 100; 0 = 0. |
Budget, schools, hospital proximity, accessibility, mobility and sports have no comparable source yet: they appear as “no data”.
Safety
- We use the municipality or metropolitan area; district/neighbourhood only when data are robust.
- Each source keeps its classification (e.g. homicídio doloso in SINESP, homicide in StatCan). Typologies from different countries are never in the same common set.
- National figures appear only as labelled context and never replace local data.
- Counts below 20 incidents are flagged as unstable.
- Recorded incidents and perceived safety are separate indicators; phase 1 uses records only.
- We store count, denominator (population), period and area for each rate.
Missing data
- Missing data never becomes zero.
- Weights are never silently redistributed: criteria outside the common set are listed with the reason.
- Incomplete results are provisional or have no position.
- Proximity does not prove quality, availability, right of access or accessibility.
Exchange rates
- European Central Bank reference rates (EUR base); cross rates are calculated by us.
- No publication on weekends and holidays: we use the latest available rate and show its date.
- Rates older than 7 days are flagged; older than 30 days are not used.
- Original amounts are preserved; half-even rounding only to the currency's decimal places.
- A reference rate is not a guaranteed exchange or transfer price.
Visas
- Government sources only, with verification date and links.
- The checklist compares what you declared: met, not met or unknown.
- Information with expired verification is not shown as a current rule.
- We never guarantee eligibility or estimate approval likelihood.
Advertising
Ads (when enabled) appear only on public pages and never change scores. Profiles and preferences are not sent to Google or advertisers.