Methodology

How the rankings are built

Every number on this site comes from a public dataset, joined by a documented rule. This page is the rule book. The data is rebuilt from the source on every deployment; the current build was generated Sep 10, 2026.

Sources

Two ways to count collisions

The most collisions rankings use the police dataset — the big number, dominated by property-damage collisions, which tracks volume closely. The most dangerous rankings use the City's KSI dataset — only collisions in which someone was killed or seriously injured, a far smaller number that says more about consequence than frequency. Every intersection page shows both, and neither is a statement about fault.

Names

The City names each node by every road that meets there ("Spadina Ave / Bloor St W / Spadina Rd"). Pages use the spoken two-street form — "Bloor & Spadina" — chosen by rule: ramps, trails and river names are dropped, a road that continues under a different name is counted once, east/west or north/south halves are merged, the more prominent street (the one appearing at more intersections citywide) goes first, and a short list of well-known pairs overrides that order ("Jane & Finch", "King & Spadina"). The formal name and the City's node name appear under every heading.

What an intersection is

An intersection is a node in the City's centreline network. Its name is the City's own (e.g. "Kennedy Rd / Lawrence Ave E"), shown here with an ampersand. An intersection gets a page when it has a traffic count dated Jan 1, 2015 or later, or at least one KSI collision matched to it. 5,825 of 6,112 counted intersections qualify in this build.

Matching collisions to intersections

Each collision record carries coordinates. KSI person-level rows are first combined into one collision per collision ID; police records are deduplicated by event ID. A collision is attributed to the nearest intersection node within 65 metres — roughly the width of a six-lane arterial crossing — whether the police coded it as intersection-related or mid-block; beyond 65 m it is attributed to no intersection. In this build 5,211 of 7,598 KSI collisions matched an intersection.

A collision counts as fatal if any involved person's record is classed Fatal; as involving a pedestrian / cyclist / motorcyclist if the City flags that road user in the collision; and as in darkness if the light condition is recorded as dark (with or without street lighting).

Windows and comparability

Red-light cameras

Cameras are joined to intersections by the City's intersection ID, falling back to the nearest node within 40 m. Ontario ended automated speed enforcement on 14 November 2025; speed-camera locations are therefore historical and are not shown as active.

Tickets. The City publishes Red Light Camera Annual Charges as a spreadsheet: one row per camera site, one column per year since 2007. It is joined to the camera list by the City's location code (the spreadsheet numbers sites from 2501, the camera list from 6001 — the same sites, offset by 3,500), with a fallback on the two street names. "Charges" are tickets issued, not convictions. The current year is partial — the file states the cut-off date and the pages repeat it — so rankings use the last complete year. Sites the City has decommissioned stay in the spreadsheet and are listed separately with their totals. In this build 301 of 301 cameras matched a ticket record (0 by street name).

Collisions recorded after the window closed (from January 2026 to the latest date in each dataset) are never hidden: they appear on the intersection page as a separate "since January" line in the cards, tables and text, and a fatal one is stated in the first paragraph. They are simply not part of the ranking, which needs complete years.

"What's here" layers

Each layer is a straight-line proximity join from the intersection node, computed at build time from a City dataset. Distances are as the crow flies, not walking distance.

Layers are best-effort: if a source is unavailable when the site is rebuilt, that layer is left blank rather than stale.

What this site does not claim

Licences

Contains information licensed under the Open Government Licence – Toronto. Collision data originates with Toronto Police Service and is published by the City under the same licence. Corrections and questions: see the data page.