Winter Demand in Toronto's Shelter System

- Company
- OCAD University
- Duration
- Nov 2025
- Team
- Solo
- Role
- Researcher & Data Analyst
A quantitative study built around a question: can Toronto's shelter system meet the demand in winter weather? Three years of daily shelter occupancy and climate data, cleaned and joined in Python, and the uncomfortable answer is no.
of daily shelter and climate data analyzed (2022–2024)
average occupancy — every season, every year
public datasets joined on date: City of Toronto + Environment Canada
The Question Behind the Winter Panic
Homelessness has intensified sharply in Toronto. Through CivicLabTO, I had the privilege of meeting with City staff and municipal officials — joining the conversations around municipal policy and service delivery, and studying the challenges the City is up against firsthand. Those sessions made the strain plain: a shelter system stretched by structural failures across housing, health care, and income support — and every winter, the same worry resurfaces that cold weather is what tips it over. This study tests that assumption against the data instead of taking it on faith.
Research question: Does winter weather significantly impact Toronto's shelter system?
To answer it with public data, I set two testable hypotheses — then let three years of numbers decide.
- H1 — Colder days fill more beds. Days with lower temperatures will correspond with significant increases in shelter occupancy.
- H2 — Winter runs tightest. The gap between available beds and actual occupancy will be smallest in the winter months.
Joining Shelter Occupancy to the Weather
A quantitative design using three years of daily shelter and overnight-service occupancy data alongside matching historical weather. Shelter data came from Open Data Toronto; weather from Environment and Climate Change Canada's Toronto City climate station (ID 31688). Everything was cleaned and processed in Python in a Kaggle notebook, with ChatGPT used to help design the processing steps and debug.
| Source | Fields kept |
|---|---|
| Daily shelter & overnight service occupancy (Open Data Toronto) | DATE, TOTAL_CAPACITY_BED, TOTAL_OCCUPIED_BED, OCC_RATE, CAPACITY_GAP |
| Daily climate data (Environment and Climate Change Canada) | DATE, TEMP_MIN, TEMP_MEAN, TEMP_MAX (°C) |
Shelter records were standardized by date and aggregated from individual sites into a single city-wide total per day. Weather records were parsed, converted to numeric, and each day was tagged with a temperature-severity level based on the City of Toronto's Cold Weather Plan — which triggers an extreme-cold alert whenever the temperature hits ≤ –15 °C. A winter-plan flag (November–April) was added so winter and non-winter days could be compared directly.
| Severity level | Minimum temperature |
|---|---|
| Normal day | Above 0 °C |
| Cold day | 0 to –4 °C |
| Mild winter | –5 to –14 °C |
| Extreme cold | ≤ –15 °C |
What the Data Actually Shows
Occupancy is pinned to the ceiling — all year
Average occupancy sat at roughly 98–99% across all three years and barely moved: 98.2% in 2022, 98.9% in 2023, 99.1% in 2024. The system isn't near capacity in winter — it's near capacity constantly. There's almost no headroom left for cold weather to consume.
Breaking occupancy out by temperature severity tells the same story. Across normal days, cold days, mild-winter days, and extreme-cold days, average occupancy stayed at or above 97%, with negligible variation between years. Colder categories do not fill more beds — because the beds are already full.
But the capacity gap widens every winter
The seasonal signal shows up somewhere else entirely — in the capacity gap, the raw shortfall between people needing beds and beds available. In every year, the gap grew during the winter-plan months (November–April) versus the rest of the year: an overflow the system absorbs precisely when the weather is most dangerous.
additional beds of winter shortfall in 2022 (71.2 vs 43.6)
additional beds of winter shortfall in 2023 (52.6 vs 39.5)
additional beds of winter shortfall in 2024 (59.8 vs 24.8)
Finally, plotting minimum temperature directly against occupancy rate confirms there's no linear relationship to find. Occupancy stays saturated no matter how cold it gets — the cloud of points flattens against the top of the chart rather than climbing as temperatures fall.
Both hypotheses fail — and that's the finding. Cold days don't raise occupancy (H1), because it's already maxed out. And the capacity gap isn't smallest in winter (H2); it's largest. Winter doesn't create the crisis. It exposes one that's there all year.
Can Design Fit More Beds?
If occupancy is above 98% in July and January alike, then seasonal surge measures — however necessary — are treating a symptom. The City's Winter Services Plan 2025/2026 adds roughly 1,275 additional spaces through warming centres, a new shelter, and 24-hour respite sites; real, humane, and worth doing. But the data reframes them as short-term relief for a system that is over capacity every single month, not just the cold ones.
“Regardless of the weather, occupancy stays above 98% year-round. Winter doesn't cause the overflow — it makes an all-year overflow more dangerous.”
Core finding of the analysis
That leaves one obvious design question, and it's the one I wanted to test rather than assert: if the system is permanently full, can we fit more beds into it? Not make shelters nicer, but to fit *more people*, while staying inside the City's own rules. A bed that breaches the standards isn't capacity; it's a violation.
The rules any added bed has to satisfy
Toronto publishes binding space requirements in the Toronto Shelter Standards (v5) and the Shelter Design and Technical Guidelines (2023). Together they set the floor — and the ceiling — on how densely a shelter can be packed.
| Requirement | Standard |
|---|---|
| Personal space per client in sleeping areas | 3.5 m² minimum (Toronto Shelter Standards) |
| Lateral separation between beds | 0.75 m minimum |
| Sleeping room area, 2–8 bed rooms | 4.6 m² per person (design guideline, per OBC) |
| Beds per sleeping room | More than 8 not recommended |
| Bed groupings ('neighbourhoods') | 20–25 beds within an 80–90 bed shelter |
The standards argue the case themselves: operators are "encouraged to exceed this standard by providing more space between beds and discouraging the use of large dorms." The City's own guidance points away from density, not toward it.
Three places a bed could come from
There are only three. I tested all of them against the 2024 bed-based occupancy data for the whole city — the same dataset behind the figures above.
empty in-service beds on an average night — 0.9% of funded capacity
beds funded but sitting out of service — 2.0% of funded capacity
occupancy of the beds actually in service, city-wide
- 1 — Empty beds already in service. Across a system of 4,655 funded beds, an average night leaves just 42 unoccupied. There is effectively nothing to reclaim here.
- 2 — Funded beds that aren't in service. Toronto funds 4,655 beds but only about 4,564 are actually available; roughly 91 beds a night are paid for and unavailable. This is the one genuine recovery opportunity — and notably it sits at 91 in winter *and* non-winter, so it is a permanent leak, not a seasonal one.
- 3 — Extra beds squeezed into existing floor space. The only remaining option, and the one bounded by the 3.5 m² rule.
Testing the third option against a real shelter
Maxwell Meighen Centre, 135 Sherbourne St — a Salvation Army men's emergency shelter and one of the largest single sites in the city. In 2024 it ran 264 funded beds with an average of 263.8 occupied, and never once fell below 260. It is, in effect, permanently at capacity.
Its floor plans aren't public, so rather than estimate them I worked backwards from the standard, which needs no assumptions: to hold 264 beds lawfully, its sleeping areas must already total at least 924 m² (264 × 3.5 m²). Every additional bed demands another 3.5 m² of sleeping area, *plus* the 0.75 m separation and the circulation space to reach it. Twenty more beds means finding 70 m² of unused floor — inside a building that has been running at 100% occupancy every night of the year.
This is the ceiling. Space at 3.5 m² per person is the *minimum* a bed may legally occupy, not a target to optimize toward — so there is no clever layout that yields more beds from the same floor. Density has already been spent.
What the test actually proves
Adding every recoverable bed together — the 42 empty and the 91 out of service — returns roughly 133 beds, about 2.9% of funded capacity, and the third option returns none without new floor area. Set that against the need: in 2024 the winter capacity gap widened by 35 beds at the city-wide daily average in Figure 3, and thousands remain outside the system entirely. A 2.9% recovery does not close it.
So the design conclusion is a negative result, and a useful one: you cannot fix this by adding beds. The system is at its lawful spatial limit. The only remaining lever is flow — helping people leave faster.
That relocates where design earns its keep. At 99% occupancy a shelter is a queue with no outlet, and adding beds to a queue doesn't shorten it — throughput does. Which means the measurable design targets are the things that shorten a stay: secure storage so people can hold a job, private space for case-management conversations about housing, and sleep quality and health good enough that someone can function during the day. Fix the 91 out-of-service beds, then design for exits.
Fully resolving homelessness still demands long-term, systemic reform across housing, health, and income. But this is the operational-level contribution design can honestly claim — not more beds, which the standards forbid, but faster exits, which the standards actively reward.
Sources & Further Reading
The full data-cleaning and analysis workflow — every processing step behind the figures above — is published as an open Kaggle notebook.
- 1.Link to Kaggle for more — full data-processing and analysis notebook (yellowconnie / winterhomelessness)
- 2.City of Toronto (n.d.). *Daily shelter overnight service occupancy & capacity* [Data set]. Open Data Toronto.
- 3.Environment and Climate Change Canada (2022–2024). *Daily climate data for Toronto City, Ontario (Station ID 31688)* [Data set]. Government of Canada.
- 4.City of Toronto (2025). *Winter Services Plan for People Experiencing Homelessness.*
- 5.City of Toronto (2023). *Toronto Shelter Standards, Version 5.* Shelter, Support & Housing Administration. — source of the 3.5 m² personal-space and 0.75 m bed-separation requirements.
- 6.City of Toronto (2023). *Shelter Design and Technical Guidelines, Version 2 (July 2023).* — source of the 4.6 m² sleeping-room area, the eight-bed room limit, and the 20–25 bed neighbourhood grouping.
- 7.Barrera, M., & Stalteri, J. (2025, October 3). *Toronto Shelter and Support Services: A CivicLabTO presentation — A Caring and Safe City for Everyone* [PowerPoint slides]. City of Toronto.
Interested in working together?
Let's talk about your project.