Skip to content

Tuning the factors

The weighting panel (FactorWeights.tsx) lets you re-score the entire map and rankings by changing how much each of the 6 feature groups matters to the match. This is scenario exploration, not learned importance — it shows how the neighborhood resemblance shifts under different assumptions about which themes matter.

Each of the 6 groups — Income & wealth, Education, Density & transportation, Age & household, Race & ethnicity, and Retail context — has a slider from 0× to 2×.

  • turns that group entirely off; it will not contribute to the similarity score or appear in feature drivers.
  • (default, “balanced”) is the equal weighting the scoring method uses.
  • doubles the group’s influence.

The score for each tract recalculates immediately and the map re-colors live. Dragging is smooth; the map update is deferred so the interface stays responsive.

Four built-in presets show how weighting shapes discovery:

  • Balanced (1× all groups): the default equal weighting.
  • Affluence-led (income & education at 2×, density at 0.75×, others at 0.5×): emphasizes wealthy, educated, lower-density neighborhoods. Use this to find analogs that share high household income and education but deprioritize urban density.
  • Urbanism-led (density & transportation at 2×, income/age/household at 1×, others at 0.5×): prioritizes high density, strong transit, and walkability. Use this to find urban, car-free neighborhoods.
  • Community-led (age, household type, and race/ethnicity at 1.75×, education/retail at 0.6×): emphasizes the social and demographic character of neighborhoods. Use this to find tracts with similar household composition and ethnic diversity.

Click any preset to apply it. Your custom adjustments override the presets. Click ↺ Reset to balanced (visible when you have custom weights) to return to equal weighting.

Weights are your assumptions about which themes matter, not:

  • Learned importance — the tool has not analyzed which features actually predict the brand’s success.
  • Causal relationships — weighting a group higher does not mean it causes a good match; it is your choice to prioritize it.
  • Sales prediction — even with weighted scenarios, this tool measures neighborhood resemblance only. A high-scoring neighborhood under Affluence-led weighting is not forecast to be profitable; it resembles the brand’s current footprint on those dimensions.

The 6 groups are:

  1. Income, wealth & housing cost — median household income, per-capita income, median home value, median gross rent, poverty rate.
  2. Education — bachelor’s degree or higher (%).
  3. Density & transportation — population density, households without a vehicle, walk/bike/transit commute, renter-occupied housing.
  4. Age & household type — median age, average household size, households with children.
  5. Race & ethnicity — White non-Hispanic, Hispanic/Latino, Asian non-Hispanic (%).
  6. Retail & dining context — points of interest, grocery stores, restaurants, cafés, shopping/apparel (all per km²).

Grouping ensures each theme counts once. Income, per-capita income, home value, and rent are highly correlated (r > 0.7); without grouping, they would act as four separate votes for “wealth.” Grouping them prevents any single theme from dominating even if the brand’s footprint clusters tightly on correlated features.

When you weight a group, you change the distance calculation — the squared standardized deviation within that group is scaled by your weight before averaging across all groups. Setting a group to 0 excludes it entirely. Setting it to 2 doubles its contribution.

Each group’s slider also opens an advanced per-feature layer (the “Advanced” toggle under the group). It exposes one slider per feature within that group, so you can, for example, keep the Income group at 1× overall but push median home value up and poverty down inside it.

The effective weight of a feature is its group weight multiplied by its per-feature weight, and the within-group aggregation becomes a weighted mean of the squared standardized deviations rather than a plain mean. A small dot appears on the “Advanced” toggle when any feature in that group is off its default, so you can see at a glance which groups you have tuned below the surface.

With every per-feature slider left at its default of 1, the scores are exactly the group-weighted scores described above — the advanced layer only changes results when you deliberately move a per-feature slider. Like the group weights, per-feature weights are scenario assumptions, not learned or causal importance.

When you click a tract in the detail panel, you’ll see a robustness badge reporting whether the tract’s high rank is:

  • Robust — the rank holds across all weighting scenarios (equal, each theme removed individually).
  • Fairly robust — the rank is solid but shifts noticeably under some scenarios.
  • Weighting-sensitive — the high rank depends on one or two themes you are emphasizing.

A weighting-sensitive tract is not “invalid” — it simply means that neighborhood resemblance is contingent on your assumptions. If you have changed the weights, compare its rank under the balanced (default) weighting to understand whether it is a universally strong match or scenario-dependent.

A brand like Trader Joe’s has a very tight profile (stores in dense, educated, affluent, urban neighborhoods). The archetype clusters tightly on several features simultaneously. Under balanced weighting, it recovers highly in neighborhoods that pack multiple similarities. Under Urbanism-led, you discover urban tracts that may be less affluent but are highly walkable. Under Affluence-led, you find wealthy tracts that may be less dense but are similarly educated.

None of these scenarios predicts success. Each is a different definition of resemblance — a different answer to the question “which neighborhoods look like Trader Joe’s in the ways I think matter?” You are the expert; the tool shows you the data.

Your weights are encoded in the URL hash. Share a link to send someone your specific scenario — brand, map filters, weights, and selected tract.