PULSCAR ANALYSIS — P0440 (EVAPORATIVE EMISSION CONTROL SYSTEM MALFUNCTION) IN NHTSA'S PUBLIC FILES PulsCar analysis of NHTSA public data, September 2026. License: CC BY 4.0. Attribution: "PulsCar analysis of NHTSA public data, September 2026." Published alongside https://www.pulscar.io/blog/p0440-code ------------------------------------------------------------------------------ Prepared September 2026. Source data: NHTSA public flat files (complaints received 2015-01-01 to 2026-09-21, 780,071 records; manufacturer communications from January 2015; recalls from 2010) and documents downloaded from static.nhtsa.gov and the NHTSA recall pages. 1. Complaints (3,908, all read in full, two readers) First search: every complaint whose narrative names P0440 in any spelling (letter O for the zero; a space, hyphen or period after the P; a two-character suffix such as P044000; a bare 0440 or 440 after "code", "dtc", "error", "cel" or "fault") or uses EVAP wording (the word EVAP alone or joined to system, code, leak, monitor, purge, vent, canister, solenoid, valve, sensor, line, hose or emission; "evaporative emission(s)", "evaporative system", "evaporation system", "E.V.A.P."). The air-conditioning "evaporator" is excluded. 1,217 complaints; 13 of them name P0440. Completeness audit: before writing, an independent reader searched the same file for wordings the first search missed. 50 complaints used the EVAP wording in forms the pattern missed ("evaporative" alone, "e-vap", "evap."); all 50 were added and coded the same way (found_by column). Wave 1 total: 1,267. Wave 2 (EVAP part named): the same audit listed 2,641 further complaints that name an EVAP part (purge valve or solenoid, gas or fuel cap, charcoal, vapor or carbon canister, vent valve or solenoid, fuel tank pressure sensor, leak detection pump, "fuel vapor", "emissions leak") without EVAP wording or P0440. Before any of them was coded, an addendum to the codebook (codebook_wave2, printed with its hash in codebook.txt) fixed this pool and stated that the categories, flags, precedence and rules R1-R13 are unchanged; the addendum also handed the readers R1-R13, which the wave-1 readers did not have, so wave-2 agreement is reported separately. All 2,641 were read and coded by two readers the same way (found_by = wave 2 (EVAP part name)). Final set: 3,908. Coding: the codebook (codebook.txt) was written, dated and hashed before any complaint was read. Two independent classification passes coded every complaint separately, each from the codebook only: one category (N not an EVAP story; C cap or filler; P purge side; V vent side and canister; T tank, lines and liquid fuel; E electrical, sensor or software; U unresolved after a repair or diagnosis; G EVAP fault named, cause not stated) and four flags (stall_or_no_start, fuel_smell_or_liquid_fuel, light_returned_after_repair, hard_to_fill_or_tank_deformed). Agreement, wave 1 (1,267): category 943 of 1,267 (74.4%), Cohen's kappa 0.70; stall_or_no_start 1,217 (kappa 0.90); fuel_smell_or_liquid_fuel 1,226 (kappa 0.90); light_returned_after_repair 1,204 (kappa 0.87); hard_to_fill_or_tank_deformed 1,242 (kappa 0.89). 429 disagreements resolved under R1-R13; a consistency pass changed three agreed codes. Agreement, wave 2 (2,641): category 2,214 of 2,641 (83.8%), Cohen's kappa 0.80; stall_or_no_start 2,557 (kappa 0.93); fuel_smell_or_liquid_fuel 2,581 (kappa 0.93); light_returned_after_repair 2,524 (kappa 0.89); hard_to_fill_or_tank_deformed 2,587 (kappa 0.91). Every disagreement (599 complaints) was read in full and resolved under R1-R15 (R14 and R15 were added in wave 2 and are printed in codebook.txt). A consistency pass then swept the agreed wave-2 codes and changed 235: in most, both readers had coded the part that was replaced although the narrative says the repair did not hold and names nothing after it, which R3 codes U. The complaints file carries both readers' codes (coder1_*, coder2_*), the final code, the resolution and the rule applied. Final (both waves): not an EVAP story (N) 723; of the 3,185 that are: purge side (P) 866, unresolved after a repair or diagnosis (U) 662, tank, lines and liquid fuel (T) 534, cause not stated (G) 465, cap or filler (C) 306, vent side and canister (V) 270, electrical, sensor or software (E) 82. Flags among the 3,185: stall or no-start 1,058; fuel smell or liquid fuel 848; light or symptom back after a repair 1,004; hard to fill or tank deformed 467. By wave: wave 1 (EVAP wording) 990 relevant: U 209, G 190, P 190, T 190, V 120, C 47, E 44. Wave 2 (part named) 2,195 relevant: P 676, U 453, T 344, G 275, C 259, V 150, E 38. Wave 2 was found by the names of parts, so it holds more complaints that name a part than a search by EVAP wording does; the category shares of the two waves are not comparable as rates. Text-search counts quoted in the article (phrase counts over the relevant narratives, not codes): stalls that mention refuelling = complaints with stall_or_no_start = yes whose narrative matches the regular expression (after|while|when)\s+(re)?fuel|after (filling|getting gas|pumping gas|putting gas|fill(ing)? up|gassing)|after (i|we) (got|get|put|pump|fill)\w* (gas|fuel)|refuel (case-insensitive): 337 of 1,058. Complaints mentioning a suction pump among Volkswagen and Audi: regex "suction", 38 of 250. Counts count complaints, not vehicles. A complaint records what an owner experienced and was told; nothing here is a failure rate. 2. Owner-reported amounts (p0440-owner-reported-amounts.csv) Every dollar figure in the relevant complaints of both waves was extracted by script (dollar signs, "dollars", "bucks", "k") and decided under one inclusion rule: a figure an owner reports for a diagnosis or smoke test of an EVAP fault, an EVAP part (cap, filler neck, purge valve or pump, vent valve, canister and filter, EVAP lines, tank pressure sensor, leak detection pump, wiring), the fuel tank or pump module when replaced or quoted for the EVAP fault, or software for the EVAP code. Excluded: rentals, towing, vehicle prices and loans, mileage written as "45k", fuel purchases, repairs of other named parts, other owners' prices and owners' own price guesses, damage repairs, and totals that mix EVAP work with unrelated work; figures in complaints coded N were dropped (two in wave 1; 88 wave-2 complaints coded N carried dollar mentions). In wave 2, two passes applied the rule to the 451 mentions in the 297 relevant complaints that carry one; every included row was then reviewed, 5 were removed and the status or group of 5 was corrected. Result, both waves: 336 figures from 293 complaints: quoted 173, paid 106, billed 47, offered 1, not stated 9. "Paid" only where the narrative says so. 3. Documents (p0440-documents.csv) First search: every manufacturer communication in NHTSA's index whose summary names P0440 (52) or uses EVAP wording without naming another specific EVAP code (611): 663 NHTSA IDs; PDFs exist for 656 (659 files); 7 have no PDF. Recall filings were downloaded for 13 campaigns cited by these documents or by complaints (201 files). Near-duplicates: byte-identical copies were found by md5 and near-duplicates by 5-word-shingle Jaccard similarity of 0.6 or more; one representative of each cluster was read and the others compared by sentence diff. Read in full: the 64 distinct bulletins whose own text names P0440 (11) or a companion EVAP code (P0441-P0459, P0497, P1450, P2401-P2422, P2450 and others; 53), with 94 revisions and copies compared against them; and 50 recall filings (Part 573 reports, acknowledgements, owner letters, dealer remedy instructions) for the 13 campaigns, with one line for each of the other filings. The other 307 distinct bulletins, whose own text names neither P0440 nor a companion code, were screened on their opening page (about 1,500 characters) and given one line each (236 EVAP-related by that screen, 70 about another system, 1 unreadable); they are marked "no: opening page screened" and no claim in the article rests on them. Completeness audit: 960 further bulletins and 32 recall campaigns that the index describes without EVAP wording or P0440 are listed as found by the audit and not read. Every quotation in the article was checked by script against the downloaded text. Coverage status "as of September 2026" is our computation from the printed terms, not a statement by the manufacturer. 4. Files codebook.txt — the codebook and its hash, the wave-2 addendum and its hash, the adjudication rules R1-R15 and the pool history. p0440-3908-complaints-read.csv — every complaint read (both waves), with both readers' codes, the final code, resolution, rule and found_by. p0440-owner-reported-amounts.csv — the dollar figures with ODI numbers. p0440-documents.csv — every document found, with read status, codes named, relevance and duplicates.