About the data
Public federal data, as published, with no adjustment. What follows is what you need to judge how far to trust a given number.
What the money means
Federal contribution is money committed, not spent. A project approved in 2016 may still be drawing on it. Total eligible cost is the project’s full cost across every funding partner.
- Federal contribution
- $69.4B
- Other partners
- $115.3B
Figures are nominal dollars as recorded. A 2004 commitment and a 2024 one are different dollars.
A year’s total is work in flight
Set the map or the list to one year and it answers what was under construction then — so a project counts in every year of its build.
The yearly figures therefore do not sum to $69.4B, and are not meant to. The source records a commitment and a date range, never a spending schedule, so any year-by-year split of the money would be invented. Switch the bars to approved for the other question — commitments counted once, which do sum to the national total.
Both series run 2002 to 2033 — dates outside that are clipped, not dropped, and dates after today are forecasts.
Dates, and what they leave behind
Each project carries four dates. Announcement and approval do not always run in that order, and where an actual date has overtaken a forecast, both are kept.
Status is derived from these dates, not reported: complete with an actual end date, underway with an actual start, approved otherwise. So “88% complete” counts filled-in fields — a finished project whose end date was never entered reads as underway.
Locations are approximate by construction
The source records a municipality name and a province — never a coordinate or an address.
790 projects ($1.7B) are left off the map because their location is a regional district, a First Nation, a multi-city list, or blank. They appear in full in the list and in search; placing them at a province centroid would invent a location the data does not contain.
What is matched onto a place, and what is missing
The source names a municipality and stops there. Population and federal riding are both matched onto that name afterwards, and neither match is complete — so the per-person figures and the riding lookup each cover part of the money, not all of it.
A province’s per-person figure is exact: every project in the province, over everyone living there. A municipality’s depends on the census match, which succeeds for 3,033 of 4,189 places — 94% of the money. Where the source names several municipalities at once their populations are added, but only if every one resolves; where it names a county rather than a town, the county answers and the figure says so.
Nationally the rate is $1,877 per resident. The spread across provinces is wide and mostly geographic: all three territories run past $27,000 a head, which says more about building anything at that latitude for that few people than about generosity. Populations are 2021 counts, used as a fixed denominator for projects running 2002 to 2033 — a basis for comparing places, not a record of who lived there at the time.
The riding match fails in the opposite direction: it holds for small towns and breaks for cities. A municipality of more than 107,848 people — one seat’s worth — spans several of the 343 ridings, and a centroid would land in one and claim the whole city’s money for it. So 180 places holding 62% of federal dollars show no riding at all, which is most of urban Canada. The remaining 38% is a lookup on each project and deliberately not a ranking: a table built from it would be a table of rural ridings, reading as though cities had received nothing.
Those boundaries are the 2023 Representation Order and the members are the ones sitting now, applied to projects going back to 2002. A riding answers where this is and who answers for it today — never who held the seat when the money was announced.
Sources
The project list — 20,506 projects, published by Housing, Infrastructure and Communities Canada.
The gazetteer that turns municipality names into coordinates.
- Natural Earth 1:50m admin-1 boundariesPublic domain
Province and territory boundaries.
Population counts behind every per-person figure.
Federal riding boundaries, used to locate a place within a seat.
Who sits for each riding today.
The basemap under the markers. Orientation only; no figure depends on it.
How this is built
Everything is downloaded, normalised and geocoded ahead of time into one snapshot that ships with the site, generated Aug 22, 2026. Nothing is fetched at request time, so the figures are reproducible and cannot half-load.
It is therefore only as current as that date, and if a project’s details look wrong the correction belongs upstream with Housing, Infrastructure and Communities Canada. This site picks it up at the next snapshot.