Skip to content

F-023: Census Demographics Data

Status: Proposed · Priority: P2 · Updated: Mar 6, 2026

Summary

Enrich the platform with demographic data from Statistics Canada censuses beyond income. Population, age distribution, household composition, housing tenure, language, immigration status, and other census variables — visualized at census tract level on maps and available per-listing.

Potential Data Sources

StatCan Census 2021 (and 2016 for comparison)

TableDescriptionGeography
98-10-0001Population & dwelling countsCT, CSD, CMA
98-10-0002Age & sexCT
98-10-0006Household type & sizeCT
98-10-0007Marital statusCT
98-10-0010Knowledge of official languagesCT
98-10-0011Mother tongueCT
98-10-0016Immigration & citizenshipCT
98-10-0021Ethnic/cultural originCT
98-10-0029Labour force statusCT
98-10-0038Housing tenure (own vs rent)CT
98-10-0041Structural type of dwellingCT
98-10-0049Mobility (moved in last year/5 years)CT

Most Relevant for a Rental Platform

  1. Housing tenure (own vs rent %) — directly relevant to renters
  2. Population density & household size — area character
  3. Age distribution — young professional vs family area
  4. Language — French/English/bilingual area character
  5. Immigration — newcomer-friendly areas
  6. Mobility — turnover rate (% moved recently)
  7. Dwelling type — apartment vs house mix

Requirements

  • [ ] Research which StatCan tables are auto-downloadable (direct CSV/ZIP)
  • [ ] Identify Montreal CMA census tract data availability
  • [ ] Design schema for flexible demographic storage (key-value vs wide table)
  • [ ] Parsers for selected census tables
  • [ ] Download script additions
  • [ ] Seed pipeline
  • [ ] API endpoints for demographic data
  • [ ] Choropleth map modes (extend existing /income-map or new page?)
  • [ ] Per-listing demographic summary card
  • [ ] 2016 vs 2021 comparison for relevant metrics
  • [ ] Bilingual (FR/EN)

Design Questions

  1. Scope: Which of the ~12 available tables are worth importing? All, or a curated subset?
  2. Storage: Wide table per topic (like census_tracts has income columns) vs normalized key-value (like income_snapshots)?
  3. Visualization: Extend the existing income choropleth with more map modes, or create a separate demographics page?
  4. Per-listing: What demographic stats are most useful on a listing detail page?
  5. National scope: Import all Canadian CTs (like CMHC rent) or just Montreal CMA?

Discussion Notes

Mar 6, 2026

  • Feature proposed after completing F-022 (income data). Natural extension — we already have CT boundaries and the choropleth map infrastructure.
  • Existing infrastructure to build on: 1,004 census tracts with boundaries, income choropleth, recharts, tabbed layout on /income-map.