TenureOSMARKET RESEARCH
Holland Partner Group

Glossary & data provenance

Plain-English definitions, source provenance, and honest limitations for the Holland Market Research desk. This page keeps the product source-first: every metric, score, forecast, and caveat should be understandable before it is used in a market discussion.

AMetric glossary

Scenario vocabulary

Green Street scenario labels

Charts use short labels for legibility, but every tooltip and guide keeps Green Street's official scenario name and plain-English gloss from the shared scenario vocabulary.

Short labelOfficial Green Street namePlain-English gloss
BaselineBaselinecentral Green Street case
Strong upsideExceptionally Strong Growthupside case with stronger demand and market growth
Mild upsideStronger Near-Term Growthmilder upside case with faster near-term growth
RecessionModerate Recessiondownside case with a softer cycle
SlumpProtracted Slumpweakest case with an extended soft patch
Supply

supply growth

Computed: Annualized apartment inventory / delivery growth from the source series for each metro and scenario where available.

Read it as: Positive supply growth means new competitive units are arriving; high supply without matching demand raises lease-up risk.

Demand

demand growth

Computed: Apartment demand growth from Green Street history/forecast, with public employment and migration features reserved for the long-history challenger panel.

Read it as: Demand growth is the occupancy/rent support side of the equation, not a recommendation by itself.

Balance

supply-demand balance

Computed: Demand growth minus supply growth over the same period, with frequency and source vintage retained in lineage.

Read it as: Positive balance indicates absorption is outrunning new supply; negative balance flags overbuild pressure.

Cycle

cumulative gap

Computed: Running sum of quarterly demand-minus-supply gaps from the available history window.

Read it as: Shows whether a market has accumulated undersupply or oversupply across cycles, not just in the latest quarter.

Research signal

research signal rank + 5 lenses

Computed: IC-backtested private weighted blend of current undersupply (.40), forward demand (.25), supply threat (.15, inverse), valuation (.10), and supply barriers (.10).

Read it as: A source-first prioritization aid for market discussion; use pillar disagreement instead of treating one blended signal as truth.

Scenarios

forecast scenarios

Computed: Green Street 2026Q1 scenario paths. The site renders short legend labels from the shared scenarioDisplay vocabulary while retaining official Green Street names in guides and tooltips.

Read it as: Scenario lines show sensitivity to macro paths; they are not new vintages or realized outcomes.

Universe toggle

Holland targets (9)

Computed: The site universe toggle screens the 37 covered (of the 40-metro board) to the 9 Green Street metros containing Holland house-intel submarkets. The list is derived from the f14/f15 house decks, not chosen by the desk.

Read it as: It hides rows only and never re-ranks: national ranks, source lines, and screen math stay unchanged.

Forecast desk

Window probability (scenario-implied)

Computed: Forecast Desk v1 counts how many of the five Green Street scenarios open or close the metro window by each horizon; see the flip forecaster for the underlying regime-crossing method.

Read it as: Read the scenario count first and the percentage second. The percentage is equal-weighted scenario math, not historical calibration.

Forecast desk

Forecast ledger

Computed: Release-by-release record of explicit metro calls frozen from the forecast feed, including window probabilities, flip-quarter ranges, entry verdicts, and grade-pending status.

Read it as: The ledger is the credibility layer: calls are locked at each release and graded only when the next Green Street vintage lands.

Forecast desk

Decision trigger

Computed: Live Trigger Board review rule tied to evidence movement, such as move to Prepare or refresh land search. See /triggers/ for the current board; status vocabulary is proposed | adopted.

Read it as: A trigger starts a review workflow. It is never an automatic investment decision.

Forecast desk

Adoption pass

Computed: Human review that flips a machine-proposed trigger from proposed → adopted; recorded in data/ref/adopted_triggers.csv.

Read it as: Adoption makes a trigger a standing review rule for the desk. Proposed triggers remain visible but are not yet house-adopted policy.

Forecast desk

Timing value index

Computed: Expandable Forecast Desk row comparing start-now versus wait-4q / wait-8q Baseline lease-up economics in basis points, using the flip forecaster delivery window and an 8-quarter build assumption.

Read it as: Read as relative timing economics only: bps, not dollars. Dollar impact requires deal-level assumptions and is deliberately not shown.

Forecast desk

Revision watchlist

Computed: Challenger-vs-Green-Street disagreement flag where our challenger diverges from the GS rent path by ≥1.5pp and GS sits outside our band; cross-reference the challenger quantile fan.

Read it as: Upward/downward watch is not yet scored — activates with the 2026Q2 vintage. Permits momentum is a driver, never a trigger, and is labeled supporting or conflicting.

Map interaction

Flip pulse

Computed: Map halo shown when the flip forecaster sees a regime flip within 8 quarters under the selected scenario; see the flip-forecaster entries for method detail.

Read it as: Teal pulse = tightening / development window opening. Red pulse = loosening / supply pressure rising. It is a timing alert, not a score.

Map interaction

H badge / Holland footprint

Computed: Gold H badge on the map for metros in the Holland targets (9) universe; the footprint is derived from house decks f14/f15.

Read it as: The badge marks the house-intel footprint only. It cross-references the universe toggle: rows may be hidden by that toggle, but ranks and scores are never recomputed.

Challenger

challenger quantile fan

Computed: Walk-forward challenger model distribution with p10 / p50 / p90 bands, currently cross-checking Green Street rent growth rather than replacing it.

Read it as: Use it as disagreement evidence and uncertainty framing; challenger = cross-check, not ground truth.

Training layer

Training data vs story data

Computed: Two-layer rule: the story stays Green Street plus validated derivations; public history only trains the challenger, which predicts Green Street's own target series.

Read it as: One metric, one voice. Public-history features never appear beside Green Street rent on a product surface; they reach readers only through the challenger model, validation docs, and revision-watchlist drivers.

Entry verdict

Actively source

Computed: Entry screen verdict when fundamentals, liquidity, and delivery-window checks all pass for a market.

Read it as: Green-light sourcing posture for discussion; still an internal research workflow label, not a public investment recommendation.

Entry verdict

Prepare

Computed: Entry screen verdict when the market has a viable timing window but one condition, commonly liquidity, needs work before action.

Read it as: Get the team and evidence ready; do not treat it as an automatic buy/build decision.

Entry verdict

Watch

Computed: Entry screen verdict when the path could improve but fundamentals, liquidity, or window timing are not yet aligned.

Read it as: Keep in the research queue and revisit as the market absorbs supply or transaction depth changes.

Entry verdict

Avoid for now

Computed: Entry screen verdict when multiple entry conditions fail or no start quarter delivers into the target window.

Read it as: A temporary screen-out for this vintage; it is not a permanent market judgment.

Shadow supply

SFR exposure

Computed: Text tier in the league table showing where single-family / build-to-rent permitting may compete with apartment demand.

Read it as: Low, Moderate, or High is shown as text, not color-only; use it as a competition caveat beside the apartment signal.

Shadow supply

SF-share method

Computed: Census-internal ratio: Census BPS 1-unit permits divided by Census BPS 1-unit plus Census BPS 5+ permits over the same CBSA T12 window.

Read it as: One source, one geography. Green Street 5+ permits can be shown as a reference, but are not mixed into this ratio.

Shadow supply

tercile tiers

Computed: Covered markets are split into cross-sectional terciles of SF-share: Low, Moderate, and High.

Read it as: The tier is a relative pressure screen, not a score/rank and not a recommendation.

Shadow supply

CBSA-shared caveat

Computed: Census BPS is CBSA-grain, so division metros can share a parent CBSA and Raleigh-Durham can sum multiple CBSAs.

Read it as: When a market uses shared CBSA geography, the table tooltip names the caveat instead of hiding it.

SFR overlay

SFR overlay

Computed: Coverage-limited Green Street Single-Family Rental sector fundamentals from f06. Rent premium = latest SFR effective rent divided by latest apartment effective rent; supply-growth spread = (latest SFR supply growth minus latest apartment supply_growth_q) × 100; occupancy spread = (latest SFR occupancy minus latest apartment occupancy) × 100.

Read it as: Use it as a covered-market competition overlay beside Shadow supply. Missing SFR or apartment observations render as blank/none, never filled; uncovered metros keep the Census permits proxy only.

House view

Concord overlay

Computed: Holland/Concord Q2 2025 DRAFT target-market deck transcribed at Concord CMA submarket grain: starts, absorption, actively-leasing run rate, 2025-2029 deliveries, under/oversupply, projected occupancy, and 95% timing.

Read it as: Visible only as a collapsed-by-default house-view evidence block on the 7 Western metros; context only, not scored, not ranked, and not blended with Green Street metro numbers.

House intel

Card Counter overlay

Computed: Holland Market Intelligence "Card Counter" 2026Q1 deck parsed from data/raw/Other-data/Holland_Market_Intelligence_2026Q1.pptx by src/gs_pipeline/holland_intel.py at submarket grain.

Read it as: House intel, quarantined — never scored, never blended with GS metro analytics. The deck admits "four of the seven signals are partially stubbed this quarter"; running count vs true count can diverge sharply (Silicon Valley +5.62 vs +0.09).

Pipeline context

Linneman pipeline sensitivity

Computed: Figure 432 multifamily strong-vs-base construction pipeline sensitivity in basis points by MSA from Linneman Letter Vol. 26.2 Summer 2026.

Read it as: Independent third-party estimate; context only, not scored. It can be proposed as a league-table context column later, but is not built into rankings/flips this pass.

Pipeline context

Linneman commentary report

Computed: Third-party commentary generator on the Flask desk: page-cited report from the Linneman Letter with a boxed desk read kept separate from outside commentary.

Read it as: Quarantined from scores. Summarization uses capped mini-tier OpenAI with on-device fallback, and Green Street data is never sent externally.

Top-10 screen

development fundamentals Top 10

Computed: Top-10 development list from top10.json using the IC-backtested research signal and live entry-screen fields.

Read it as: Use as the development review queue; method string is shown on the page before the rows.

Top-10 screen

purchase screen Top 10

Computed: Top-10 purchase list from top10.json for stabilized-below-replacement-cost review.

Read it as: Must be read as a judgment screen (NOT IC-backtested), not as the IC-backed development rank.

BData provenance

One row per source actually used or explicitly planned for Phase 4b. Current critical caveats: Green Street forecast = single 2026Q1 vintage; debt data = national-only; Zillow/Apartment List = shallow; challenger = cross-check, not ground truth.

SourceWhat it providesGeographyEarliest dateFrequencyLicenseRoleKnown limitations
Green Street forecastApartment supply, demand, rent growth scenarios, fundamentals and valuation inputsCovered apartment marketsSingle 2026Q1 vintageQuarterly / scenariocurrent source deliveryprimaryGreen Street forecast = single 2026Q1 vintage; accuracy is unscoreable until later vintages/realizations exist.
Green Street supply / fundamentals / permits filesSupply growth, permits, cap rates, CPPI, market fundamentalsMetro / Green Street marketSource-dependentQuarterly / annual source-dependentcurrent source deliveryprimaryCoverage differs by market and metric; missing or sparse coverage is flagged rather than silently filled.
CM Alert CMBS + CRE CLO databasesSecuritized debt issuance and multifamily share contextNational onlySource-dependentQuarterly aggregatecurrent source deliverycontextdebt data = national-only (never metro); deal files are not joined to individual markets.
FRED / Census BPS / BLS / HUD / ACS / IRS migrationPlanned free-public long-history permits, employment, wages, FMR, income, population, household formation, migration featuresMetro / CBSA / county via market_crosswalk.csvTarget late-1980s to early-1990s where availableMonthly / quarterly / annual native frequenciesfree-publicplanned primary/contextPhase 4b only; annual series are never fabricated to monthly, and unmatched metros must be reported.
ZillowZORI multifamily and ZHVI recent rent/value breadthMetro / Zillow geographyZORI ~2015; ZHVI ~2000Monthlyfree-public CSVvalidationZillow/Apartment List = shallow (2015/2017+); useful for validation and recent breadth, not deep cycle training.
Apartment ListRecent rent and vacancy measuresMarket / metro~2017Monthlyfree-public CSVvalidationShallow history only; not a substitute for licensed apartment-specific absorption history.
f16 — Census BPS monthly permitsMonthly permits history for training features. CBSA, 2004-01→2023-12 ingested; 1988–2003 acquired-but-deferred pending MSA→CBSA crosswalk; metro grain discontinued after 2023.CBSA2004-01→2023-12 ingested; 1988–2003 deferredMonthlyfree public training sourcetraining layer — never a story surface; reaches readers only through the challenger model, validation docs, and revision-watchlist drivers.One-voice rule: public permits train/check the challenger and never replace Green Street story metrics.
f17 — BLS CES employmentMonthly employment history for training features with explicit metdiv/CBSA series.metdiv / CBSA series1990→Monthlyfree public training sourcetraining layer — never a story surface; reaches readers only through the challenger model, validation docs, and revision-watchlist drivers.Used as macro/labor-market training context for the challenger, not as a product-surface demand line.
f18 — FHFA all-transactions HPIQuarterly all-transactions house-price index; nine large markets pinned as division proxies.Metro / division proxy where pinned1975→Quarterlyfree public training sourcetraining layer — never a story surface; reaches readers only through the challenger model, validation docs, and revision-watchlist drivers.Related-asset sanity check only; it is not apartment rent, occupancy, or supply evidence.
f19 — Zillow ZORIMonthly observed rent index for training validation; CBSA grain with shared-CBSA flags.CBSA2015→Monthlyfree public training sourcetraining layer — never a story surface; reaches readers only through the challenger model, validation docs, and revision-watchlist drivers.One metric, one voice: ZORI trains/validates the challenger but never appears beside Green Street rent on product surfaces.
Challenger modelRent-growth p10 / p50 / p90 fan and disagreement checksCovered markets with feature historyFeature-window dependentQuarterly model panelinternal model outputcross-checkchallenger = cross-check, not ground truth; with more true apartment cycles the current AR(4) verdict could flip.
Holland Market Intelligence "Card Counter" 2026Q1House pipeline intelligence: running count, true active-signals count, project pipeline, HPG projects, and supply-wave status split. Source: data/raw/Other-data/Holland_Market_Intelligence_2026Q1.pptx; parsed by src/gs_pipeline/holland_intel.py.Submarket (17 West Coast submarkets → 9 target metros)2026Q1Quarterly house deckprivate house intelhouse intel, quarantined — never scored, never blended with GS metro analyticsthe deck admits "four of the seven signals are partially stubbed this quarter"; running count vs true count can diverge sharply (Silicon Valley +5.62 vs +0.09).

CEvidence & Disagreements

The desk shows its tensions. These are independent checks, validation gaps, and transcription-quality records that help reviewers see what held, what disagreed, and where the next diligence hour belongs.

Self-audit

Census validation verdicts

PLAUSIBLE / PLAUSIBLE

Inventory back-out is directionally validated against ACS 5+ stock: log-log inventory correlation 0.967. Equilibrium occupancy is directionally validated against Census HVS rental vacancy: correlation 0.61. Flagged tensions stay visible: SLC / RIC / COL / CHA / IND unit counts run hot; Boston equilibrium vacancy is inverted vs Census.

Source: docs/census-validation.md

Self-audit

f07 cross-check

Available on request

The generated f07 cross-check artifact is gitignored, so this client-visible surface does not quote its numbers. Ask the desk to emit a committed copy before publishing any f07 deltas.

Source: src/gs_pipeline/analytics.py writes data/processed/analytics/f07_crosscheck.json (gitignored)

Self-audit

Challenger disagreement

Highest divergence = highest research value

Top-5 mean absolute divergence: San Jose 4.9pp, Raleigh-Durham 4.1pp, San Francisco 3.2pp, Oakland/East Bay 2.7pp, Tampa/St. Petersburg 2.7pp. Bottom-3: Austin 0.6pp, Philadelphia 0.5pp, Charlotte 0.4pp. Disagreement is not a defect; it is where the next analyst hour is worth the most. Retrained with f16–f19 public history (challenger v2): AR(4) still wins; the added features degraded the learned models (LightGBM pinball 0.01525 vs 0.01462; torch 0.01679 vs 0.01552). Re-judge triggers: 2026Q2 vintage labels, vendor submarket data.

Source: reports/cross_market/challenger_disagreement.csv + docs/challenger-v2-report.md

Self-audit

Trade-out validation

Three columns of truth agree on direction/rank, not level

HPG portfolio trade-outs, deck-printed GS asking-rent YTD, and the desk panel GS effective-YoY series agree directionally; level gaps are explained and retained: 4.7pp series-grain gap and +2.6pp portfolio-leads-market gap.

Source: data/ref/hpg_concord/p03_hpg_tradeouts_ytd.csv + src/gs_pipeline/tradeout_validation.py

Self-audit

Vintage monitor status

1 vintage held

Green Street forecast archive currently has 1 vintage held (2026Q1); the revision monitor activates on the next GS release. Until then, forecasts are displayed as scenarios, not backtested accuracy claims.

Source: src/gs_pipeline/vintages.py + src/gs_pipeline/config.py

Self-audit

Extraction integrity registry

0 mismatches in recorded f14/f15 checks

Concord/Linneman source CSVs carry provenance header rows and spot-check notes. Recorded f14 checks: p03 60d 5 cells; p03 YTD 5 cells + GS column; p05 aggregate totals cross-check; p06 8 cells + totals row; p07 comparison table; p08 8 cells + totals row; p09 10 cells + aggregate row; p10 8 cells + totals row; Linneman F432 6 cells + title/header. f15 Card Counter checks: leaderboard cross-check 17/17 submarkets, 0 mismatches; supply wave reconciles to the deck's ~428K (428,100 units); build fails if the deck's submarket→metro mapping stops matching HOLLAND_TARGET_METROS. Unreadable cells are left blank or -- where printed, never guessed.

Source: data/ref/hpg_concord/*.csv; data/ref/linneman/f432_pipeline_sensitivity.csv; data/raw/Other-data/Holland_Market_Intelligence_2026Q1.pptx; src/gs_pipeline/concord_overlay.py; src/gs_pipeline/linneman_sidecar.py; src/gs_pipeline/holland_intel.py

Self-audit

Training data validation

Public-history layer validates as challenger training context, not story data

Overlap checks versus Green Street target series: permits corr 0.984; employment corr 0.893; ZORI corr 0.925 with Minneapolis 0.45 flagged; FHFA corr 0.302, labeled related-asset sanity check only.

Source: docs/training-data-validation.md

DReserved / future data

Current outputs are built on free public data plus the current Green Street delivery. These licensed feeds, if secured, would raise fidelity in the specific areas below; until then, they remain reserved and outside the pipeline.

CoStar

Status: not-yet-licensed; do not scrape or ingest

Unit-level supply, construction, leasing, absorption, and rent evidence across broader apartment coverage.

  • Deeper apartment-specific history could add cycles and improve challenger training.
  • Metro breadth could expand the map/ranking from 40 to 100+ markets.
  • Measured absorption could replace demand proxies in the balance read.

RealPage

Status: not-yet-licensed; do not scrape or ingest

Apartment operating fundamentals, effective rents, occupancy, supply and absorption depth by market/submarket.

  • True effective rent and absorption history would tighten supply-demand balance.
  • More cycles may change the challenger model selection and AR(4) verdict.
  • Submarket-level detail would improve development-screen specificity.

Moody's CRE (REIS)

Status: not-yet-licensed; do not scrape or ingest

Long apartment rent, vacancy, inventory, and market fundamentals history, often back to the 1990s.

  • History to the 1990s would add recession/recovery cycles.
  • Coverage beyond the current Top 40 would support a fuller national market map.
  • Apartment-specific vacancy and absorption could replace coarser public proxies.