Live from NYC Open Data

A day on the police radio

Pick any of New York City's 77 police precincts and any day in 2025. This pulls every 911 call and radio run the New York City Police Department (NYPD) dispatched there that day, straight from the city's own records, and rebuilds the map, the timeline and the response breakdown live.

🚑 Fire & medical (FDNY) version → ☎️ 311 service-request version →
Data available for Jan 1 – Dec 31, 2025. Source: NYPD Calls for Service (Year-to-Date), NYC Open Data.
The day, block by block

Where the calls came from

Each dot is one dispatched job, placed at the location the radio run was logged and colored by what kind of call it was. Press play to sweep through the 24 hours, or drag the slider. Tap the colored chips to isolate a call type, and click any dot for the details.

Nothing matches these filters

All day
Priority
Source
“Officer-initiated” covers proactive patrol, inspections and sweeps, plus jobs where a unit was already on scene (no travel). “911 / dispatched” are complaints a unit was sent to and drove to. Inferred from the records, which don't name who started each job.
In “Live flow” mode, dots brighten as their call comes in and fade over the following 40 minutes, so you can watch the rhythm of a shift. Clicking an hour below filters the map to that hour. Looking for 311 requests? They now have their own explorer.
The day as it happened

Play the dispatch log

The same day as a readable radio log: press play to stream every job in the order it came in — a text companion to the map's animation above, where the map shows where and this shows what, in sequence.

00:00press play
Speed
Press play to start the day at midnight, or drag the slider to any hour…
The rhythm of the day

When the calls came in

Jobs by hour of the day. Click any bar to pin the map to that hour.

What the calls were

Calls sorted into families

Every distinct call description on this day, grouped into families. Click a family to isolate it on the map.

The response

From the call to the curb

How far each job travelled through the dispatch system, and how long each leg took. Response times cover dispatched calls — jobs where a unit had to travel to the scene. Officer-initiated and already-on-scene runs (which log arrival instantly) are set aside, the way the NYPD's own response-time reporting does. Medians are shown because a long tail of jobs left waiting in queue pulls the averages far higher.

The pipeline

Timing & priority

Leg of the responseMedianp90
Median response by priorityJobsMedian
The sharp end

The critical jobs

The calls flagged critical — those involving guns and knives. Click any to fly the map there.

Methodology

How this works — and its limits

Source & method

  • Data: NYPD Calls for Service (Year-to-Date), NYC Open Data dataset n2zq-pubd — the police department's own computer-aided dispatch (CAD) log. Queried live in your browser for the precinct and date you choose.
  • Coverage: the dataset holds January 1 – December 31, 2025. Dates outside that range have no data.

Definitions & caveats

  • “Response time” measures job-created to first-unit-arrived, and is reported only for dispatched calls — jobs where a unit travelled to the scene (arrival logged more than 12 seconds after creation). It excludes the time a 911 caller spends on the line before a call-taker creates the job, so true door-to-door response is somewhat longer.
  • Officer-initiated and already-on-scene runs — visibility patrol, inspections, ShotSpotter, on-view enforcement — log arrival instantly and carry no real travel time. Counting them would collapse response times toward zero in heavily patrolled precincts, so they are set aside from the response medians (the NYPD's own response-time reporting does the same). They remain in every count and on the map.
  • Medians, not means. A handful of low-priority jobs can sit in queue for hours and badly skew averages; medians are the honest central measure.
  • No outcomes. This dataset records each job's type, times, location and priority — but carries no arrest or disposition. It cannot tell you how a call was resolved, and there is no key to link it to the separate NYPD arrests data.
  • Jobs, not incidents. One incident can generate several jobs. “Families” are this tool's grouping of the raw call descriptions.
  • Priority (“CIP” = Crime In Progress). The NYPD's CIP_JOBS field flags whether a call is a crime in progress and how urgent: Critical and Serious are crimes in progress (the guns-and-knives calls); “Non-CIP,” shown here as Routine, means the call is not a crime in progress — medical assists, patrol, disputes and the rest.

Made with AI assistance

  • Verified: every figure is computed in your browser directly from the raw NYC Open Data records returned for your selection — nothing is estimated or cached.
  • Verified: map points use the city's own coordinates; jobs without coordinates are counted in the totals but not plotted.
  • Not independently verified: the accuracy of the underlying police records themselves, including how each call was classified and timestamped by the NYPD.
  • Judgment calls: the grouping of raw call descriptions into families is editorial. A single day is a snapshot, not a precinct's typical pattern.