Methodology
Readiness asks one question: are the ingredients for a revival present? It is slow-moving and graded A to F. This page is written so a town official can argue with it, line by line.
The dataset
Download the full dataset (CSV): one row per town with every metric, its period and suppression flag, and the score. Licensed CC BY 4.0; the underlying sources keep their own terms, listed on Sources. Generated 2026-09-18 with methodology version v1.
Six factors and their weights
| Factor | Weight | What it asks | Inputs |
|---|---|---|---|
| Access | 25% | How easy it is to reach the city, a regional hub and a train. | Drive to New York City, Drive to nearest regional hub, Nearest rail station |
| Building stock | 15% | Whether there is a pre-war fabric worth restoring. | Homes built before 1940, Historic district present |
| Main street | 15% | How much storefront activity already exists per resident. | Businesses per 1,000 residents |
| Price headroom | 15% | Whether prices leave room to rise without having already been found. | Median home value, Metro median home value |
| Services | 15% | Broadband, families with children, and a hospital within reach. | Broadband subscription, Share under 18, Hospital within 20 minutes |
| Civic capacity | 15% | Whether the state has backed the downtown with a revitalization award. | Latest downtown award, Latest award year |
A factor's score is the mean of its usable inputs, each normalised to 0–1 by the curve below. Readiness is the weighted sum of factor scores, on a 0–100 scale, renormalised over the factors that have at least one usable input.
Every curve
Each input passes through one named curve. If a curve cannot be explained in a sentence it is wrong, so here is the sentence.
Access
- Drive to New York City (Routed driving time to Grand Central Terminal, off-peak (OSRM over OpenStreetMap).)
drive_min_nyc: lower is better; scores 1 at 60 min or less, falling in a straight line to 0 at 240 min. - Drive to nearest regional hub (Routed driving time to the nearest of Albany, Utica, Poughkeepsie, Kingston, Newburgh, Middletown or White Plains.)
drive_min_regional_hub: lower is better; scores 1 at 15 min or less, falling in a straight line to 0 at 90 min. - Nearest rail station (Straight-line distance to the nearest Amtrak or Metro-North station.)
miles_to_rail_station: lower is better; scores 1 at 2 mi or less, falling in a straight line to 0 at 30 mi.
Building stock
- Homes built before 1940 (Share of housing units built in 1939 or earlier (ACS 5-year, B25034).)
pre1940_share: higher is better; scores 1 at 0.6 or more, falling in a straight line to 0 at 0.1. - Historic district present (Whether a National Register historic district lies within the place.)
has_nrhp_district: 1 when a National Register historic district lies within the place, otherwise 0.
Main street
- Businesses per 1,000 residents (Mapped storefront businesses per 1,000 residents.)
osm_business_per_1k: higher is better; scores 1 at 20 per 1,000 or more, falling in a straight line to 0 at 2 per 1,000.
Price headroom
- Median home value (Median value of owner-occupied homes (ACS 5-year, B25077).)
median_home_value divided by metro_median_home_value. price ratio to the metro median: cheapest is not best: a town priced well below its metro has headroom, one priced far below it has no demand yet, and one at or above it has already been found; scores 1 at 0.6, and 0 at or below 0.25 and at or above 1.2, with straight lines between. - Metro median home value (The metro-area median where the town lies in one, otherwise the county median.)
Used as the denominator for price headroom; it has no curve of its own.
Services
- Broadband subscription (Households with a cable, fiber-optic or DSL subscription (ACS 5-year, B28002). Not a speed measure.)
broadband_100_share: higher is better; scores 1 at 0.9 or more, falling in a straight line to 0 at 0.5. - Share under 18 (Residents under 18 over total population (ACS 5-year, B09001 / B01003).)
under_18_share: higher is better; scores 1 at 0.25 or more, falling in a straight line to 0 at 0.12. - Hospital within 20 minutes (Whether the nearest hospital is a 20-minute drive or less.)
hospital_within_20min: 1 when a hospital is within a 20-minute drive, otherwise 0.
Civic capacity
- Latest downtown award (Amount of the most recent DRI or NY Forward award; zero when none.)
dri_award_amount: higher is better; scores 1 at 1e+07 USD or more, falling in a straight line to 0 at 0 USD. - Latest award year (Year the most recent DRI or NY Forward round was announced.)
dri_award_year: 1 when the award is at most 3 years old, fading in a straight line to 0.3 at 10 years and staying there. Only applies to towns that have won an award; its absence does not reduce coverage.
Grades
Grades are curved within population bands, because Census sample quality differs sharply between small villages and cities. Towns under 5,000 residents are ranked against each other; towns at or above it likewise. Within a band the percentile cut-offs are:
- A: 90th percentile and above
- B: 75th percentile and above
- C: 50th percentile and above
- D: 25th percentile and above
- F: everything below the D cut-off
Coverage and missing inputs
A missing input never scores zero. It is left out of its factor, and the town's coverage (usable inputs over applicable inputs) drops. Below 60% coverage the page is published with its data and no grade, because a grade on that little evidence would be a guess.
Suppression
Any American Community Survey figure whose margin of error exceeds 40% of the estimate is kept but marked suppressed: it is shown as not available at this sample size and excluded from the score. Permit rates are suppressed when any of the three years was reported for fewer than twelve months.
A suppressed value is not the same as a missing one: the estimate exists but its margin of error is too wide to stand on. The site says "not available at this sample size" for the first and "not available" for the second, and never shows a zero for either.
Sanity bounds
Before anything is published, every metric is checked against a wide sanity range; a value outside it stops the run rather than publishing a unit or parsing mistake.
Show the ranges
| Metric | Low | High |
|---|---|---|
| Median home value | 10000 | 5000000 |
| County median home value | 10000 | 5000000 |
| Metro area median home value | 10000 | 5000000 |
| Metro median home value | 10000 | 5000000 |
| Median gross rent | 200 | 6000 |
| Median household income | 10000 | 500000 |
| Vacant housing share | 0 | 0.6 |
| Homes built before 1940 | 0 | 1 |
| Broadband subscription | 0 | 1 |
| Poverty rate | 0 | 0.8 |
| Commutes over an hour | 0 | 1 |
| K-12 enrollment | 0 | 20000 |
| Residents under 18 | 0 | 30000 |
| Population (ACS) | 500 | 60000 |
| Share under 18 | 0 | 0.7 |
| K-12 enrollment change | -0.9 | 3 |
| Under-18 population change | -0.9 | 3 |
| Population | 500 | 60000 |
| Population change since 2020 | -0.5 | 1 |
| Housing units permitted | 0 | 3000 |
| Months reported | 0 | 12 |
| Units permitted per 1,000 residents | 0 | 80 |
| Zillow home value index | 20000 | 5000000 |
| Zillow observed rent | 300 | 8000 |
| Historic districts | 0 | 30 |
| Historic district present | 0 | 1 |
| Nearest rail station | 0 | 120 |
| Main street businesses | 0 | 5000 |
| Businesses per 1,000 residents | 0 | 300 |
| Drive to New York City | 15 | 420 |
| Drive to nearest regional hub | 0 | 240 |
| Drive to nearest hospital | 0 | 120 |
| Hospital within 20 minutes | 0 | 1 |
| Straight-line miles to NYC | 10 | 300 |
| Straight-line miles to nearest hub | 0 | 150 |
| State downtown awards | 0 | 5 |
| Latest downtown award | 0 | 20000000 |
| Latest award year | 2016 | 2030 |
Known limits
- Broadband is a subscription share from the Census, not a speed tier; open speed data sits behind a login we do not use.
- Drive times are off-peak routed estimates over OpenStreetMap; straight-line distances are kept as separate figures and never substituted.
- State downtown awards are read from ny.gov program pages; an amount is taken from the page only when it matches a size the programs actually pay, otherwise the program's standard award is recorded.
- Zillow does not cover every village. Where it does not, the figure is missing, not estimated.