Montgomery County MD Police Dispatch - Calls & Response Times
Pricing
from $0.03 / 1,000 montgomery county police incident records
Montgomery County MD Police Dispatch - Calls & Response Times
Every call Montgomery County, Maryland police responded to (public open data, 1.92M incidents, 2017-today): priority, call type as received and as closed, address and coordinates, police district and beat, and seven response-time intervals in seconds. Filter by type, district, city or response time.
Pricing
from $0.03 / 1,000 montgomery county police incident records
Rating
0.0
(0)
Developer
Wenhao Yang
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Every call the Montgomery County, Maryland police responded to, straight from the county's dispatch log. 1.92 million incidents, from April 2017 through the last completed call.
Low cost
From $0.00005 per record, down to $0.00003 at Gold. Pay only for the records you actually receive - the whole register stays queryable, you are never billed for the scan behind it.
What you get
One row per dispatched incident, with the full call timeline attached:
- What - the priority and the call type, both as first received and as finally closed, and the disposition
- Where - the block-level address, the city and ZIP, the coordinates, and the police district and beat
- When - the call start and end timestamps
- The response-time chain - seven intervals in seconds: call->call-route, call->dispatch, call->arrive, call->cleared, call-route->dispatch, dispatch->arrive, and arrive->cleared
- Linked reports - the crime report and crash report numbers, where one exists
Filter it
- Call type -
initialType="TRAFFIC"(as received) orcloseType="SUSPICIOUS"(as closed). 234 and 238 types respectively. - Priority - 0 through 5. Priority 1 is the largest group (~783,000 calls).
- District and beat -
district="3D",beat="G1". 9 districts, 45 beats (plus an unattributed bucket). - City and ZIP -
city="Rockville",zip="20852". 97 cities (plus an unattributed bucket). - Response time -
minResponseSeconds=900finds every call a unit took over 15 minutes to reach. - Date range and last-N-days.
Example inputs
Slow responses - dispatch-to-arrival over 15 minutes, in seconds.
{ "minResponseSeconds": 900, "maxResults": 50 }
One city's serious calls - combine city and priority.
{ "city": "ROCKVILLE", "priority": "1", "maxResults": 50 }
One type of call, newest first - initialType is a substring match.
{ "initialType": "DOMESTIC", "maxResults": 25 }
Where the calls are - mode=aggregate returns one count row per district;
every group comes back.
{ "mode": "aggregate", "groupBy": "district" }
Or roll it up
Set mode=aggregate and get a rolled-up count by priority, district,
beat, call type (received or closed), disposition or city.
Every group comes back - not cut off by maxResults.
Then analyse response
- Which call types and districts take longest to reach.
- The full timeline of a single incident, interval by interval.
- Call volume by priority, district and beat, over any window.
- Domestic and traffic calls, with their dispositions.
Example output
One incident - city=ROCKVILLE, minResponseSeconds=600:
{"platform": "md-moco-police","source": "montgomery-county-md-police-dispatch","mode": "rows","groupKey": "","groupCount": "","groupBy": "","incidentId": "P2600291687","startTime": "2026-09-29T11:32:51.000","endTime": "2026-09-29T12:17:02.000","priority": "2","initialType": "TRESPASSING/UNWANTED","closeType": "TRESPASSING/UNWANTED","address": "16000 BLK SHADY GROVE RD","city": "ROCKVILLE","state": "MD","zip": "20850","longitude": "-77.1826","latitude": "39.11891","policeDistrict": "1D","beat": "A1","crimeReportNumber": "","crashReports": "","pra": "439","calltimeCallroute": "77","calltimeDispatch": "277","calltimeArrive": "1752","calltimeCleared": "2650","callrouteDispatch": "199","dispatchArrive": "1475","arriveCleared": "898","disposition": "TRESPASSING","sourceUpdatedAt": "2026-09-29"}
mode=aggregate, groupBy=priority - one count row per priority:
1 ~783,3002 ~456,4004 ~365,1000 ~179,2003 ~136,1005 4
Notes on the data, from the source
- The intervals are in seconds.
dispatchArriveis the time from a unit being dispatched to its arrival;calltimeArriveis from the call coming in to the unit arriving. - A missing interval is a fact about the call, not a gap. About a quarter
of calls were handled without a unit ever arriving (a phone resolution, a
cancelled call), so
calltimeArrive,dispatchArriveandarriveClearedare empty on those rows - and a response-time query only matches calls that did have an arrival. - Addresses are block-level (e.g.
900 BLK N FREDERICK AVE), as the dispatch system holds them. - The register is updated daily;
sourceUpdatedAtcarries the dataset's own refresh date.