Methodology

How we source, calculate, and present crime statistics across New Zealand suburbs and regions.

Data as at January 2026 Updated monthly Safety Score uses NZ-CHI v7.3

What we show

We present crime victimisations by suburb and region, normalised per 1,000 residents, along with trends across common time windows.

Why per 1,000

Raw counts can be misleading. Normalising by population helps compare areas of different sizes more fairly.

Safety Score

The Safety Score is a relative 0–100 percentile based on harm per 1,000 residents, using NZ-CHI harm weights.

Data sources

NZ Police victimisations

Monthly offence counts used for suburb and regional totals and trends.

Stats NZ 2023 Census population

Used to normalise counts and harm per 1,000 residents for fair comparisons.

NZ Crime Harm Index NZ-CHI v7.3

Harm weights measured in prison-days, applied to offences to compute harm-based Safety Scores.

Calculations and definitions

Crime rate per 1,000

Crime rate is calculated as:

rate_per_1k = (offence_count / population) × 1,000

Where offence_count is aggregated over the chosen time window for the suburb or region.

Time windows

We compute common windows for trends and comparisons:

R3 / R6 / R12: rolling 3, 6, 12 months
CY: calendar year
YTD: year-to-date

“As at” refers to the latest month included in the dataset.

Harm per 1,000 and Safety Score

Safety Score uses the NZ Crime Harm Index NZ-CHI v7.3. Each offence is assigned a harm weight measured in prison-days. We compute harm per 1,000 as:

harm = Σ(monthly_count × harm_days)
harm_per_1k = (harm / population) × 1,000

Scores are relative percentiles per window. Higher score means lower harm relative to other suburbs.

Percentiles and stabilisation

To reduce the impact of extreme outliers, harm_per_1k is winsorised before percentile ranking:

clamp to 5th–95th percentile, then compute percent_rank
safety_score = round((1 - percent_rank) × 100)

A suburb with zero harm in a window is treated as best-case for that window.

Population edge cases

population > 0: normal rate and ranking
population = 0 and harm = 0: harm_per_1k treated as 0 for scoring
population = 0 and harm > 0: rates can’t be normalised and may be excluded from ranking

Geography and grouping

Statistics are grouped to suburb and region using consistent boundaries. In some cases, the way data is reported or aggregated may not perfectly match informal suburb naming or local perceptions of suburb borders.

Offences are also grouped into higher-level categories to make charts and comparisons easier to understand. Exact groupings may evolve as official classifications or mappings change.

Update cadence and versioning

Monthly refresh

Data is refreshed monthly after Police releases and internal processing completes. “As at” reflects the latest month included.

Stable scoring runs

Safety Scores are computed from the same harm logic each run and tied to a weights version to keep results auditable and comparable over time.

Limitations

Crime data reflects reported incidents. Not all crime is reported.
Recording practices and offence classifications can change over time.
Population is sourced from the latest available census; fast-growing areas can lag.
Rates and scores are rounded for readability; small numeric differences can occur.
This platform is informational and should not be the sole basis for safety decisions.