OverviewModelsWindows › How it works

How the Windows model works Experimental

Can window-replacement demand be predicted at all? An early-stage probe says yes — built on the roofing pipeline as a template.

Status: experimental — not in production delivery. Windows is a validation-only research model across the same seven Florida counties as roofing. There is no ship pipeline; nothing here has been mailed. It reuses the roofing infrastructure wholesale — the same permit-classification labels, the same coverage gate, the same walk-forward fold machine and feature builder — as its template, with only the target swapped to window permits.

The thesis — is window demand even predictable?

The question this model exists to answer is narrow: before committing engineering to a windows product, can we predict who pulls a window-replacement permit in the next six months as well as we predict roofs? Finding #88 ran that probe on the identical roofing universe (FL-7, single-family, individual owner, owner-occupied at T0, eval anchor 2025-10-31) and concluded windows demand is predictable — and the signal is genuine demand, not history autocorrelation: dropping the three windows-permit-history features keeps roughly 94% of the lift.

6.82×
Per-source lift @ 15K vs a random draw from the scored universe (finding #88, all-actions windows target, base rate 0.93%)
0.034
AUC-PR (finding #88) — higher than garage's because windows permits are far more common
~94%
Share of lift that survives dropping all windows-history features — demand signal, not autocorrelation (finding #88)
All-actions windows target, validation-only. Judge a model on lift in context: windows' higher base rate (a common permit) makes its lift naturally lower than a rarer target like garage — compare a model to itself, not across targets by lift alone.

What the model leans on

Where roofing has a dominant physical clock (roof age), windows sits between roofing and the fully-diffuse garage model: owner activity leads, with property age as the physical anchor. A short read of the main signals from finding #88 (full breakdown lives in the model card):

Owner activity

The single biggest feature is months_since_last_any_non_roof_permit (≈10.6% gain) — a home mid-renovation is the home replacing its windows.

Property age & tenure

Build year, home age, and days of ownership. Original windows age out around 15-20 years; new-build (0-9y) homes show roughly 6× lower demand — the reason for the age-15 buy-box.

Place & storms

County regime, neighborhood density, and storm exposure (nearest_storm_name, nearest_storm_km) — impact-window upgrades spike after hurricanes.

This is the high-level read only. The full driver-cluster tables, per-feature gains, lift-by-list-size chart, and audit log are on the model card — not reproduced here.

Shared infrastructure

Windows is the fourth target trained on the roofing machine, with no new code — just the target swapped via the same parameterized retrain config. It borrows three roofing components directly:

The pipeline

The same walk-forward folds, feature builder, and training/calibration flow. Roofing pipeline →

Permit classification

The permit_scope classifier supplies the WINDOWS label that defines the target. Permit classification →

Coverage

The Step-2 coverage gate scopes which jurisdictions have trustworthy permit feeds. Step 2 · Coverage →

Honest caveats

Read these before quoting any number above.

  • Experimental, not shipped. Validation-only. No production delivery; the productionize decision is open.
  • FL-7 only. Trained and evaluated on the seven Florida counties — no claim outside that footprint.
  • Single-fold, age-cutoff un-swept. The eval is one anchor (2025-10-31), not yet 6-window cross-validated; the age-15 buy-box cutoff is domain-reasonable and data-backed but not optimized.
  • Judge by lift, in context. Windows' higher base rate (~0.93%, a common permit) makes its lift naturally lower than rarer targets; compare a model to itself, not across targets by lift alone.
  • Related-signal study is open. Solar-PV does not reliably predict that a home won't reroof once roof age is held constant — see finding #86; it is a related envelope-cross-signal study, not a windows result.

References

Model card Experimental

Full driver clusters, headline numbers, audit findings, anti-signals. Open card →

Finding #88

The windows-target probe: predictable (6.82× lift), demand signal not autocorrelation. Read →

Finding #89

DS audit of garage + windows: leakage-clean, full-prior, and the data-driven buy-boxes. Read →

Finding #86

Solar-PV vs roof-replacement: related envelope-cross-signal study. Read →

Rendered from notes/findings/88_windows_target_model.md + 89 + 86 · experimental model.