Methodology

How BreakMap Builds Its Crime Data

Every page on BreakMap is generated from police open data. This page explains where the data comes from, how often it refreshes, how incidents are categorized and mapped to areas, and what the numbers can and cannot tell you.

Sources

Where the data comes from

Toronto data comes from Toronto Police Service open-data feeds, including year-to-date incident records. BreakMap also ingests TPS news releases (matched to incidents where possible), the Toronto centreline intersection file for cross-street labels, and 2021 census neighbourhood population profiles for per-1,000-residents rates.

Burlington and Oakville data comes from Halton Regional Police Service crime map data, grouped into the official planning districts for each city.

Freshness

How often it updates

BreakMap reloads the source feeds and regenerates every page three times daily. New reports can take several days to appear in police public feeds, so the most recent day or two is always an undercount.

Toronto data: Updated October 2026. Burlington and Oakville data: Updated October 2026.

Categories

What the categories mean

Police feeds label incidents inconsistently, so BreakMap normalizes raw offence descriptions into fixed, non-exclusive categories. The monthly Toronto publication reports assault, auto theft, break and enter, robbery, bike theft, theft from motor vehicles, theft over $5,000, sexual violation, shooting and homicide separately.

A single police-reported incident may match more than one normalized category. Category totals therefore should not be added together to reproduce the citywide total. Auto theft and theft from motor vehicles remain distinct in monthly reports and their live-map links.

Monthly reports

How report periods and totals are built

Monthly reports use Toronto calendar dates and deduplicate loaded records by external incident ID. Completed editions cover a full calendar month. Month-to-date panels end at the earlier of yesterday in Toronto or the latest loaded occurrence date; their previous-month and previous-year comparisons use the identical day range.

Citywide totals include every loaded Toronto record. Neighbourhood tables and maps include only records matched to one of the 158 official neighbourhoods, and each edition discloses the unassigned count so the two totals reconcile. Rates per 1,000 residents use 2021 census population.

Eligibility

Which changes qualify

Neighbourhood or category percentage rankings require at least 10 incidents in the comparison period or 15 in the current period. Any row in a sorted increase or decrease table, and any lead change finding, must also move by at least five incidents. Eligible rows sort by percentage, then absolute change, then name.

Publication record

Frozen snapshots and revisions

Each permanent monthly edition renders from an immutable approved revision stored with its aggregate data, editorial copy, map geometry, source timestamp, methodology version and asset hashes. Scheduled refreshes can update the live hub but cannot change an approved edition.

Corrections create a new revision at the same canonical report URL. Published values are never silently replaced, and every revision after the first requires a human-written revision note.

Boundaries

How areas are defined

Toronto pages use the city's 158 official neighbourhood boundaries plus a small set of custom overlay areas. Burlington and Oakville pages use each city's planning districts.

Borough pages (Scarborough, North York, Etobicoke, downtown Toronto) and their per-offence pages use rectangular bounding boxes, so neighbourhoods near a borough edge can appear in more than one borough.

Limitations

What to keep in mind

Reported incidents are not total crime: many offences are never reported, and police services exclude some occurrence types from public feeds. Occurrence dates are day-level and locations are anonymized to the nearest intersection, so mapped positions are approximate.

Counts are raw by default and not population-adjusted; the interactive map's per-1,000-residents mode divides by 2021 census population where a match exists. Rankings compare loaded incident counts and should not be read as complete personal safety scores.