PULSCAR ANALYSIS OF NHTSA PUBLIC DATA — STUCK AND SEIZED BRAKE CALIPERS PulsCar analysis of NHTSA public data, September 2026. License: CC BY 4.0. Files in this folder may be reused with attribution to PulsCar (pulscar.io). -------------------------------------------------------------------------- 1. SOURCE FILES -------------------------------------------------------------------------- NHTSA public flat files downloaded from static.nhtsa.gov and loaded into a local SQLite database: Complaints FLAT_CMPL.txt 777,040 owner complaints (ODINO), received 1 January 2015 - 8 September 2026. The caliper set below runs 14 January 2015 - 5 September 2026. Field definitions: https://static.nhtsa.gov/odi/ffdd/cmpl/CMPL.txt Recalls FLAT_RCL.txt one row per make/model/model year per campaign; campaigns counted DISTINCT on the campaign number. Communications FLAT_TSBS.txt manufacturer communications; counted DISTINCT on the NHTSA document id. Investigations FLAT_INV.txt ODI investigations (PE/EA/DP actions). Complaints are owner reports. They are not verified repairs, not failure rates, and they have no denominator of vehicles on the road. A make or model with more complaints may simply have sold more cars, or older ones. Nothing in these files ranks reliability, and nothing here should be read that way. -------------------------------------------------------------------------- 2. THE COMPLAINT QUERY (2,218 -> 645) -------------------------------------------------------------------------- Step 1 - full-text search (FTS5) of complaint narratives for the whole words caliper OR calipers -> 2,218 complaints. (The index matches whole words, so both spellings have to be asked for separately.) Step 2 - symptom proximity. The word caliper/calipers must appear within 70 characters of one of these words, in either direction: seiz* | stuck | stick* | drag* | froze | frozen | freez* | lock* | hung up | hanging up | bind* | overheat* | not releas* | never releas* | would not release | does not release | fail* to releas* -> 645 complaints. This is the set every "645" figure on the page uses. The wider set of 1,668 complaints (caliper within 80 characters of any failure, replacement, leak or breakage word) was computed but is not used for any published figure, because it mixes in cars where a caliper was replaced as collateral damage from a wheel bearing, an axle or a master cylinder. Step 3 - SAMPLE READING. 30 random members of the 645 were read in full (random.seed(7)). 28 of 30 were genuine reports of a caliper that stuck, seized, dragged or overheated. Two were not: one in which a dealer stated there was "no evidence of sticking calipers" (the query reads words, not negation), and one in which large Brembo calipers were blamed for warped rotors rather than for dragging. Observed false-positive rate: about 7% (2/30). No further filter was applied; the rate is published here instead. -------------------------------------------------------------------------- 3. WHAT IS COUNTED (caliper-complaints-by-context.csv) -------------------------------------------------------------------------- Category searches run over the whole narrative, not a proximity window, because owners describe the context in separate sentences. A complaint can appear in several rows; shares are of 645, not parts of a whole. Mileage: values <= 0 and >= 400,000 dropped; 380 of the 645 carry a usable figure. Median 60,000 miles, Q1 32,560, Q3 92,500. That is the middle of a pile of reported failures, NOT a caliper life expectancy. The towed / crash / fire columns are NHTSA's own structured flags on the complaint record, and are published next to the all-file baselines computed over all 777,040 complaints: towed 5.11%, crash 4.37%, fire 1.82%. "The hose or line is described as collapsed, restricted or trapping pressure" is deliberately narrow: it requires a hose or line word within 120 characters of collapse / trap / restrict / swell / internally / deteriorate. All 15 matches were read individually; all 15 describe a hose or line that failed internally or was pinched, and 5 of the 15 are Jeep Wrangler or Gladiator. Treat 15 as a floor on how often this happens, not a rate: it only catches owners who wrote the mechanism down. "Narrative names a REAR / FRONT brake or caliper" counts the words rear and front anywhere in the narrative. A complaint can name both (and 97 do), so the two shares do not sum to 100%. -------------------------------------------------------------------------- 4. MODELS (caliper-complaints-top-models.csv) -------------------------------------------------------------------------- Make/model pairs with 4 or more complaints in the 645, with the three most common model years, the median reported mileage, and how many narratives name a rear brake or a parking brake. Complaint records do not identify the trim, the brake hardware or the parking brake type, so a cluster cannot be matched exactly to a recall or bulletin population. -------------------------------------------------------------------------- 5. RECALLS (caliper-recalls.csv) -------------------------------------------------------------------------- Campaigns whose component, defect text or remedy text names a caliper: -> 195 distinct campaigns, 1,902,388 vehicles and pieces of equipment potentially affected (sum of the per-campaign figures; a vehicle covered by two campaigns is counted twice). The file is not restricted to passenger cars: trailers, motorhomes, transit buses, school-bus brake calipers and motorcycles are all in it and are visible in the make column. Two subsets are quoted in the article and both were computed from this file: 76 campaigns whose defect text names caliper mounting bolts (95,152 units), and 11 campaigns whose defect or consequence text names corrosion, rust, road salt or water entering the caliper (592,382 units). -------------------------------------------------------------------------- 6. MANUFACTURER COMMUNICATIONS (caliper-bulletins.csv) -------------------------------------------------------------------------- FTS5 for caliper OR calipers over bulletin summaries -> 391 distinct NHTSA document ids. The flag column marks the 31 whose summary also names sticking, seizing, dragging, binding, corrosion, rust or a failure to release. Heavy truck, transit bus and motorcycle bulletins are left in the file. -------------------------------------------------------------------------- 7. LIMITATIONS -------------------------------------------------------------------------- - Self-selected reports; filers are not a random sample of owners. - No denominator: model counts track sales volume and fleet age. - Regexes read words, not meaning. Negation ("no evidence of sticking") is counted as a match; the sample reading above measures how often that happens. - The median reported mileage is not a lifespan. Calipers fail from corrosion and from moisture in old brake fluid, and neither is measured by an odometer. - Complaint narratives rarely say which part finally fixed the car, so this analysis cannot say how often a hose, a slide pin kit or a caliper was the answer. It can only count how often each was named. - Recall and bulletin searches find documents that USE these words. Files: caliper-complaints-by-context.csv, caliper-complaints-by-make.csv, caliper-complaints-top-models.csv, caliper-recalls.csv, caliper-bulletins.csv. ------------------------------------------------------------------------------ CASE SENSITIVITY — SECTION ADDED 19 SEPTEMBER 2026 ------------------------------------------------------------------------------ NHTSA stores complaint narratives in ALL CAPS for records filed through roughly 2020 and in mixed case for records filed from 2021 on. A case-SENSITIVE search of the narrative field loses about 92% of the complaints filed after 2020, so this is the single largest way an analysis of this database can go wrong while still looking finished. Every query behind this file is case-insensitive. SQLite's LIKE and its FTS5 full-text index both ignore case by default, and no query in this work uses GLOB or any case-sensitive comparison. This was not taken on trust. On 19 September 2026 every published folder was re-checked against the same database, comparing the figures here with what a case-sensitive query would have returned. The result: the complaint set published here (2,218) is LARGER than the absolute ceiling a case-sensitive search of the same terms could have returned (1,323 narratives). A case-sensitive query cannot produce a bigger set than itself, so the bug is ruled out for this folder by arithmetic, not by assurance.