April 2026 · Research Centre

We removed every property-level conclusion we couldn’t defend.

The Research Centre used to ship a verdict score, an emotion premium percentage, an intrinsic-value calculation, and a handful of scored panels for any Canadian address. Several of them were built on hand-tuned thresholds and hardcoded constants. They felt like analysis. They were closer to opinion math wearing analysis clothing.

A real estate analyst, an actuary, or a CMHC economist has to be able to look at any number we publish and either nod or follow the math to a defensible source. The cuts below are the ones that didn’t pass that test.

What we retired

Verdict score (0–100)

A composite mapping of emotion-premium percentage to a label like “Caution” or “Danger zone”. The bands were hand-tuned and never calibrated against actual price-to-fundamentals outcomes.

Emotion premium %

Asking price minus our intrinsic-value estimate, expressed as a percentage. The intrinsic-value estimate underneath it relied on land-share and soft-cost constants that don’t hold across cities or property types.

Intrinsic value at the property level

Land plus build plus a 13% soft-cost rule of thumb, multiplied by sqft. The framing was crisper than the inputs. Building-share and per-city construction cost don’t generalise to a specific lot, and we shouldn’t have implied they did.

Replacement Cost Floor at the property level

Same rebuild-cost math as intrinsic value with the same problems. We kept the function so the Phase 4 city-level reading can use it. At the city level the constants can be defended.

Stability Index composite

A 0–100 score weighted across equity cushion, income velocity, and inventory pressure. The components survive as facts elsewhere; the weighted composite was opinion.

Permit-to-Start ratio

A hand-tuned threshold mapped raw permit / housing-start counts to “constrained” / “balanced” / “undersupply”. The raw permit data still ships; the ratio framing didn’t.

Inbound Wealth Signal

A single ratio (FSA income vs city median) bucketed into rising / flat / declining. The underlying T1FF income data continues to ship as a fact in the neighbourhood card.

GRM verdict bands

Buy / neutral / rent labels on the gross rent multiplier. The ratio survives; the prescription doesn’t. The healthy band is now shown as a market reference, not a conclusion about the property.

The Research Terminal

The Bloomberg-style /terminal surface leaned on the same retired math and was archived in the same change. The route now redirects to a public note that walks through where the parts went.

What stays

Sqft reconciliation across municipal, MLS, and Nest sources, with provenance and confidence shown. The neighbourhood card, including community ownership, income vs the city, and any nearby permits. The macro layer at the top of /research. The Bank of Canada and CMHC integrations that feed it. The listing-vs-municipal-assessment comparison when both numbers are available. The presale stage gate.

The gross rent multiplier survives as a comparison. We show the ratio and the city’s historical band side by side; we don’t tell you whether your property is a buy.

What’s coming next

Two community-scoped panels are landing in the next phase: an Own or rent in this community reading built from CMHC RMS rents and the carry math, and a What’s being built in this community reading built from city permits scoped to the planning area rather than a 500-metre radius. Both will follow the same trust pattern the rest of the page now uses: a fact, the data behind it, and an explicit limit alongside.

Phase 4 reintroduces a city-level rebuild-cost reading. There is no plan to bring back a property-level verdict, under any name.

Why this is the change we made

A research product earns trust by being explicit about what it doesn’t know. The retired panels projected confidence we couldn’t back. The version that survives the cuts is smaller, more cautious, and easier to defend. That’s the version we want shipping while we build the rest.

May 2026: seller mode goes dark on uncited metrics

Until today, the seller view at /research?mode=seller showed a community-level list-to-sale ratio, months of inventory, and average days on market for every neighbourhood we cover. Those numbers were seeded into the database when the table was created and never refreshed against a live source. A homeowner reading them was reading mock data styled as market data. We’ve gated the seller panels: until each market is wired to the monthly statistics its real estate board publishes, the affected metrics render an empty state that names the gap rather than a number we can’t cite. The principle applied to the retired panels above is the same one applied here — the components survive, they just stay dark until they can earn the citation.

May 2026: seller mode lights back up, on cited data and at honest grain

Three weeks after Step 1 went dark on uncited metrics, the seller view is reading live April 2026 statistics from the Calgary Real Estate Board for four mapped Calgary communities — Tuscany, Aspen Woods, Beltline, and Mount Royal. Every value carries a citation and a reference month. Three more Calgary rows (Riverdale, Altadore, Elbow Valley) stay in the empty state because their CREB-district mapping isn’t unambiguous and we’d rather show “wiring this” than guess. Edmonton stays dark on Q1 + Q5 until the equivalent RAE ingest lands.

The seller view also gains four new panels: median household income, three population-change components (net migration, natural increase, non-permanent residents), and a starts-versus-completions comparison — all at metro-area grain — plus a community-scoped permits panel for Calgary surfacing residential pipeline at the boundary buyers actually shop within. Each value cites its source and reference period.

Geographic grain now reads as a sentence subject, not a footnote. Each panel uses the finest grain freely available from its source — StatCan publishes household income at the metro level and not below; CMHC’s starts and completions are published at the metro level; the City of Calgary publishes parcel-level permits, so the permits panel is community-scoped. The grain isn’t a design choice; it’s the source speaking, and the panels surface it without smoothing or aggregating. CREB’s free monthly package gives months-of-inventory at the CREB district level and days-on-market at the Calgary citywide level for a given property type; finer per-community resolution exists only inside the Pillar9 broker portal, which is paid, and the platform has publicly committed to free public data only. So when a Beltline seller reads inventory data, the panel reads “City Centre apartments — 4.5 months of supply”; when they read time-on-market, it reads “Calgary citywide apartment market — homes took ~47 days to sell.” The grain reads first, the value reads second, and the seller knows what geography the number describes before they read it. This grain-as-subject construction is how Namtar Nest will express geographic honesty on every seller-side panel that ships from here on.

The principle that retired the verdict score applies to the new panels. Starts and completions ship side by side without a “supply pressure” rollup; the same applies to migration components and to the permits count-versus-dollar split. Compare them yourself — the panels do not render verdicts.

Three limits ship with this work, named because we’d rather say them than have a reader find them. The CMHC starts-and-completions panel covers Calgary and Edmonton CMA today; Toronto and other CMAs land in upcoming releases — the underlying StatCan table covers them; the static snapshot does not yet. CREB’s district-level breakdown is the finest geography available in the free public feed; sellers in Beltline and sellers in Mission both read “City Centre apartments” because that’s the grain the source publishes, and there is no roadmap to per-community CREB data through free public sources; the Pillar9 portal is the only path, and it sits outside the platform’s commitment. The permits panel reports counts and dollars but no completion timing — the public permits dataset doesn’t carry an expected-completion field, so the panel surfaces the size of the inventory pipeline without claiming to know when each unit arrives in front of buyers.

May 2026: Calgary CREB coverage extends to every official residential community

Coverage of cited CREB numbers in Q1 (price strategy) and Q5 (timing) extends from four mapped Calgary communities to all 222 communities on the City of Calgary’s official residential list. Of those, 152 communities classify cleanly to a CREB district plus a single dominant property type and render the cited grain-as-subject panels — Royal Oak now reads “North West detached” the same way Beltline reads “City Centre apartment.” The other 70 land in a new empty state described below. Edmonton, Toronto, and other markets continue to render the city-neutral empty state until their boards’ equivalent ingests ship.

The classification is mechanical, not editorial. Each community’s CREB district comes from the City of Calgary’s sector field on the canonical residential list (a 1-to-1 map). Each community’s dominant property type comes from the City’s parcel-level assessment roll: the sub-property-use code on every residential parcel is mapped to one of CREB’s four tracked types — Detached, Apartment, Row, Semi-Detached — and a community classifies to a type when more than 60% of its dwelling parcels are that type. No score, no weighted index, no judgment call about what a community feels like. Titled parking units, storage units, and vacant lots — each a separate parcel record but none a dwelling — are excluded from the denominator so the dominance reflects actual housing.

When a community’s housing mix is too varied for any single property type to clear the 60% bar, the seller view renders a new variant of the empty state with copy that frames the limitation on the data side rather than the community side. CREB publishes inventory and price benchmarks aggregated by property type; citing one of those aggregates for a community whose housing is split across types would mean picking a number that doesn’t describe the whole place. The honest move is to skip the cell. This affects ~66 of the 222 canonical residential communities, mostly older established neighbourhoods like Killarney/Glengarry, Garrison Woods, and Sage Hill where decades of infill have produced genuinely mixed housing stock — and four communities (Symons Valley Ranch, Twinhills, University of Calgary, Queens Park Village) where the assessment roll carries no dwelling parcels at all.

The 60% threshold replaced an originally-proposed 70% threshold after a sample of the 60–65% borderline band showed every community in it landing cleanly with market perception. Mahogany at 63% detached reads as a detached community; Bankview at 62% apartment reads as a walk-up apartment district above Marda Loop; Point McKay at 60% row reads as a riverfront townhouse enclave. Holding strict at 70% would have pushed large master-planned suburbs like Royal Oak, Livingston, and Silverado into the empty state despite being decisively detached. The trade-off is named and accepted: the cited number describes the dominant majority, and the 30–40% non-dominant minority is real housing diversity that the panel doesn’t pretend to erase.

May 2026: a third honest reason for staying quiet on a number

Q1 (price strategy), Q3-permits (competing inventory), and Q5 (timing) in the seller view now render a new empty-state variant when the City of Calgary’s open-data property-assessment lookup doesn’t return a match for the address. The lede names the cause directly — “we couldn’t reach the property assessment data for this address right now” — and prompts a retry. The body explains that the lookup sometimes misses, sometimes due to a transient service hiccup and sometimes because the address sits outside the assessment roll, and that the rest of the dossier (neighbourhood profile, construction activity, mortgage and rate environment) carries citations and reference dates regardless. The framing matches the data-side voice of the existing variants — naming the publisher and the publication shape, then the limitation.

This variant ships alongside a fix to the underlying lookup behavior. Some addresses where the City’s open-data assessment lookup didn’t return a match were being silently substituted with another community’s hand-curated description. The substitution affected both Calgary addresses where the lookup missed and addresses in markets where we don’t yet run an address-level lookup at all. The substituted row had been rendering its narrative paragraphs and seeded metrics as if they belonged to the user’s address. When the lookup misses now, the response carries no neighbourhood row at all — the buyer view falls back to generic “this neighbourhood” phrasing, and the seller view renders the new variant.

The three-variant decomposition — city-neutral for markets where board ingest hasn’t shipped, mixed-community for communities where the housing mix doesn’t fit a single property-type aggregate, and transient for the address-level lookup miss — is the platform recognizing that three structurally different reasons for not displaying a number deserve three distinct copy answers. The seller reads the actual cause, not a generic placeholder. Adding a third variant isn’t a casual escalation; it’s the locked copy pattern growing to match the honest reasons the platform has for staying quiet on a number.

June 2026: reading the listing you paste

Until this release the Research Centre read no listing data beyond a price-versus-assessment comparison, and the method page said as much. That changes here. When you paste a realtor.ca or HouseSigma link, the dossier now reads the public listing page and surfaces what it carries — beds, baths, size, the condo or maintenance fee and what that fee covers, and the rest of the listing’s own fields — in a “From the listing” section. Every value is shown verbatim and labelled as the listing’s own figure, with a note to cross-check it against the source.

Two honesties travel with that. First, this is data you brought to the dossier by pasting your own link — it is not a Nest reading and carries no confidence score; we mirror it and keep it fenced off from the cited facts the rest of the page derives from free public data. Second, it is read from a third-party page, which is a different thing from the public-data families that fund every other number on /research. We are pursuing access to listing data through proper channels; until that lands, the listing section stays clearly marked as the listing’s own content, not ours.

Questions or pushback? The team reads every reply at hello@joinnest.ca.
← Back to the Research Centre