How CityFit works.

About

CityFit helps compare cities around the life you want.

CityFit is a personal city-ranking tool for exploring relocation, remote-work, and lifestyle tradeoffs. It combines practical signals like affordability, healthcare, safety, commute friction, and climate with lifestyle signals such as food, culture, outdoors, transit, nightlife, airport access, and daily-life convenience.

The goal is not to name one universal best city. It is to make the tradeoffs visible so different people can see different answers.

Score model

CityFit Score

CityFit Score is the blended recommendation score. It can include Practical Fit, Lifestyle Fit, or both depending on your priority settings.

cityfit_score =
  (
    practical_fit_weight * practical_score
    + lifestyle_fit_weight * lifestyle_fit_score
  )
  / total_fit_weight
CityFit ScoreBlends Practical Fit and Lifestyle Fit according to the overall influence sliders.
Practical FitUses affordability, safety, healthcare, housing, commute, climate, pollution, and purchasing power.
Lifestyle FitUses proxy scores for food, culture, outdoors, transit, airport access, nightlife, and daily life.
Personalization

Priority Sliders

The app shows 0-10 sliders because that scale is easy to understand. Internally, those values are converted to 0-2 priority multipliers before being sent to the API.

0Ignored
5Default importance
10Double importance
Practical layer

Practical Fit

Practical Fit starts with Numbeo-style quality-of-life city metrics, then blends in practical priority features. Higher-is-better metrics are scaled upward. Cost, housing-to-income ratio, traffic, and pollution are inverted so lower real-world values become better feature scores.

practical_priority_score =
  0.15 * purchasing_power_score
  + 0.10 * affordability_score
  + 0.15 * safety_score
  + 0.10 * healthcare_score
  + 0.15 * housing_affordability_score
  + 0.10 * low_traffic_score
  + 0.15 * climate_score
  + 0.10 * low_pollution_score

Housing and remote work

Housing to Income Ratio is shown as the original ratio rather than a normalized score. The remote-work checkbox reduces the low-traffic weight by half because commuting matters less for remote workers.

Lifestyle layer

Lifestyle Fit

Lifestyle Fit combines day-to-day preference scores. Friendliness is blank until there is a legally usable newcomer-integration source, and pace of life remains a categorical label rather than a higher-is-better score.

lifestyle_score =
  0.20 * daily_life_score
  + 0.15 * food_scene_score
  + 0.15 * culture_score
  + 0.15 * outdoors_score
  + 0.15 * transit_score
  + 0.10 * airport_score
  + 0.10 * nightlife_score
Ranking context

Baseline Rank Movement

CityFit calculates a neutral baseline ranking where every priority is set to default importance. Personalized rankings are compared against that baseline so you can see which cities move up or down for your preferences.

rank_difference =
  baseline_cityfit_rank - personalized_cityfit_rank
Data Notice

Use CityFit as a decision-support tool.

Practical metrics are based on CityFit's current cache of city quality-of-life data and lifestyle proxy signals. Confirm salary, rent, tax, healthcare, safety, commute, climate, and pollution details with current local sources before making relocation decisions.