What we can and cannot evidence

Evidence coverage by decision type

For each decision type below: how much of its required-evidence list is real, grain-appropriate evidence in this platform today, derived live from the evidence registry — never hand-typed, never edited after the fact to improve a number. This is not a confidence score: there is no single figure combining coverage, freshness, agreement, and source quality (see the note at the bottom of this page). Unflattering numbers ship as-is — a low score with named gaps is a roadmap, and it is what makes the high scores believable.

36 of 63 required-evidence items covered, across 7 decision types

This total sums each decision type's blended figure, including the county+metro set-union for any "either"-grain decision type below — it is a portfolio-level count, not a claim about what any single user gets for one decision. See each decision type's own headline for that.

·Export:CSVJSONREADME
Site selection (facility/plant siting)
Grain: County or metro
3 of 10 county·2 of 10 metro
no single-grain user gets the blended 5 of 10 — see below
Observed 1Derived 4Missing 3
The blended total across either grain is 5 of 10 — achievable at no single grain (see the headline above, not this number). "Either" grain credits real evidence at ANY grain (not dual-grain existence, not an average): of these blended-covered items, 0 exist at both county + metro grain, 3 county-only, 2 metro-only.
GDP growth above national/provincial benchmarkcore(metro grain)
Covered · Derived
Increasing residential building permits (construction-activity momentum)core(metro grain)
Covered · Derived
Industrial land cost below regional mediancore(metro grain)
A licensed, metro-comparable industrial land series and ratified peer-region definition are integrated.
Gap · Missing
Expanding freight volumescore(metro grain)
A verified metro-attributed freight-volume time series is ingested for a comparable period.
Gap · Missing
Fewer than 15 large civil-construction contractors (construction capacity/competition)core(metro grain)
A licensed and verified private-company operating-market and revenue dataset is integrated.
Gap · Missing
Highway/interstate accesssupporting(county grain)
Covered · Derived
Port accesssupporting(county grain)
Covered · Derived
Rail accesssupporting
No rail-access/rail-distance metric exists anywhere in this platform — scripts/build-transport-access.js computes distance to the nearest interstate and port only (registry-metrics.json's 'interstate'/'port' entries). A genuine, unfilled gap for a logistics-driven siting question.
Gap
Affordable/available labour (wage level)supporting(county grain)
Covered · Observed
Proximity to customers/demand centerssupporting
No travel-time-to-market or customer/demand-density series exists in this platform; distance is only computed to transport infrastructure (interstates, ports), never to markets or customers.
Gap
Choosing a specific facility or plant location. requiredEvidence's core items are the 5 canonical criteria of the product's own purpose-built site-selection decision engine (analyze_place_decision, S-D1 — docs/HANDOFF-SD1.md); supporting items are persona 09's ('Site-selection consultants') own literal question in web/lib/stakeholder-docs/src/coverage.html: "Locations that maximize logistics efficiency: highway access, rail, ports, industrial land, labour availability, affordable wages, proximity to customers."
Market expansion (new-location screening)
Grain: County
7 of 9
core 3/3 · supporting 4/6
Observed 1Derived 6
Income growing faster than cost of living (affordability trend)core
Covered · Derived
Increasing business formationcore
Covered · Derived
Limited competition in target industry (sector concentration)core
Covered · Derived
Commercial lease ratessupporting
No commercial lease-rate series exists in this platform (web/lib/stakeholder-docs/src/coverage.html persona 08 names this a gap).
Gap
Favourable municipal tax ratessupporting
No municipal/local tax-rate series exists in this platform (web/lib/stakeholder-docs/src/coverage.html persona 08 names this a gap).
Gap
Population growth (market-size trajectory)supporting
Covered · Derived
Overall county economic growth (GDP CAGR)supporting
Covered · Derived
Establishment density (retail/commercial saturation, an alternate competition lens)supporting
Covered · Derived
Labour availability (unemployment rate)supporting
Covered · Observed
A business choosing a new city/county to expand into. Core items are persona 08's ('Business owners & expansion teams') own literal question in web/lib/stakeholder-docs/src/coverage.html: "Cities with growing income, increasing business formation, below-average lease rates, favourable municipal taxes, limited competition in my industry." Supporting items add standard market-sizing/workforce-availability context beyond that literal quote.
Real-estate development siting
Grain: County
4 of 8
core 3/3 · supporting 1/5
Observed 1Derived 3
Household income growing faster than home prices (affordability trend)core
Covered · Derived
Rising industrial employment (sector concentration used as a proxy — a location quotient measures concentration, not raw employment growth)core
Covered · Derived
Low residential vacancycore
Covered · Derived
Industrial (non-residential) vacancysupporting
No industrial/commercial vacancy series exists; the only registered vacancy_rate is ACS residential vacancy (web/lib/stakeholder-docs/src/coverage.html persona 06: 'gap — paid/PDF only').
Gap
Shortage of serviced industrial land (availability/zoning, distinct from price)supporting
No serviced-industrial-land inventory/zoning dataset exists. Distinct from the registered 'industrial_land_below_regional_median' decision criterion, which tracks PRICE relative to a regional median, not availability or zoning status (web/lib/stakeholder-docs/src/coverage.html persona 06: 'gap').
Gap
Expanding infrastructure investmentsupporting
No infrastructure-investment/capital-budget series exists (web/lib/stakeholder-docs/src/coverage.html persona 06 tags this a procurement-data gap).
Gap
Property value levelssupporting
Covered · Observed
County-grain residential building-permit growth trendsupporting
get_place exposes a raw permit LEVEL at county grain (residential_permits) but no registered growth/CAGR axis exists there — only the metro-mode permits_cagr axis is registered (docs/HANDOFF-SREG1.md: 'county-grain permits are a LEVEL only ... out of this packet's derived universe').
Gap
Choosing where to develop residential/industrial real estate. Core items are persona 06's ('Real-estate developers') own literal question in web/lib/stakeholder-docs/src/coverage.html: "Cities where household income grows faster than home prices, with rising industrial employment, low industrial vacancy, expanding infrastructure, and a shortage of serviced industrial land." Supporting items add the persona's own named gaps plus standard property-market context.
Acquisition target-market screening
Grain: Metro
2 of 8
core 1/5 · supporting 1/3
Observed 1Derived 4
Metro GDP growth above national/provincial averagecore
Covered · Derived
Commercial land price below comparable marketscore
No commercial land price series exists at any grain. Distinct from the registered 'industrial_land_below_regional_median' decision criterion (itself missing), which is industrial-specific — 'commercial' land is a broader, separately unmodeled category.
Gap
Metro population growth above 2%/yearcore
"pop_cagr" is a real registry entry (evidenceClass: derived) but exists only at county grain — this decision operates at metro grain, so it is not counted as covered here.
Grain mismatch · Derived
Target-sector companies in a specific revenue band (e.g. $20-100M)core
Out of this registry's scope — company revenue-band screening is a real, supported capability (screen_companies), but this artifact registers only place_metric and decision_criterion evidence, not company-side facts. See docs/HANDOFF-EVCOV1.md's known limitations.
Gap
No single competitor holding more than 20% market sharecore
Out of this registry's scope, same reason as the revenue-band item above. The closest existing feature is get_place's employer/GDP diversification percentile (web/app/places/[fips]/page.tsx, divers.pctile), which is not registered as a place_metric in v1 (docs/HANDOFF-SREG1.md scoped 'diversification' out of initial registration) and, even if it were, measures broad economic diversification rather than one named competitor's share within a specific industry.
Gap
Metro residential building-permit growth (construction momentum)supporting
Covered · Derived
Target-sector concentration (location quotient)supporting
"lq" is a real registry entry (evidenceClass: derived) but exists only at county grain — this decision operates at metro grain, so it is not counted as covered here.
Grain mismatch · Derived
Labour cost (average wage) in the target marketsupporting
"wage" is a real registry entry (evidenceClass: observed) but exists only at county grain — this decision operates at metro grain, so it is not counted as covered here.
Grain mismatch · Observed
Place-level due diligence for an acquisition target's operating market(s) — regional growth, land cost, and competitive context. Company-specific financial/ownership diligence (revenue band, market share) is out of THIS registry's scope — see docs/HANDOFF-EVCOV1.md's known limitations; that capability is real and supported via screen_companies, just not modeled as a place_metric or decision_criterion. Core items are persona 01's ('Private equity & investors') own literal question in web/lib/stakeholder-docs/src/coverage.html: "Metros with GDP growth above national average, commercial land below comparable markets, population growth above 2%, engineering companies with $20-100M revenue, no competitor over 20% share." Grain is pinned to metro because this is the one persona question among all sourced personas that names "Metros" explicitly.
Economic & climate risk assessment
Grain: County
5 of 8
core 2/3 · supporting 3/5
Observed 3Derived 2
Climate/hazard exposure (FEMA National Risk Index)core
Covered · Observed
Property valuescore
Covered · Observed
Employer concentration (HHI/diversification)core
HHI/diversification percentile exists as a real get_place feature (web/app/places/[fips]/page.tsx, divers.pctile) but is not registered as a place_metric in v1 — docs/HANDOFF-SREG1.md's Phase 0 explicitly scoped 'diversification' out of initial registration (a registry-completeness gap, not a data gap).
Gap
Increasing commercial (non-residential) development activitysupporting
Building-permit data (the permits/building_permits_increasing family) is residential-only; no commercial-development/non-residential permit series exists (web/lib/stakeholder-docs/src/coverage.html persona 14 names this a gap).
Gap
Infrastructure agesupporting
No infrastructure-age/condition dataset exists (web/lib/stakeholder-docs/src/coverage.html persona 14 names this a gap).
Gap
Poverty rate (social vulnerability context)supporting
Covered · Derived
Unemployment (economic stability/vulnerability)supporting
Covered · Observed
Housing vacancy (property/economic distress signal)supporting
Covered · Derived
Underwriting/risk-context evaluation of a place — grounded in persona 14's ('Insurance companies') own literal question in web/lib/stakeholder-docs/src/coverage.html: "Municipalities combining high property values, increasing commercial development, climate exposure, infrastructure age, and employer concentration." Supporting items add the persona's own named gaps plus standard economic/social-vulnerability risk factors.
Labour-market analysis
Grain: County
7 of 10
core 4/4 · supporting 3/6
Observed 2Derived 5
Unemployment rate (level + history)core
Covered · Observed
Average wage levelcore
Covered · Observed
Business/establishment formation growth (labour-demand proxy)core
Covered · Derived
Sector concentration / industry mix (skills specialization)core
Covered · Derived
Educational attainment (workforce skill base)supporting
Covered · Derived
Establishment density (labour-demand breadth)supporting
Covered · Derived
International migration rate (labour-supply growth via immigration)supporting
Covered · Derived
Youth-specific (age-breakout) unemploymentsupporting
BLS LAUS carries no age breakout at the county level; docs/HANDOFF-S5.md names this explicitly as a disclosed, unresolved gap (would need an ACS employment-by-age series instead).
Gap
Labour force participation rate (distinct from the unemployment rate)supporting
Only the unemployment RATE is tracked (BLS LAUS); no labour-force-participation-rate series is ingested anywhere in this platform.
Gap
Union density / right-to-work statussupporting
No labour-relations/unionization dataset exists in this platform.
Gap
Assessing a place's workforce depth, cost, and dynamics — grounded in docs/HANDOFF-S5.md (the sprint that shipped the unemployment/wage/formation axes) and the aggregate labour-market capability described in web/lib/stakeholder-docs/src/coverage.html's 'What changed since v1' summary. Supporting items include a real, disclosed gap named directly in docs/HANDOFF-S5.md (youth-specific unemployment) plus two further labour-market facts this platform does not track.
Industrial asset acquisition (warehouse/facility purchase or lease)
Grain: County or metro
4 of 10 county·2 of 10 metro
no single-grain user gets the blended 6 of 10 — see below
Observed 1Derived 5Missing 3
The blended total across either grain is 6 of 10 — achievable at no single grain (see the headline above, not this number). "Either" grain credits real evidence at ANY grain (not dual-grain existence, not an average): of these blended-covered items, 0 exist at both county + metro grain, 4 county-only, 2 metro-only.
Industrial transaction economics (comps, price/sqft, cap rates)core(county+metro grain)
A licensed, place-comparable industrial transaction dataset (e.g. CoStar/Altus tier) is integrated — Canada additionally blocked by CREA/Teranet licensing (docs/DATA_SOURCING_2026-07.md).
Gap · Missing
Industrial vacancy and absorptioncore(county+metro grain)
A licensed industrial vacancy/absorption series with place-level coverage is integrated.
Gap · Missing
Industrial land cost vs regional mediancore(metro grain)
A licensed, metro-comparable industrial land series and ratified peer-region definition are integrated.
Gap · Missing
Economic growth vs national/provincial benchmarkcore(metro grain)
Covered · Derived
Wage level (labour cost — availability is NOT answered by wage alone; see R3f)supporting(county grain)
Covered · Observed
Construction momentum (permit growth)supporting(metro grain)
Covered · Derived
Highway/interstate accesssupporting(county grain)
Covered · Derived
Population growth (demand trajectory)supporting(county grain)
Covered · Derived
Port accesssupporting(county grain)
Covered · Derived
Financing and rate environmentcore
Capital-markets context — permanently out of this platform's domain, but IN the user's decision. Weight 0.5 per owner-audit recommendation: coverage measures the user's decision, not whether a gap is fair to the platform (reverses the original weight-0 proposal — ratify as R3b).
Gap
Buying or leasing a specific industrial asset (warehouse, distribution center, industrial building) in a named place. Distinct from site_selection (greenfield siting) and real_estate_development (building new stock): the decisive evidence here is the ASSET MARKET — transaction economics and vacancy/absorption — which this platform does not and cannot license at its tier; the platform's contribution is the operating-context read plus honest pricing of the asset-market gap. Trigger phrasing per the 2026-08-20 stakeholder ask: 'is now a good time to buy a warehouse in Calgary'. Ratified R3e (docs/METHODOLOGY-CONVICTION.md §4, docs/DRAFT-R3-WAREHOUSE-TEMPLATE.md §2): each requiredEvidence item below carries an explicit `weight` (the legacy core/supporting necessity backfill remains DEFERRED per R3a for the six pre-existing decision types above — this is the only decision_type with weights, not a precedent applied retroactively) and a `decisive` boolean — true only for the three ASSET-market items (transaction evidence, vacancy/absorption, land price); every other item, including financing, is `decisive: false` (R3e's context set). Posture rule (kernel, lineage.ts): zero decisive items answered => context_only regardless of the coverage number.
Every count above is computed live from web/lib/evidence/registry-decision-types.json, registry-metrics.json and registry-criteria.json — never hardcoded into this page. "Grain mismatch" means the cited metric is real but exists only at a different geography level than this decision operates at (a county-only figure does not count toward a metro-grain decision, and vice versa — the metro universe today has ~2 real axes, counties have ~24). No single number combines coverage, freshness, agreement, and source quality — counts and evidence classes only. See EA Score methodology for the separate, company-level scoring system, and docs/HANDOFF-EVCOV1.md for the authoring basis of every required-evidence list on this page.