About the Data

How to read Toronto’s shelter numbers, and where the data has limits

Audit methodology for Toronto’s shelter system data — sources, integrity checks, and structural limits worth knowing before drawing conclusions.
Author

Miriam Marling

ACTIVE AUDIT: 2026–2027 WINTER SEASON. We are tracking the gap between the City’s reported capacity and the raw data. Discrepancies are being logged in our Discrepancy Tracker. We are demanding zero unplaced people on nights reaching −5 °C. Daily monitoring will start when the 2026–2027 cold season opens in November.

AUDIT ACTIF : SAISON HIVERNALE 2026–2027. Nous suivons l’écart entre la capacité déclarée par la Ville et les données brutes. Les écarts sont consignés dans notre Suivi des divergences. Nous exigeons zéro personne sans place lorsque la température atteint −5 °C. Le suivi quotidien débutera à l’ouverture de la saison froide 2026–2027 en novembre.

The figures across BonQuery’s dashboards come from open data the City of Toronto publishes about its shelter system. This page explains what that data is, where it comes from, and the few places where careful reading changes the conclusion you should draw. These are notes about the data itself, not findings about Toronto’s shelter system; the findings are on the audit and dashboard pages. How these numbers are checked against the City’s own published figures is documented separately on the Emergency Occupancy Audit and Central Intake Audit pages.

Where the data comes from

BonQuery draws on three datasets, all published by the City of Toronto on its Open Data portal under the Open Government Licence – Toronto. Each is an aggregated product derived from the City’s internal Shelter Management Information System (SMIS); none is a raw feed of individual case records.

  • Shelter System Flow: a monthly summary of how many people enter, leave, and remain in the shelter system. This is the source of the headline actively homeless count.
  • Daily Shelter & Overnight Service Occupancy & Capacity: a nightly snapshot of occupancy and capacity, program by program, from 2021 to the present.
  • Central Intake Calls: records from the City’s 24/7 shelter referral line, including call outcomes and the count of callers still waiting for a space.

BonQuery’s cold-weather analysis also draws on hourly weather records for the Toronto station, published by Environment and Climate Change Canada and retrieved via the weathercan R package.

A monthly snapshot with a three-month lookback

The City generates the Shelter System Flow data on the last day of each month and publishes it around the 15th of the following month. Each month’s figures retroactively consider everyone who used shelter services in the previous three months.

Two things follow. First, the actively homeless count for any month includes anyone who used the system even once in that three-month window, not only people in shelter during that month; the same person can appear in three consecutive monthly counts after a single stay. Second, month-over-month changes are smaller than they look, because adjacent months share two-thirds of their lookback window. Comparing January and February side by side compares two heavily overlapping groups, not two distinct ones.

Three different “homelessness” numbers

Toronto publishes several counts related to homelessness, and they measure different populations. Comparing figures across sources, a reader can easily think two numbers contradict each other when they simply count different things.

  • Nightly occupancy: how many people are in a shelter space on a given night, from the Daily Shelter & Overnight Service Occupancy & Capacity dataset.
  • Actively homeless: how many people used the shelter system at least once in the past three months and have not since been recorded as housed or otherwise inactive. This is the headline number on the dashboards.
  • Annual unique individuals: how many different people used the shelter system at any point in a calendar year, published by the City in occasional reports rather than a standing dataset.

All three are valid measures of related but different populations. The actively homeless count normally sits between nightly occupancy, which is smaller because it counts a single night, and annual unique individuals, which is larger because it counts a whole year. Treating any of the three as interchangeable misreads them.

What the headline number leaves out: the 18% undercount

Every count above describes people who used a City-funded overnight service. People sleeping outside, using a service the City does not fund, or staying temporarily with friends or family are not in this data.

The City estimates that roughly 18% of people experiencing absolute homelessness in Toronto are not reflected in these numbers, an estimate drawn from its Street Needs Assessment, a separate periodic count of unsheltered homelessness.

In practice: when the actively homeless count rises or falls, the change describes the shelter system specifically. Whether total homelessness is moving at the same rate depends on the part of the population this data does not see, which this dataset cannot answer on its own.

How the population groups relate

The data breaks people into population groups: All Population, Refugees, Non-refugees, Chronic, Families, Single Adult, Youth, and Indigenous. These groups do not all relate to the total in the same way, which matters whenever an analysis compares them.

Refugees and Non-refugees together account for every person in All Population, with no overlap. Stack the two and the result equals the total. This holds in every month of the data.

The other groups, Chronic, Families, Single Adult, Youth, and Indigenous, are overlapping attributes rather than divisions of the total. One person can belong to several at once. For example, an Indigenous youth experiencing chronic homelessness is counted in the Indigenous, Youth, and Chronic groups simultaneously, and also sits on the Non-refugees side of the refugee split and within the All Population total. There is no way to isolate people who belong to only one of these groups from this data alone.

In practice: summing or stacking these overlapping groups produces a number larger than the real population, because each person is counted once in every group they belong to. This is why the City’s own per-group percentages for these groups add up to well beyond 100%.

“Newly Identified” means something different for the Chronic group

For most groups, Newly Identified counts people entering the shelter system for the first time. For the Chronic group, the same column counts people who became chronically homeless during the reporting month, regardless of how long they had already been in the system. Most of those people were already using shelters; they had just newly crossed the federal threshold for chronic homelessness (180 nights in a year, or 546 over three years).

This is noted in the shelter system audit and in the City’s own documentation, but it is worth repeating because the column name invites the wrong reading. Any cross-group comparison of Newly Identified figures that includes the Chronic row mixes two different measurements.

For analysts: the refugee split is a clean partition

One structural feature is worth stating precisely for anyone working with the data closely. The split between Refugees and Non-refugees behaves as a clean mathematical partition, and not only for the headline actively homeless count: it holds for every flow column as well.

In every month from January 2018 to the present, the Refugees and Non-refugees values sum exactly to the All Population value for every column checked: people entering, people leaving, and the actively homeless stock. No other population dimension behaves this way.

In practice: if an analysis needs mutually exclusive categories, for a stacked bar chart, a share-of-total calculation, or anything that assumes groups do not overlap, the refugee split is the one place in this data where that is mathematically safe.

Sources

The structural observations on this page were verified by querying the data directly. Definitions and the 18% undercount estimate come from the City of Toronto’s Shelter System Flow Data page. The three datasets are published on the City’s Open Data portal, all under the Open Government Licence – Toronto.