home / mytown-research

Surveillance tech: totals by technology category

Every line item grouped by what the technology actually is (ALPR, body cameras, gunshot detection, face recognition, data fusion/OSINT, phone forensics, drones, cameras, cell-site interception, photo enforcement, jail-call monitoring, student monitoring — plus the not-surveillance categories radio_infra and rms, shown so they can be excluded).

Custom SQL query returning 17 rows (hide)

SELECT CASE WHEN ledger LIKE 'sv:%'
            THEN substr(ledger, 4, instr(substr(ledger,4), ':') - 1)
            ELSE ledger END AS category,
       count(*) AS line_items,
       count(DISTINCT vendor) AS vendors,
       count(DISTINCT city || state) AS governments,
       round(sum(amount),2) AS conservative_total
FROM surveillance_spending
WHERE dup_rank = 1 AND amount_type = 'stated'
  AND COALESCE(anomaly,0)=0 AND COALESCE(geo_suspect,0)=0
  AND ledger NOT LIKE 'sv:radio_infra:%' AND ledger NOT LIKE 'sv:rms:%'
  AND ledger NOT LIKE 'sv:biometrics:%' AND ledger NOT LIKE 'sv:not_surveillance:%'
  AND ledger NOT LIKE 'sv:police_equipment:%'
GROUP BY category
ORDER BY conservative_total DESC NULLS LAST

Edit SQL

This data as json, CSV

categoryline_itemsvendorsgovernmentsconservative_total
axon 1076 1 544 549523483.92
flock 512 49 315 56074256.0
motorola 103 1 78 35110813.0
fusion 90 9 64 22690530.0
alpr 58 7 37 20952737.0
gunshot 33 2 21 18859941.0
drone 65 4 52 16804044.0
other 27 5 22 14235758.0
forensics 248 8 98 12203141.0
photo_enforce 39 4 8 10105070.0
camera 75 9 56 9383543.0
bodycam 52 6 36 9129657.0
jail 10 3 7 3591755.0
intercept 18 4 13 3237001.0
face 72 4 46 2614613.0
weapons 2 2 2 220000.0
student 6 4 6 83310.0
Powered by Datasette · Queries took 27.28ms