Scoring factor
How to weight community diversity
Weight this if who lives in the town is part of the decision. On the engine that runs by default, the number is not computed from the house or from a fresh census pull. It is a stored index, and most places do not have one.
How hard to weight it
The remote-work preset is the highest, at 15, because the buyer is choosing a place to spend the day, not a school run or a train. The family preset uses 12. Everything else is 8 or below.
A 45-point gap, which is the spread between the lowest and highest stored indexes, is worth 6.75 points at weight 15 and 2.25 points at weight 5. It will not outrank schools or value unless those are weighted lightly.
If you do not want the factor in the decision, keep a small weight rather than a zero. Zero hides it. Five points keeps it on the report. Do not raise it thinking it measures safety, politics, or whether you will like the neighbors. It does not.
What the weight does to the total
Chelsea is stored at 90 and Lexington at 45. A city that is not on the list scores 50, which is above Lexington’s stored index.
| Weight | Effect on the total |
|---|---|
| Weight 15 | Chelsea versus Lexington is a 6.75-point gap. An unlisted city versus Lexington is 0.75 points, in the unlisted city’s favor. |
| Weight 12 | The Chelsea–Lexington gap is 5.4 points. |
| Weight 5 | The same gap is 2.25 points. It breaks ties only. |
The property score is the weighted sum: each factor score times its weight, divided by 100. Weights are scaled to add up to 100 before that sum.
What the score uses
By default an analysis uses the formulas in “What the score uses.” The new scoring engine runs only when FEATURE_USE_NEW_SCORING_ENGINE is on, or when a rollout percentage includes that account. Where that engine differs, it is called out separately. A missing input scores 50. That is a neutral, not a zero, and it can outrank a known weak result.
The default engine returns the stored diversity index for the same city list used by schools and value, and 50 otherwise. The property itself is not an input. Two houses in Newton both score 50, because that is the number stored for Newton, not because the block was measured.
The stored indexes run from Lexington and Naples at 45 up to Chelsea at 90. They are labels in the code, not a Simpson index calculated at request time.
A town you care about that is missing from the list cannot be ranked on this factor. Every house there scores 50, including one next door to a listed city with a very different stored index.
Listed city → the stored index (45–90 on the current table)
Any other city → 50
When the new engine is on
When the new engine is on and census demographics exist, the score starts with Simpson’s index. Group shares for white, black, asian, hispanic, and everyone else are combined as 1 − Σ p², then scaled so 0.8 maps to 100. On top of that, language diversity — one minus the English-only share — is multiplied by 10 and added, and foreign-born percentage ÷ 2 is added, capped at 10. The subfactor rows show weights of 0.7, 0.15, and 0.15, but the total is the sum of the index plus those two bonuses, not a weighted average of the three rows. Without census data the factor scores 50.
The public overview is the methodology page. Where that page says comparables, orientation, or documented updates, the formulas on this page are the ones that run.
Tradeoffs against the other factors
- School quality
On the stored table, the highest school ratings and the lower diversity indexes sit in the same towns. A family preset with schools at 30 and diversity at 12 will still follow the district. If you want the diversity number to compete, it has to be closer to the school weight than 12 is to 30.
- Commute
Several closer-in cities are stored with both shorter commutes and higher diversity indexes. Weighting both up points at the same towns. That is fine if it is what you want. It is not two independent facts on the default engine.
- Value
The stored diversity index does not know the price. A high index in an expensive city still has to pass the value weight. They do not move together by formula.
Mistakes that move the ranking
- Treating 50 as “moderately diverse.” Off the city list it means “not stored.”
- Using a high weight to express values the number does not measure. The default path cannot see your block, your building, or a change since the table was written.
- Reading the enhanced subfactor weights as the math. When that engine runs, the bonuses are added on top of the index. A very high language share can push the total by 10 points after the index is already on a 0–100 scale.
Profiles that lean on this
The other six factors
Set the weight yourself
The builder opens on an even split, or on the platform default if one is saved. It does not assume this factor. If you want a whole profile filled in, start from a buyer preset.
Build your analyzer