← Research catalog

S43 / REAL ESTATE AND PROPERTY MANAGEMENT

A countywide score can hide local valuation risk.

Spatial boosting does not establish a clear accuracy advantage over a simpler property model. Near-target countywide intervals still leave substantial local coverage gaps.

Evaluated public-data studyResearch code ↗Executive summary ↓

24,551 final sales · 23,898 parcels · April–December 2025 · fixed April 2024 characteristics snapshot

01 / DECISION · EXECUTIVE SUMMARY

Require local evidence before trusting the price interval.

A real-estate analytics leader needs more than a plausible price. The estimate must communicate where it is dependable and where it needs further review. On later Cook County sales, the flexible spatial model’s small accuracy gain over a regularized property regression is inconclusive.

17.29%spatial model median error
17.50%hedonic regression median error
89.8%countywide coverage of 90% bands

The local result changes the decision.

In the historical Hyde Park township cohort, those nominal 90% bands cover only 70.1% of sales. That assessment township is larger than the familiar neighborhood of the same name. A countywide average cannot substitute for a local reliability check.

Small gains do not justify false precision.

The spatial-versus-hedonic error difference is -0.21 percentage points, with a 95% interval of -0.53 to +0.18. The result does not establish a clear model upgrade. This is a historical research comparison, not a current appraisal or an individual property quote.

02 / IMPLICATION

Location helps prediction; it does not guarantee local coverage.

Removing location from the boosted model raises median percentage error to 26.48%. Geographic information is useful, but a simpler model with regularized location effects remains competitive. Both principal models tend to underpredict later sales, with median predicted-to-observed price ratios around 0.93.

Use the simpler model as a serious deployment comparator. Assess error and interval coverage by geography and property type, and route unusual or poorly supported cases for further assessment. This study has not tested an operational review process or measured savings.

03 / EVIDENCE

Compare future sale records with a fixed, earlier snapshot.

The final cohort has 24,551 sale records, 23,898 distinct parcels and 331 geographic grid cells. Repeated sales remain clustered in uncertainty estimates.

April–December 2025 · final historical sales
ModelMedian percentage error95% intervalLog-price RMSE
Local training-sale median22.63%21.59–23.88%0.417
Regularized hedonic regression17.50%16.69–18.49%0.340
Spatial gradient boosting17.29%16.42–18.36%0.337
Physical attributes only26.48%25.23–27.68%0.488

Median absolute dollar error is about $61,000 for both principal models. Spatial boosting’s countywide median 90% prediction-band width is about $384,244. That wide range is a material part of the result.

HISTORICAL PROPERTY EXPLORER

Does the uncertainty hold in this local market?

Select a historical township and building-size group. Every number comes from evaluated sales; this is not an address-level appraisal or a current market quote.

17.29%median absolute percentage error
89.8%observed interval coverage
24,551held-out sales in this group

23,898 distinct parcels · 20,846 earlier training sales in the same township/size group. These are cohort comparables, not a manually adjudicated set for an individual home.

Empirical coverage is shown without a future guarantee. This selection changes the evidence shown, not the fitted model or calibration.

Historical assessment-township cohort mapDots are aggregate sale-cohort centroids, not property locations or township boundaries. Use the township selector or focus a named dot and press Enter. Map colors use all-size cohorts at the selected model and nominal coverage.42.15°N88.23°W41.98°N88.06°W41.82°N87.89°W41.65°N87.72°W41.48°N87.56°WBarrington · 94.8% coverage · 172 salesBerwyn · 92.2% coverage · 269 salesBloom · 87.9% coverage · 694 salesBremen · 90.4% coverage · 887 salesCalumet · 71.4% coverage · 84 salesCicero · 90.2% coverage · 184 salesElk Grove · 98.1% coverage · 481 salesEvanston · 93.7% coverage · 271 salesHanover · 98.9% coverage · 663 salesHyde Park · 70.1% coverage · 1309 salesJefferson · 91.8% coverage · 1993 salesLake · 78.6% coverage · 2879 salesLake View · 89.0% coverage · 410 salesLemont · 97.6% coverage · 207 salesLeyden · 95.2% coverage · 541 salesLyons · 91.9% coverage · 738 salesMaine · 96.8% coverage · 867 salesNew Trier · 92.9% coverage · 551 salesNiles · 96.6% coverage · 586 salesNorth Chicago · 98.6% coverage · 141 salesNorthfield · 92.3% coverage · 691 salesNorwood Park · 97.0% coverage · 203 salesOak Park · 92.9% coverage · 322 salesOrland · 97.9% coverage · 840 salesPalatine · 98.2% coverage · 776 salesPalos · 96.3% coverage · 356 salesProviso · 89.7% coverage · 985 salesRich · 91.1% coverage · 805 salesRiver Forest · 96.5% coverage · 85 salesRiverside · 97.8% coverage · 136 salesRogers Park · 94.4% coverage · 124 salesSchaumburg · 98.5% coverage · 792 salesSouth Chicago · 89.4% coverage · 207 salesStickney · 94.3% coverage · 262 salesThornton · 84.0% coverage · 1313 salesWest Chicago · 76.6% coverage · 773 salesWheeling · 95.5% coverage · 954 salesWorth · 97.0% coverage · 1000 salesTownship cohorts · all building sizesN ↑
Copper: observed coverage more than 5 percentage points below the selected nominal level. Slate: remaining cohorts. Dot size reflects sale count. This is a centroid map, not a boundary map. Historical townships differ from present-day neighborhoods; selecting a dot resets the size group.

Historical prices and the model’s uncertainty

All townships · All sizes · 90% nominal bands
Observed sale-price median$359,900
Observed 10th–90th percentile range$147,500–$850,000
Median predicted price$338,189
Median individual prediction-band endpoints$196,829–$581,073
Observed cohort price spread and median individual prediction bandHistorical sale-price distribution (USD)Median individual 90% prediction band (USD)$0k$223k$446k$669k$893k
Navy: observed 10th–90th percentile sale range with median. Copper: medians of individual prediction-band endpoints and predictions. The two ranges answer different questions; neither is a confidence interval for this township’s market value.

At least 30 final sales are required for each displayed group. Global calibration uses 5,828 earlier parcels. Wider nominal intervals change the saved interval endpoints and measured coverage; they do not improve the model’s point accuracy. No personal sale records or exact property locations are displayed.

Geographic transfer and previously unseen parcels
Supplementary populations · not replacements for the primary cohort
TestModelSalesMedian error90% coverage
Unseen spatial cellsRegularized hedonic regression5,06419.24%86.6%
Unseen spatial cellsSpatial gradient boosting5,06418.68%88.9%
Previously unseen parcelsLocal training-sale median22,93822.16%89.7%
Previously unseen parcelsRegularized hedonic regression22,93816.69%90.4%
Previously unseen parcelsSpatial gradient boosting22,93816.46%90.8%
Previously unseen parcelsPhysical attributes only22,93826.47%89.9%

The spatial test excludes 60 final grid cells from fitting, tuning and calibration. The parcel test excludes every final parcel previously present in fitting or calibration. Their populations differ from the primary cohort, so their scores are not interchangeable.

Lowest observed township coverage and the older assessment benchmark
Spatial model · five lowest-coverage township groups
TownshipSalesMedian error90% coverage
Hyde Park1,30935.7%70.1%
Calumet8434.7%71.4%
West Chicago77326.4%76.6%
Lake2,87927.4%78.6%
Thornton1,31324.0%84.0%

These are exploratory diagnostics, not separately confirmed hypotheses. The frozen prior-year board assessment ×10 is available for 24,498 final sales; 53 lack a positive value. Its median percentage error is 35.09% on that available-case subset. Older tax assessments are not current appraisals or ground truth, and this comparison is not a review of the Assessor’s present operations.

500 paired .03-degree spatial-grid cluster bootstrap draws retain parcel repeats. Split-calibration log-residual bands use finite-sample order statistics; temporal/spatial dependence means empirical coverage is reported, not guaranteed.

04 / DATA

Resolve the property grain before interpreting the price.

The source snapshot contains 1,098,988 improvement/card rows. Restricting it to single-family, single-card, single-land-line and non-prorated properties produces 878,069 unique parcels. Sales are joined many-to-one to those parcels, so a price is never replicated across building cards.

The public sales extract contains 132,773 records from May 2024 through December 2025. Multi-parcel transfers and publisher deed/duplicate/low-price flags exclude 34,637. Another 45,918 do not match the eligible property snapshot; fixed price and area bounds remove 953 more. The analysis covers prices of $50,000–$3 million, buildings of 500–10,000 square feet and land of 500–200,000 square feet.

The characteristics file was last modified April 10, 2024 and describes 2023 records. It predates every included sale. Development uses May–October 2024; November–December supplies validation. Final fitting uses 20,846 May–December sales. January–March 2025 supplies 5,828 calibration parcels, followed by the untouched April–December final cohort.

Sale records were retrieved in September 2026 and may include corrections. Historical ingestion timestamps are unavailable: pre-sale features are verified, but this is not a reconstructed real-time reporting system. Buyer and seller names were excluded from the sales request. No addresses, parcel identifiers or exact property coordinates are published.

Sources: Cook County Assessor’s published model inputs and Parcel Sales. The County terms disclaim accuracy/completeness warranties and endorsement. No separate Creative Commons license is asserted.

05 / METHOD & LIMITATIONS

Keep calibration separate and test geographic transfer.

The local comparator uses earlier neighborhood sale medians with township and county fallbacks. The hedonic model estimates log prices from physical characteristics and regularized location categories. Spatial gradient boosting adds flexible relationships using coordinates and township; validation selects 31 leaves from the frozen 15-versus-31 comparison.

Training-only transformations impute numeric values and encode categories. Later assessments, closing dates, current household characteristics and post-snapshot property changes are excluded. A physical-only ablation measures what changes when location is removed.

Prediction intervals use absolute log residuals from a separate calibration period and a finite-sample order statistic. The 80%, 90% and 95% settings are fixed before final evaluation. Geographic dependence and market drift mean those nominal levels are not guaranteed for a particular property or future market.

  • A retrospective sale-date split cannot reconstruct historical sale-ingestion availability.
  • Properties with multiple cards, land lines, parcel bundles or prorations are excluded; stated price/area bounds restrict generalization.
  • The snapshot becomes stale as properties and markets change; later renovations are not observed.
  • Calibration guarantees require exchangeability that geographic dependence and market drift can violate.
  • Group median interval endpoints are summaries of individual bands, not confidence intervals for group market value.
  • No causal effect, current address-level appraisal, tax appeal recommendation or realized commercial saving is claimed.
  • Independent technical review is pending.
Frozen calendar, spatial and interval protocol ↗

06 / CODE

Follow the result back to the frozen inputs.

Run S43-a92f1ea2-98e410fd
Analysis commit a92f1ea2f8e5f77ebb10775722577f8f98162307

git clone https://github.com/mpgibb/michael-gibb-research.git
cd michael-gibb-research
uv sync --frozen
uv run python -W error studies/S43/study.py
uv run python scripts/report_s43.py
uv run python -W error -m unittest discover -s tests -v

Fixed seeds, locked dependencies and hashes for the snapshot and 20 monthly sale extracts. Mutable API responses must match the frozen checksums. Tests cover parcel grain, timing, interval order statistics, aggregation, suppression and independent reconstruction of primary uncertainty. Independent technical review is pending.