← Back to Blog
DataAnalysisDeveloperAPINeighborhood Safety

The Busiest Minute in Los Angeles

📅 September 1, 2026·⏱ 9 min read·By SpotCrime

The City of Los Angeles publishes every crime report it takes, one row apiece, in a file called Crime Data from 2020 to Present. There are 1,004,894 rows in it. Each one carries a field called TIME OCC, four digits, military time. Ask the file which minute of the day holds the most crime and it answers immediately: 12:00 PM, with 35,198 incidents. The minute before noon holds 234. The minute after holds 420.

Nothing happens in Los Angeles at noon. Noon is what a police records system looks like when nobody knows what time it was and the form will not let you leave the box empty.

The shape of a guess

Run the query yourself. It takes one line and no API key:

curl "https://data.lacity.org/resource/2nrs-mtv8.json?\
$select=time_occ,count(1)&$group=time_occ&$order=count_1 desc&$limit=10"

The top of the list is not a crime pattern. It is 1200, then 1800, then 1700, then 2000, then 1900. Every entry lands on the hour. Noon runs eighty-four times the minute after it and a hundred and fifty times the minute before.

Widen the question. How many of the million records sit on an exact top of the hour, any hour? 392,772 of them, or 39.1 per cent. The file uses 1,439 of the 1,440 possible minute values, so the granularity is genuinely there. If crime were spread evenly across the minutes within an hour you would expect about 1.7 per cent to land on the hour mark. The observed figure is twenty-three times that.

The one missing value is 0000. Los Angeles writes midnight as 0001, which appears 17,364 times, and that is its own small tell: somewhere in the pipeline a zero meant null, so a real midnight had to be nudged a minute to survive.

The finding in one sentence

Two of every five Los Angeles crime records carry a time that a human rounded, and the single most common value in the file is the one people reach for when they mean “sometime in the middle of the day.”

We flagged this artifact in passing when we wrote about crime seasonality , in a gray box warning that hourly charts show a fake midnight spike. That box was correct and much too small. The rounding isn't a blemish on the time field. Over a large stretch of the file, it is the time field.

The gradient runs along who was watching

Split the round-hour share by offense and the numbers sort themselves into an order nobody had to impose.

61.3%
Stolen vehicle (n=115,184)
45.8%
Burglary from vehicle (n=63,515)
44.7%
Burglary (n=57,871)
29.3%
Simple assault (n=74,821)
25.4%
Robbery (n=32,315)
11.9%
Criminal homicide (n=1,568)

Share of records landing on an exact hour, LA 2020 to present. Aggravated assault sits at 26.0 per cent, between robbery and simple assault.

Read down that column and you are reading a single question: was anyone there. A car is taken from a street while its owner is at work, and the owner reports a window of eleven hours. A homicide has a body, and usually a call, and often a witness, and the time is known to the minute. Everything else falls in between in proportion to how present the victim was.

Which means temporal precision in a crime feed is not distributed at random. It is correlated with offense type, and offense type is correlated with severity, and severity is what every safety score weights hardest. The categories you trust most are the ones with the cleanest clocks. That is lucky rather than designed, and it does not hold at the block level, where the counts are small enough that a handful of rounded burglaries can carry a whole hourly profile. We walked through why block-level counts behave this way in Three Burglaries Is Not a Trend.

Vienna, 2009 to 2015

A team writing in PLOS ONE in 2021 examined 51,387 apartment burglaries recorded in Vienna over seven years, testing eight methods for estimating when an imprecisely timed burglary happened. Buried in the data description is a number worth sitting with: 57.5 per cent of those burglaries were recorded as starting on a full hour, and 38.8 per cent as ending on one.

Different country, different language, different records system, different decade of software. Los Angeles burglaries: 44.7 per cent on the hour. The rounding is not an artifact of any one vendor. It is an artifact of asking a person a question they cannot answer.

The Vienna authors also noticed that end times are rounded less than start times, and their explanation is the plainest sentence in the paper. People remember coming home better than they remember leaving.

What Montgomery County publishes instead

Montgomery County, Maryland, runs an incident feed with 506,427 records, and it does something Los Angeles does not. Alongside the report date it carries two fields, start_date and end_date. Not a timestamp. A window. 225,088 records have both, or 44.4 per cent.

Pull the burglaries that carry a window and measure how wide they are. On 7,896 of them, the median window is eight hours. Seven in ten are wider than an hour. A quarter are wider than a full day. At the ninetieth percentile the window is 144 hours, which is to say the county is telling you, honestly, that this burglary happened at some point during a six-day period.

8 hrs
Median burglary window
70.5%
Wider than one hour
25.6%
Wider than one day
144 hrs
90th percentile window

Both counties are describing the same reality. One of them writes it down. When a publisher gives you a single timestamp for a burglary, the interval didn't go away. Something upstream collapsed it, software or an officer. The collapse is invisible in the row you receive.

Aoristic analysis

Jerry Ratcliffe named the problem and gave it a method. In a 2000 paper in the International Journal of Geographical Information Science, and again in a 2002 paper in the Journal of Quantitative Criminology, he argued that an incident with a known window should not be assigned to a moment at all. It should be spread.

The arithmetic is simpler than the word. A burglary known only to have happened between 8 a.m. and 4 p.m. contributes one-eighth of an incident to each of those eight hours, rather than a whole incident to one of them. Sum those fractions across a city and you get an hourly profile built out of what the records actually claim. Ratcliffe called the result an aoristic signature, borrowing a term from Greek grammar for a verb tense that declines to specify when.

The method has kept moving. The Vienna comparison found that weighting the spread by the shape of precisely-timed crimes in the same category beat a flat spread, which makes sense: if you know when burglaries happen in general, a uniform smear over eleven hours is throwing away information you have. A 2023 paper in the same journal treats the whole thing as interval-censored data and fits it in a Bayesian spatio-temporal model, which is the statistically honest version and considerably more work.

All of it requires the window. That is the catch. Aoristic analysis is a twenty-six-year-old solved problem that most US incident feeds make impossible to use, because they publish one timestamp and drop the other.

What to do with a feed that gives you one timestamp

Six practices, in the order we would apply them.

  1. Measure the rounding before you trust the field. Group by minute, sort by count, look at the top ten. One query per source. If the top values are all on the hour, you know what fraction of the field is estimated and you know it per offense type. Do this per agency, not once for the whole pipeline . The rate varies with the records system and with local report-writing habit.
  2. Take the window when it exists. Montgomery County publishes one. So do a number of NIBRS-derived and CAD-derived feeds, under names like occurred_from and occurred_to. Preserve both through ingestion. A normalization layer that flattens a window to its midpoint is destroying the most useful thing in the record, and we have watched pipelines do exactly that in the name of a tidy schema.
  3. Spread, do not snap. Where you have windows, use them aoristically for any hour-of-day analysis. Where you have only a rounded point, treat it as an hour-wide window rather than a minute. Pretending to minute precision you do not have is the error that propagates.
  4. Never publish an hourly chart off the raw field. The noon spike and the midnight spike will both appear, both will look like findings, and a reader will draw a conclusion about their commute from an artifact of a form. If you must ship an hourly view without windows, bin to four-hour or six-hour blocks, where the rounding mostly cancels.
  5. Carry a precision flag to the display layer.One boolean per incident: was this time estimated. Surface it. “Reported between 8 a.m. and 4 p.m.” is more useful and more honest than “12:00 PM,” and it costs one column.
  6. Keep the time field out of any score that cannot defend it. Time-of-day weighting in a block-level safety rating sounds sophisticated and is, at the block level, mostly weighting the rounding behavior of whoever took the report. Our SpotScore methodology treats temporal detail as descriptive context rather than a scoring input, and this is the reason.

A scoping note. Everything above concerns time of occurrence. Time of report is a separate field with its own pathologies, and the gap between them is where backfills and late-arriving records live. That gap is the mechanism behind the LAPD volume drop we took apart in July. The two problems compound. They don't substitute.

The honest version is uglier

Every step of a crime data pipeline forces something continuous into something discrete. An address becomes a hundred block, which we wrote about at length. A tangle of local offense codes becomes a normalized category. An eleven-hour window becomes noon. In each case the collapse is defensible and the record of the collapse is what gets lost.

Los Angeles is not doing anything unusual here, and the file is a good file — it exists, it updates, it carries a minute-resolution field with 1,439 distinct values in it. The rounding is in the world before it is in the database. Somebody came home, found the door open, and told an officer they had left around eight.

The officer wrote 0800. It is the only true thing either of them could have put in the box.

Access Address-Level Crime Data

Real-time incidents · SpotScore™ safety ratings · 36-month trends · 22,000+ US cities. Normalized and verified — because raw data isn't enough.