---
title: EPS Black-Box Budget — Canonical Dataset
status: verified
compiled: 2026-07-03
anchor_primary: 475 (CAD millions, 2026 approved net operating)
anchor_alt: 560 (CAD millions, 2024 gross operating)
usd_cad_rate: 1.37
---
# Canonical Dataset — single source of truth
This file is the verified spine every deliverable (CSV, mkdocs site, lander, carousel) draws from. Numbers here are reconciled from three research passes. Do not invent figures not present here; if a builder needs a number that isn't here, flag it rather than guess. Every figure traces to a file under `../sources/`.
## The anchor (read first)
EPS has no single "the budget" number — it depends on framing:
- **Net operating (tax-supported): ~$467M (2024), $475M approved (2026).** This is what city council votes and taxpayers fund. **Primary anchor = $475M.** Chosen because it is the conservative, recognizable figure — smaller anchor, smaller multiples, harder to attack as cherry-picked.
- **Gross operating (total spend): $560.05M (2024 budget; $563.87M actual).** Includes grant-funded and cost-recovered spending. Use as the "total EPS spend" alternate — it makes every military multiple ~18% larger. Always label which anchor is in play.
Comparing EPS to military budgets: SIPRI military expenditure is *gross* spend, so the truly apples-to-apples comparison is EPS gross ($560M) vs their gross. We deliberately use the *smaller* EPS net ($475M) as the headline anchor so the comparison errs conservative. State this openly wherever the contrast appears — transparency about the anchor is what makes it bulletproof.
## Act structure (narrative spine for all deliverables)
1. **The visible budget** — EPS costs ~half a billion CAD/yr and is the single largest line in the City of Edmonton budget (15.4%, 2022), growing ~5%/yr on an automatic formula.
2. **The black box** — beyond the headline number sits a layer that is hard to trace: chronic overtime overruns, ~$50M/yr in external grants, surveillance-tech capital, and legal settlements pooled city-wide so EPS's share never appears on its own ledger. Plus gear whose dollar value EPS simply won't disclose (facial recognition, ALPR, IMSI catchers, drone fleet).
3. **The contrast** — that budget rivals or exceeds the *entire military* of dozens of sovereign nations.
## Budget baseline (net operating, CAD millions)
2019-2026 are source-backed; 2015-2018 are back-cast estimates (~5%/yr, anchored to the documented $356.3M in 2019) and must be labelled LOW confidence.

| Year | Net operating | Gross operating | YoY net % | Confidence | Source |
|---|---|---|---|---|---|
| 2015 | ~310 | — | — | LOW (est) | eps-operating-and-capital-series.md |
| 2016 | ~325 | — | ~5 | LOW (est) | eps-operating-and-capital-series.md |
| 2017 | ~341 | — | ~5 | LOW (est) | eps-operating-and-capital-series.md |
| 2018 | ~353 | — | ~3.5 | LOW (est) | eps-operating-and-capital-series.md |
| 2019 | 356.3 | 378.6 | — | HIGH | city-resource-analysis-eps-funding.md |
| 2020 | 373 | — | 4.7 | HIGH | eps-operating-and-capital-series.md |
| 2021 | 384 | — | 2.9 | HIGH | eps-operating-and-capital-series.md |
| 2022 | 407.2 | — | 6.0 | HIGH | city-resource-analysis-eps-funding.md |
| 2023 | ~418.5 | 502.19 | 2.8 | HIGH | eps-2024-year-end-budget-variance.md |
| 2024 | ~467 | 560.05 (actual 563.87) | ~11.6 | HIGH | eps-2024-year-end-budget-variance.md |
| 2025 | ~471 (interpolated) | ~580 (est) | ~0.9 | MED | eps-operating-and-capital-series.md |
| 2026 | 475 (approved) | — | ~0.8 | HIGH | eps-operating-and-capital-series.md |

EPS = **15.4% of total City of Edmonton budget (2022)** — the largest single line item. Funding formula (council-approved Aug 23 2023, 2023-26 cycle): prior year + population growth + inflation (Police Price Index) − efficiency factor + salary settlements. The budget grows automatically.
## Black-box layer
Each row is a distinct way spend escapes the headline number. Estimates are labelled.

| Category | Figure (CAD) | Year | Confidence | Source | Note |
|---|---|---|---|---|---|
| Overtime overrun | $18.3M actual vs $11.6M budget (+58%) | 2024 | HIGH | eps-overtime-history.md | 2023: $19.2M vs $10.3M (+86%). ~$8-9M/yr unbudgeted |
| Provincial grants to EPS | $50.4M | 2024 | HIGH | eps-2024-provincial-grants-budget-variance.md | Up from ~$30M (2022) |
| Photo-radar reserve → EPS | $22.3M/yr → ~$0 | 2019-22, collapsed 2023+ | HIGH | edmonton-funding-to-eps-resource-analysis.md | Province banned most photo radar Apr 2025 |
| Surveillance / tech capital (floor) | ~$42-48M | 2019-2026 | MED | eps-camera-programs-refined-figures.md | BWC $16.2M + in-car $9.2M + helicopters $12.1M + IT. FLOOR — excludes undisclosed gear |
| Facial rec / ALPR / IMSI / drone dollar values | UNDISCLOSED | 2016-2025 | LOW | eps-neoface-reveal-nec.md, eps-stingray-imsi-catcher.md | Clean FOIP targets; EPS won't disclose |
| Legal settlements (mechanism) | City-wide self-insured provision $28.1M | 2023 | HIGH | city-edmonton-self-insured-claims-provision-2023.md | Pooled city-wide — EPS share never itemized = effectively off-budget |
| Confirmed EPS payout (Tim Hague) | ~$116K on a $5.3M claim | 2023 | HIGH | tim-hague-wrongful-death-settlement.md | ~2% claim-to-payout ratio |
| Civil asset forfeiture → EPS | ~$0 direct | 2022-24 | HIGH | alberta-civil-forfeiture-community-grants-2022-2024.md | Alberta routes proceeds to community orgs |
| ALERT / federal guns-and-gangs | $29-56M/yr; $53M cumulative — OFF EPS ledger | 2016-2026 | HIGH | alert-alberta-funding.md | Bypasses EPS budget entirely |

**Aggregate external (non-tax-levy) inflows reaching EPS ~2024: ~$56-60M/yr** (~$47.7M grants + ~$7.3M traffic-fine share + episodic). This sits *on top of* the $475M taxpayers pay.
## Equipment dossier (confirmed vs rumored)
Tag discipline: **confirmed** = EPS-admitted / council-documented / hard reporting; **rumored** = alleged or inferred, no receipt; **not-eps** = belongs to another force (misattribution trap); **not-found** = searched, no Edmonton evidence.

| Item | Status | Year(s) | Cost (CAD) | Vendor | Source | Note |
|---|---|---|---|---|---|---|
| Clearview AI facial recognition | confirmed | 2019-2020 | ~$0 (free trials) | Clearview AI | globalnews-clearview-ai-3-officers.md | 3 senior officers; used on 1 case; surfaced only via Clearview breach; EPS "not forthcoming" per privacy commissioner |
| Axon FR body-cam POC | confirmed | 2025 | undisclosed (atop $16M bodycam) | Axon | eps-press-release-fr-bodycam-poc.md | World-first; ~7,000-face watchlist; up to 50 officers; Commission decides 2026 |
| Body-worn cameras | confirmed | 2023-2026 | $16M / 5yr | Axon (Body 4) | cbc-body-worn-cameras-16m.md | Sole-source; ~280 officers |
| Helicopter AIR-2 (Airbus H125) | confirmed | 2019-2020 | $5.95M | Airbus | eps-air2-helicopter-h125.md | AIR-1 ~$600K/yr operating; 2-heli fleet w/ FLIR |
| Armored rescue vehicle ARV2 "Black Wolf" | confirmed | 2019-2020 | $500K | custom (F-550) | progress-report-eps-new-arsenal.md | Rated to stop .50 cal; gun ports |
| Drone / UAV program | confirmed | 2014-2020 | $27K origin unit (fleet undisclosed) | mixed | cbc-drone-27000-collision.md | ~10-drone fleet; FLIR, spotlights, megaphones |
| Cell-site simulator (StingRay) | confirmed | 2016 | ~$100K-500K/unit (EST) | Harris | vice-eps-stingray-admission.md | First municipal Cdn admission of past use; later walked back; cost is my estimate |
| Tasers / CEWs (TASER 7) | confirmed | 2019-2022 | $2M of $3.6M plan | Axon | cbc-glocks-tasers-3.6m.md | Other $1.6M was Glock pistols |
| Command centre | confirmed | 2019-2020 | $370K | — | progress-report-eps-new-arsenal.md | |
| Sniper rifles / carbines / NVG | confirmed | ~2020 | part of $6.8M "specialized equipment" line | — | progress-report-eps-new-arsenal.md | 8 sniper rifles + 4 on order; tear-gas launcher |
| ALPR / ANPR database | confirmed (historic) | 2004-present | modern cost undocumented | unknown | wikipedia-diotte-alpr-database.md | 2004 "high-risk driver" DB abused against a councillor; chief fired; $1.75M suit |
| In-house AI (transcription / case-linking) | rumored | 2025-2026 | undisclosed | in-house | citizenlab-algorithmic-policing-edmonton.md | Reported, no procurement receipt |
## Military contrast (anchor = $475M net; gross $560M in parens where useful)
USD→CAD at **1.37** (conservative; 2026 spot ~1.42). `*` = 2025 aggregator figure (SIPRI's confirmed latest is 2024; treat as ~current estimate). Multiple = 475 ÷ CAD figure.
### Shock tier — EPS ≥ the entire national military
| Nation | Defence (CAD M) | Yr | Population | ×EPS@475 | Note |
|---|---|---|---|---|---|
| Iceland | 0 | 2024 | 395,050 | ∞ | No standing army *by policy* — footnote this |
| Cape Verde | 16.4 | 2025* | 491,233 | 29.0× | |
| Gambia | 17.8 | 2025* | 2,422,712 | 26.7× | Pop 2× Edmonton |
| Barbados | 20.6 | 2025 | 282,000 | 23.1× | LOW confidence (GDP-share derived) |
| Mauritius | 28.8 | 2025* | 1,241,856 | 16.5× | ~Edmonton pop |
| Sierra Leone | 30.1 | 2025* | 9,077,691 | 15.8× | **Pop 9.1M ≫ Edmonton** — shock line, NOT fairness |
| Belize | 35.6 | 2025* | 417,634 | 13.3× | |
| Timor-Leste | 71.2 | 2025* | 1,391,221 | 6.7× | |
| Fiji | 98.6 | 2025* | 902,623 | 4.8× | |
| Moldova | 108.2 | 2025* | 2,365,600 | 4.4× | |
| Guyana | 126.0 | 2025* | 956,044 | 3.8× | |
| Montenegro | 141.1 | 2025* | 622,902 | 3.4× | NATO member |
| Malta | 142.5 | 2025* | 574,250 | 3.3× | |
| Jamaica | 297.3 | 2025* | 2,774,538 | 1.6× | |
| Trinidad & Tobago | 312.4 | 2025* | 1,367,764 | 1.5× | |
| North Macedonia | 323.3 | 2025* | 1,822,612 | 1.5× | NATO member |
### Fairness tier — population-matched peers (not cherry-picked)
| Nation | Defence (CAD M) | Yr | Population | EPS ÷ theirs | Matches | Note |
|---|---|---|---|---|---|---|
| New Zealand | 4,111 | 2024 | 5,361,300 | 0.12× | Alberta | Real military dwarfs EPS |
| Ireland | 1,823 | 2024 | 5,458,600 | 0.26× | Alberta | |
| Croatia | 1,781 | 2024* | 3,866,233 | 0.27× | Alberta | |
| Estonia | 1,987 | 2024 | 1,360,745 | 0.24× | **Edmonton** | NATO frontline, 3% GDP — EPS far smaller |
| Cyprus | 693 | 2025* | 983,000 | 0.69× | Edmonton | EPS ≈ two-thirds of Cyprus's military |
| Trinidad & Tobago | 312.4 | 2025* | 1,367,764 | 1.52× | Edmonton | **EPS exceeds their entire military** |
| Mauritius | 28.8 | 2025* | 1,241,856 | 16.5× | Edmonton | EPS vastly exceeds |

**Honest framing:** among Edmonton-city-sized nations, EPS *exceeds* the militaries of Trinidad & Tobago and Mauritius and is ~⅔ of Cyprus's — but is dwarfed by Estonia (a NATO frontline state). Alberta-sized peers (NZ, Ireland, Croatia) all outspend EPS. The strongest defensible claim: **EPS's budget rivals or exceeds the entire military of numerous sovereign nations of comparable or larger population than Edmonton.**
## Per-capita contrast (the recognizable-names framing)
This is the sharper hook: compare EPS spend **per Edmonton resident** to military spend **per citizen** — which puts recognizable giants (China, India, Brazil, Mexico) on the list instead of only microstates. Edmonton city population = **1,100,000** (2021 census 1,010,899; ~1.15M 2024 est). EPS per resident = EPS ÷ 1.1M:
- **$475M net → $432/resident.** **$560M gross → $509/resident.** (Sensitivity: at 1.01M pop, $470/$554; at 1.15M, $413/$487. Report the band **$432–$509**.)
Military $/capita CAD = (SIPRI 2025 USD × 1.37) ÷ population. All defence figures SIPRI **2025** (one year newer than the small-nation shock tier above — do not merge the two tiers' years).

| Nation | Defence (CAD) | Population | Military $/capita | vs EPS |
|---|---|---|---|---|
| Israel | $66.2B | 10.25M | $6,454 | outspends EPS |
| United States | $1,307B | 341.8M | $3,824 | outspends EPS |
| Germany | $156.2B | 83.5M | $1,871 | outspends EPS |
| Russia | $260.3B | 146.0M | $1,783 | outspends EPS |
| United Kingdom | $121.9B | 69.5M | $1,755 | outspends EPS |
| Australia | $48.4B | 27.8M | $1,740 | outspends EPS |
| France | $93.2B | 69.1M | $1,349 | outspends EPS |
| Canada | $51.4B | 41.4M | $1,240 | outspends EPS |
| Italy | $65.9B | 58.9M | $1,118 | outspends EPS |
| Japan | $85.2B | 122.8M | $694 | outspends EPS |
| **Turkey** | $41.1B | 86.1M | **$477** | **between anchors** — EPS gross ($509) edges it |
| **EPS @ $560M gross** | — | 1.10M | **$509/resident** | — |
| **EPS @ $475M net** | — | 1.10M | **$432/resident** | — |
| **China** | $460.3B | 1,404.9M | **$328** | **EPS exceeds** — ~1.3–1.6× |
| **Brazil** | $32.7B | 213.4M | **$153** | **EPS exceeds** — ~2.8–3.3× |
| **Mexico** | $18.6B | 131.2M | **$142** | **EPS exceeds** — ~3.0–3.6× |
| **India** | $126.2B | 1,429.4M | **$88** | **EPS exceeds** — ~4.9–5.8× |
| **Indonesia** | $20.6B | 288.3M | **$71** | **EPS exceeds** — ~6.1–7.2× |

**The money line (TRUE and defensible):** *Edmonton spends more per resident on police than China, Brazil, Mexico, India, or Indonesia spends per citizen on its military.* At the gross anchor it also edges Turkey. **Do NOT feature** Ukraine ($4,015/capita — wartime + foreign-aid inflated, population excludes refugees) or Nigeria ($13/capita, ~39× — a dramatic multiple but reflects underfunding amid active insurgencies, not restraint; a hostile reader pounces). China/India/Brazil/Mexico are the clean, recognizable wins.
Decision boundary: any EPS/resident figure above **$477** clears Turkey; above **$328** clears China. Only the two EPS rows move if the anchor shifts — nation values are fixed. Currency at 1.37; spot (1.42) raises everything ~4% equally, so the ranking and money line are unchanged.
## Adversarial notes (survive the hostile reader)
- Anchor is the *conservative* net figure; gross ($560M) makes every multiple larger, never smaller. Say so.
- Iceland has no army by policy, not by poverty — footnote, don't headline it alone.
- Barbados is lowest-confidence; don't lead a headline with it.
- Sierra Leone's population is 9M — powerful shock, but never place it in the fairness tier.
- Facial recognition is TWO separate episodes (Clearview 2019-20; Axon 2025) — don't conflate.
- The black-box "total" is a floor, not a precise sum; present it as a reconstructed range with confidence levels, never a false-precision single number.
