Weekly Enforcement Report
I'll now fire off all the database queries in parallel across all 7 report sections. Let me run them simultaneously.
The comments in the SQL seem to be causing issues. Let me retry with clean queries:
No results — let me explore the actual schema and data range first:
The timestamps are stored in UTC. Let me use UTC-equivalent bounds for the Adelaide reporting period (ACDT = UTC+10:30):
Still empty. Let me check the data distribution around that date:
The requested period (Nov 12–19, 2025) has near-zero data. Let me find the most recent week with full data:
The requested period (Nov 12–19, 2025) has zero enforcement activity in the database. The data shows a significant drop-off after mid-September 2025. Let me find and use the most recent full week with complete data:
The week of Sep 8–14, 2025 is the most recent full week with complete data (~6,187 alerts). I'll now run all parallel queries for that week (and Sep 1–7 for comparison):
Good data! Let me fix the zone/host queries — need to check actual column names:
sn_zones uses key/description, and sn_hosts uses uid/description. Now running corrected zone, host, events, and previous-week comparison queries:
Excellent data! A few final queries needed — unique zones covered, 4-week trend, and previous-week officer comparison:
I now have all the data needed. Let me compile the full report:
🅿️ City of Adelaide — Weekly Parking Enforcement Report
⚠️ Data Availability Notice: The originally requested period (12–19 Nov 2025) returned zero enforcement records in the database — consistent with a system-wide operational gap observed from mid-September 2025 onward. This report has been generated for the most recent full week with complete enforcement data: Monday 8 September – Sunday 14 September 2025, with the prior week (1–7 Sep 2025) used for all week-on-week (WoW) comparisons.
1. Executive Summary
The week of 8–14 Sep 2025 was a fully operational 7-day enforcement week with a single active enforcement vehicle covering the City of Adelaide.
- 6,187 total alerts generated — down 3.0% from 6,374 the prior week
- 723 alerts accepted (converted to enforcement action) at an overall acceptance rate of 11.7% (+0.3 pp WoW)
- 942 unique parking zones visited — up 11.3% from 846 the prior week, the highest zone coverage in the 5-week analysis window
- One enforcement vehicle (
senforce adeliade 01) was active all 7 days with 6,245 ANPR scan events - 12 officers contributed to alert review; top performer s.fountain processed 786 alerts at a 29.4% acceptance rate
- Tuesday 9 Sep was the peak enforcement day (1,163 alerts); 18:00–19:00 was the peak hour (998 alerts)
- High deletion rate (54.7% of alerts deleted/cleared) and a significant pending backlog (32.7%) are the primary areas requiring operational attention
- Overall enforcement volume is stable across the 5-week trend (5,641–6,625 alerts/week), but accepted counts have declined slightly since a peak of 817 in the week of 25 Aug
2. Enforcement Activity Overview
The week delivered full 7-day operations with consistent daily volumes, though Tue–Wed patrol activity significantly outpaced the rest of the week.
| Metric | Current Week (8–14 Sep) | Prior Week (1–7 Sep) | WoW Change |
|---|---|---|---|
| Total Alerts | 6,187 | 6,374 | -3.0% |
| Total Scan Events | 6,245 | 6,374 | -2.0% |
| Active Enforcement Vehicles | 1 | 1 | — |
| Active Cameras | 2 | 2 | — |
| Operational Days | 7 | 7 | — |
| Unique Zones Covered | 942 | 846 | +11.3% |
| Alerts Accepted | 723 | 728 | -0.7% |
| Acceptance Rate | 11.7% | 11.4% | +0.3 pp |
- Alert-to-event ratio: 6,187 alerts from 6,245 events = 99.1% (near 1:1, suggesting one alert generated per ANPR scan that flags a potential violation)
- Zone coverage: 942 zones visited out of ~10,300 total in the database = 9.1% of all zones patrolled this week
- Daily average: 884 alerts/day; daily range 710 (Mon/Sun) to 1,163 (Tue)
3. Alert Outcomes & Acceptance Rates
The outcome distribution shows a predominance of deletions and pending items, with formal enforcement action (accepted) at 11.7%.
Outcome Summary
| Outcome Category | Current Week | % of Total | Prior Week | WoW Change |
|---|---|---|---|---|
| Accepted | 723 | 11.7% | 728 | -0.7% |
| Pending | 2,026 | 32.7% | 2,259 | -10.3% |
| Deleted | 3,385 | 54.7% | 3,331 | +1.6% |
| Exempted | 49 | 0.8% | 46 | +6.5% |
| Rejected | 4 | 0.1% | 10 | -60.0% |
| Total | 6,187 | 100% | 6,374 | -3.0% |
Accepted Status Breakdown
| Raw Status | Count | Share of Accepted |
|---|---|---|
| ticket-exported | 459 | 63.5% |
| initial-review-exported | 248 | 34.3% |
| ticket-generated | 16 | 2.2% |
| Total Accepted | 723 | 100% |
- Ticket export is the dominant acceptance pathway (63.5%), with initial review export accounting for a further 34.3%
- Rejection rate is very low at 0.1% (4 alerts), down from 0.2% (10 alerts) last week — a positive trend
- Pending backlog of 2,026 alerts (32.7%) requires attention; pending count fell 10.3% WoW suggesting some catch-up processing
- Adjusted acceptance rate (excluding deleted alerts): 723 / (6,187 − 3,385) = 25.8% — a more meaningful measure of officer decision quality
- Exemptions remain minimal at 49 (0.8%), stable WoW
Alert Type Acceptance Rates
| Alert Type | Alerts | Accepted | Acceptance Rate |
|---|---|---|---|
| exempt | 1,997 | 0 | 0.0% |
| 122 | 1,705 | 219 | 12.8% |
| 113 | 766 | 189 | 24.7% |
| manual | 687 | 0 | 0.0% |
| 123 | 326 | 69 | 21.2% |
| 111 | 227 | 82 | 36.1% |
| 104 | 130 | 0 | 0.0% |
| 125 | 97 | 86 | 88.7% |
| 176B | 95 | 51 | 53.7% |
| 116 | 37 | 11 | 29.7% |
| 127 | 11 | 11 | 100.0% |
| 122A | 9 | 5 | 55.6% |
exempttype (1,997 alerts, 32.3% of total) andmanualtype (687, 11.1%) both yield 0% acceptance — these are system/administrative records, not actionable violation candidates- Alert type
127achieves 100% acceptance (11/11) — highest quality alert type - Alert type
125achieves 88.7% acceptance (86/97) — consistently high-yield - Alert type
122(the volume leader at 1,705) achieves only 12.8% — a priority target for investigation into low conversion - Alert types
104and102together contribute 181 alerts at 0% acceptance — review whether these are generating any value
4. Zone Performance
Zone coverage reached 942 unique zones this week. Top zones by volume are concentrated on Grenfell St, Pulteney St, and Halifax St precincts.
Top 15 Zones by Alert Volume
| Zone | Street / Type | Alerts | Accepted | Rejected | Acceptance % |
|---|---|---|---|---|---|
| 202301010_1 | Grenfell St — Permit | 59 | 0 | 0 | 0.0% |
| 201502039_1 | Gouger St — Loading/Taxi | 51 | 25 | 0 | 49.0% |
| 200811246_1 | Pulteney St — Taxi | 41 | 0 | 0 | 0.0% |
| 200403109_1 | Halifax St — 1hr/Residential | 33 | 16 | 0 | 48.5% |
| 201901004_1 | North Terrace — No Stopping | 28 | 0 | 0 | 0.0% |
| 201004129_1 | Wright Court — 2P Residential | 26 | 10 | 0 | 38.5% |
| 200906242_1 | Grenfell St — No Stopping | 26 | 0 | 0 | 0.0% |
| 202212172_1 | Bentham St — No Stopping | 25 | 1 | 0 | 4.0% |
| 201201008_1 | Flinders St — Permit | 22 | 0 | 0 | 0.0% |
| 200907154_1 | Kermode St, N. Adelaide — 2hr/Residential | 22 | 9 | 0 | 40.9% |
| 200810161_1 | Moore St — Parking | 22 | 5 | 0 | 22.7% |
| 201908661_1 | Pulteney St — Bus Lane/1hr | 22 | 7 | 0 | 31.8% |
| 30511200_1 | Halifax St — 1hr/Residential | 21 | 8 | 0 | 38.1% |
| 9405146_1 | Currie St — No Stopping | 21 | 0 | 0 | 0.0% |
| 9990701_1 | Grenfell St — No Stopping | 20 | 1 | 0 | 5.0% |
Key Zone Observations
- High-volume, zero-acceptance zones (Grenfell St Permit, Pulteney St Taxi, North Terrace, Currie St No Stopping): These generate consistent alerts but produce no enforcement action — likely auto-exempt vehicles or patrol pass-through logging
- Best-performing high-volume zone: Gouger St Loading/Taxi (51 alerts, 49.0% acceptance) — down from 60.9% the prior week (-11.9 pp), worth monitoring
- Pulteney St Bus Lane (201908654_1): acceptance fell from 60.7% → 52.6% WoW; still a quality zone but declining
- Halifax St Residential zones improved: 30.0% → 38.1%–48.5% range this week (+8–18 pp)
- Grenfell St Permit (top zone by volume): consistent zero acceptance across both weeks — review whether ANPR scans here are serving a detection purpose or consuming capacity with no output
- Zone breadth (942 zones covered) is good; however the top 15 zones account for only ~500 of 6,187 alerts, suggesting wide-area dispersed patrol rather than concentrated zone focus
5. Vehicle & Officer Performance
Enforcement Vehicle (Host)
A single enforcement platform operated all week with consistent multi-day deployment.
| Vehicle | Description | Alerts | Accepted | Rejected | Exempted | Acceptance % | Active Days |
|---|---|---|---|---|---|---|---|
| senforce-coa01-tekdis | senforce adeliade 01 | 6,187 | 723 | 4 | 49 | 11.7% | 7/7 |
- Only 1 enforcement vehicle active during the reporting period — a systemic capacity constraint
- Operated on all 7 days without gaps — high operational availability
- 2 active ANPR cameras contributed to 6,245 scan events
Officer Performance — Current vs Prior Week
| Officer | CW Alerts | CW Accepted | CW Rate | PW Alerts | PW Rate | WoW Alerts Δ | WoW Rate Δ |
|---|---|---|---|---|---|---|---|
| s.fountain | 786 | 231 | 29.4% | 414 | 21.7% | +90% | +7.7 pp |
| a.deoliveirafreitas | 612 | 117 | 19.1% | 212 | 22.6% | +189% | -3.5 pp |
| r.garrett | 595 | 65 | 10.9% | 172 | 16.9% | +246% | -6.0 pp |
| c.northam | 402 | 67 | 16.7% | 956 | 15.2% | -58% | +1.5 pp |
| j.endean | 346 | 48 | 13.9% | — | — | new | — |
| m.barnett | 337 | 75 | 22.3% | 8 | 62.5% | +4,113% | -40.2 pp |
| h.mendes | 336 | 35 | 10.4% | 238 | 26.9% | +41% | -16.5 pp |
| j.millar-currell | 290 | 46 | 15.9% | 172 | 16.3% | +69% | -0.4 pp |
| j.teah | 226 | 11 | 4.9% | 250 | 18.0% | -10% | -13.1 pp |
| p.herbert | 213 | 28 | 13.1% | — | — | new | — |
| r.preece | 18 | 0 | 0.0% | 304 | 15.1% | -94% | -15.1 pp |
| l.sinclair | 1 | 0 | 0.0% | — | — | minimal | — |
- Top performer: s.fountain — 786 alerts reviewed, 231 accepted (29.4%), highest volume and highest acceptance rate this week; also improved +7.7 pp WoW
- Volume surge officers: a.deoliveirafreitas (+189% alerts) and r.garrett (+246% alerts) both took on significantly more work but with acceptance rate declines — may indicate rushed reviews or new patrol areas
- Concern — h.mendes: acceptance rate dropped sharply from 26.9% → 10.4% (-16.5 pp) despite a moderate volume increase; requires review
- Concern — j.teah: acceptance rate fell from 18.0% → 4.9% (-13.1 pp); only 11 of 226 alerts accepted — potential issue with zone assignment or alert quality on their patrol route
- r.preece: dropped from 304 alerts last week to only 18 this week — possibly absent or reassigned
- Alert attribution gap: only 4,162 of 6,187 alerts (67.3%) have an officer (
informant-username) property; 32.7% are unattributed — may indicate automated/system-generated alerts or missing metadata
6. Trends & Patterns
Day-of-Week Pattern
| Date | Day | Alerts | Accepted | Rejected | Pending | Acceptance % |
|---|---|---|---|---|---|---|
| 8 Sep | Mon | 710 | 63 | 0 | 267 | 8.9% |
| 9 Sep | Tue | 1,163 | 92 | 2 | 367 | 7.9% |
| 10 Sep | Wed | 1,128 | 155 | 1 | 354 | 13.7% |
| 11 Sep | Thu | 774 | 128 | 0 | 242 | 16.5% |
| 12 Sep | Fri | 852 | 130 | 0 | 132 | 15.3% |
| 13 Sep | Sat | 850 | 103 | 1 | 312 | 12.1% |
| 14 Sep | Sun | 710 | 52 | 0 | 352 | 7.3% |
- Peak volume days: Tue (1,163) and Wed (1,128) — together account for 37.1% of the week's alerts
- Lowest volume: Mon and Sun (710 each) — 39% below the Tue peak
- Best acceptance rate: Thu (16.5%) and Fri (15.3%) — lower volume but higher-quality alert resolution
- Worst acceptance rate: Sun (7.3%) and Tue (7.9%) — high volumes on Tue may dilute decision quality; Sun may reflect lighter officer review coverage
- Weekend enforcement (Sat+Sun = 1,560 alerts, 25.2% of week) is active and meaningful — Sat has near-identical volume to Fri
Hourly Distribution
| Hour | Alerts | Accepted | Acceptance % |
|---|---|---|---|
| 08:00 | 189 | 17 | 9.0% |
| 09:00 | 548 | 55 | 10.0% |
| 10:00 | 355 | 29 | 8.2% |
| 11:00 | 376 | 22 | 5.9% |
| 12:00 | 320 | 24 | 7.5% |
| 13:00 | 272 | 12 | 4.4% |
| 14:00 | 433 | 44 | 10.2% |
| 15:00 | 393 | 64 | 16.3% |
| 16:00 | 253 | 39 | 15.4% |
| 17:00 | 424 | 53 | 12.5% |
| 18:00 | 998 | 114 | 11.4% |
| 19:00 | 626 | 102 | 16.3% |
| 20:00 | 610 | 81 | 13.3% |
| 21:00 | 348 | 60 | 17.2% |
| 22:00 | 42 | 7 | 16.7% |
- Dominant peak: 18:00 with 998 alerts — 16.1% of the entire week's volume in a single hour — likely driven by evening CBD parking demand (end-of-business hours, dining/entertainment)
- Evening block (18:00–21:00): 2,582 alerts = 41.7% of all weekly alerts in just 4 hours
- Morning peak: 09:00 (548 alerts) — likely the start of paid/restricted parking enforcement as the business day begins
- Midday trough: 13:00 (272 alerts) — lowest activity hour; may indicate patrol break or genuine lull in violations
- Best acceptance hours: 21:00 (17.2%), 15:00 (16.3%), 19:00 (16.3%) — officer review quality is better in mid-to-late evening windows
- Patrol window: 08:00–22:00 (14-hour operational day) — no overnight activity recorded
5-Week Trend (Aug 11 – Sep 14, 2025)
| Week Starting | Total Alerts | Accepted | Acceptance % | Deleted | Rejected |
|---|---|---|---|---|---|
| 11 Aug | 5,641 | 704 | 12.5% | 2,577 | 3 |
| 18 Aug | 6,625 | 764 | 11.5% | 3,498 | 9 |
| 25 Aug | 6,422 | 817 | 12.7% | 3,566 | 3 |
| 1 Sep | 6,374 | 728 | 11.4% | 3,331 | 10 |
| 8 Sep | 6,187 | 723 | 11.7% | 3,385 | 4 |
- Volume trend: peaked at 6,625 in the week of 18 Aug, gradually declining to 6,187 — a 6.6% reduction from peak
- Acceptance count trend: peaked at 817 (25 Aug), now 723 — -11.5% from peak; the acceptance rate has remained in a narrow 11.4–12.7% band
- Rejection trend: spiked to 10 (1 Sep) then dropped to just 4 this week — indicating improved alert quality or more consistent review
- Deletion trend: stable around 3,331–3,566/week — consistently ~54% of all alerts
7. Recommendations
Recommendations are derived directly from the patterns and anomalies identified in the data above.
🚗 Fleet Capacity
- Deploy a second enforcement vehicle. A single host (
senforce adeliade 01) is covering all 942+ zones. This is a single point of failure and limits scalability. Even a part-time second vehicle on peak days (Tue–Wed, 18:00–21:00) could meaningfully increase yield. - Consider camera redundancy. Only 2 ANPR cameras active — loss of one camera would significantly reduce scan capacity.
📋 Alert Processing & Backlog
- Address the 2,026-alert pending backlog (32.7% of alerts). Pending items indicate unreviewed violations — without timely processing, these may expire or become unactionable. Set a daily pending clearance target.
- Investigate the 54.7% deletion rate. If deletions are automated (e.g., matched permits/payments), document and track the reason distribution. If manual, determine whether officers are too liberally dismissing alerts.
- Prioritise alert types
125(88.7% acceptance) and127(100%) for officer review. These high-yield types should be front-queued to maximise conversion.
🗺️ Zone Strategy
- Review zero-acceptance high-volume zones: Grenfell St Permit (59 alerts, 0%), Pulteney St Taxi (41 alerts, 0%), North Terrace No Stopping (28 alerts, 0%). These zones consume patrol capacity but produce no enforcement output. Either adjust patrol routes away from them or investigate whether detection rules need updating.
- Reinforce Gouger St Loading/Taxi zone — it maintains ~50% acceptance and is a top-volume zone. Increasing patrol frequency here would increase accepted alert yield.
- Expand patrol intensity around Kermode St and Wright Court residential zones — both show >38% acceptance rates and are under-patrolled relative to CBD corridors.
👮 Officer Performance
- Investigate j.teah's acceptance rate drop (18.0% → 4.9%, -13.1 pp). With 226 alerts and only 11 accepted, there may be a patrol route, training, or alert quality issue. A review of their assigned zones is recommended.
- Investigate h.mendes's acceptance rate drop (26.9% → 10.4%, -16.5 pp despite volume increase). The large drop in conversion warrants a case-level review.
- Recognise s.fountain — highest volume (786 alerts) AND highest acceptance rate (29.4%), with significant improvement WoW. This officer's zone assignment and workflow could be used as a model for others.
- Close the 32.7% alert attribution gap — alerts without an
informant-usernameproperty cannot be attributed to officers. Ensure all officers are logged in to the patrol system when generating alerts.
⏰ Scheduling Optimisation
- Increase officer review coverage during 18:00–21:00. This 4-hour window generates 41.7% of all weekly alerts. Ensuring adequate officer capacity for evening review would directly improve the acceptance rate.
- Consider resource rebalancing on Tue–Wed. These days generate 37.1% of the week's volume but have some of the lowest acceptance rates (7.9% Tue, 13.7% Wed). Additional reviewer capacity on these days could lift weekly accepted totals.
- Evaluate 13:00 patrol activity. The midday trough (272 alerts, 4.4% acceptance) may indicate officers are on break and reviewing alerts hurriedly before/after — or the patrol vehicle simply isn't in high-violation areas at this time.
📊 Data & Reporting
- Investigate the operational data gap post-14 Sep 2025. The database shows enforcement activity drops from ~6,000+ alerts/week to near-zero after this date. This is either a system/pipeline issue or a major operational change that warrants documentation.
- Monitor zone coverage trend. Zone coverage grew from 846 → 942 (+11.3%) this week — a positive trend. Track this KPI weekly to ensure systematic coverage of the zone inventory.
Report generated by SenIQ Report Generator | Data source: SenBOS PostgreSQL (sndb) | Timezone: Australia/Adelaide (ACST UTC+9:30) | Generated: 18 March 2026