Methodology

How the MileVet score is built

The score starts at 20. Preferred is 0–29, Standard 30–49, Caution 50–69, and Refer is 70–100. Refer under 90 is letter D. A score of 90 or higher is F. There is no E. A carrier with no 24-month inspections and no power units or vehicle miles is not graded, and neither is a carrier with no active authority and no roadside record. Fewer than 3 inspections in 24 months is not graded. Fewer than 30 inspections is not graded when that count is also below the carrier's reported power units. 30 or more inspections in 24 months keeps the letter, including when a large fleet has fewer inspections than power units. Inactive or revoked authority is flagged on every file. This is a desk aid. It is not an FMCSA safety rating or a BASIC measure.

What the report counts

A lookup asks Socrata for inspections and crashes with a date on or after 24 months ago, newest first, and pages through that window. A page is ordered by that date and then a unique id, so two rows on the same day are not dropped or repeated. Monthly inspection counts, including vehicle and driver out-of-service counts, come from grouped queries so the chart and the rates stay exact when a row page is short. The report prints “Data through” as the day the file was refreshed, and labels the newest inspection or filing on its own. It also prints the inspection and crash counts it stored against the window total.

Violation lines have no USDOT and no date of their own. They join on inspection id. A large fleet keeps line items for the newest inspections that recorded a violation. The coverage line says when that sample is partial. The sample is not used for the hours-of-service or drug and alcohol points. Those use a separate 12-month count of driver out-of-service inspections. VIN rows for a fleet with more than a few hundred inspections in the window are a sample of the newest inspections, and those sample rows are not used in the fleet-size comparison. The fleet-size comparison counts power-unit VINs (unit types 1, 5, 8, 10, 11, and 12), not trailers. Year, make, model, body, and GVWR come from NHTSA vPIC after the report is on screen, for at most 12 of those VINs, and the results are cached. The lookup does not wait on that decode. Open NHTSA campaigns for up to four decoded year, make, and model groups load in that same step, are cached, and are rate-limited. When a model has more than eight campaigns, the eight newest are kept. The public file does not say whether a VIN was repaired. A VIN inspected under another USDOT on or after this carrier's census add date, and before a revocation end date when the carrier is inactive, is marked during this operation. That list is capped at 40 sightings and is drawn on the chameleon panel. It does not add points.

Out of service

Vehicle out-of-service is compared with 22% and driver out-of-service with 6%. Those figures are the MileVet comparison rate, not an SMS threshold. Five or more inspections use the observed rate. Fewer than five pull the rate toward that comparison, so one bad inspection cannot set the score. A rate well under the comparison can take a few points off.

Crashes, scaled to the fleet

Crashes are reported without regard to fault. The public file does not say who was at fault.

Each crash in 24 months gets a severity weight of 1 for tow-away, 2 for injury, and 3 for fatal, once per crash, then a recency weight of 3 in the last six months, 2 through twelve months, and 1 after that. Three deaths in one crash are one fatal crash and three fatalities. The report lists people separately from the crash counts. The weights are added and turned into a rate per 100 power units. When the census mileage is at least 10,000 miles and the mileage year is within four years, the same weight is also expressed per million miles. MCS-150 mileage is one year, so the 24-month mile figure is twice the annual mileage.

The MileVet comparison used here is 17 weighted crashes per 100 power units, and 1.05 per million miles. Those numbers are editorial. They are set so a large satisfactory truckload fleet with a typical crash rate is not pushed into Refer. They are not an FMCSA Crash Indicator and not an industry rank.

A crash marked not preventable on the SMS input crash file is listed on the report and left out of the rate, the fatal flag, and the injury flag. A blank flag is labeled “Not-preventable finding not reported” and is never called preventable. A crash newer than the monthly SMS snapshot is labeled “awaiting SMS snapshot”. The factor cites that file. Citation, hazmat release, cargo body, GVWR, weather, road, and light come from the crash file and are shown next to the crash. They do not add points of their own. A small fleet is not scored on the raw rate alone. Credibility is power units divided by power units plus 25. A 3-truck carrier stays close to the MileVet comparison. A national fleet is almost entirely its own rate. Points are capped at 16. A rate clearly under the MileVet comparison, with enough trucks to trust it, can take 4 points off. A fatal crash still raises a flag. The points follow the rate, not a flat penalty per crash.

The rest of the file

Hazmat inspections, hazmat violations, and hazmat shipments are one set of figures on the panel and on the line under it. When the SMS input inspection file (rbkj-cgst) returned, that set is those three totals. Otherwise an inspection counts when it recorded a hazmat violation, and the violation figure is the sum of those violations, not a second inspection count. Crashes with hazmat released are counted for the full 24-month window. Placard-required inspections, cargo-tank inspections, and shipper names stay on the panel. None of these are BASIC measures and none add points. A citation result of dismissed or not guilty, from Inspections and Citations (qbt8-7vic), is counted for the whole inspection window, not only the newest violation lines, and is shown beside the violation. When the violation lines are complete, a dismissed citation is left out of the hours and substance count. The factor cites that file. Each full lookup stores one daily snapshot of score, band, fleet size, and cargo, and keeps 36. A benchmark is the median MileVet score of stored carriers in the same power-unit band and cargo class, and only when at least eight are on file. It is not an industry rank and it does not place a carrier against a share of the industry. An open out-of-service order from OUT OF SERVICE ORDERS (p2mt-9ige) is a high flag. The watchlist alerts when that flag appears. The order does not add points. The Company Census file also shows compliance review type and date, MCSIP step, operating radius, owned versus term-leased versus trip-leased equipment, leased drivers, and FMCSA’s recordable crash rate. Those fields sit on the report and do not add points. FMCSA’s prior-revoked USDOT is drawn on the chameleon panel from prior_revoke_dot_number. It is not scored as a phone, address, officer, email, or VIN match. Authority age counts motor-carrier authority only. Broker and freight-forwarder grants are ignored. The age resets when carrier authority was revoked or suspended, or inactive for more than 30 days, and then came back. A short administrative inactivation does not reset it. A reinstatement is active authority, so the gap before it and the gap after it stay separate. When a grant is on the file, that grant is the earliest record, not a later row that is not a grant. An open gap in primary liability coverage, a closed gap longer than 15 days, a rising violation rate on a complete violation file, an unsatisfactory or conditional census safety rating, undeliverable mail, and a shared phone, address, officer, email, or VIN with a revoked or inactive carrier still add points. A stale MCS-150 is an info note. FMCSA has suspended biennial-update enforcement, so that date is not a risk signal and does not add points. An MC revocation caused by an intrastate switch is an info note and does not add points on its own. English-proficiency violations are their own roadside count and do not add points. Data consistency checks on the report are informational and do not add points. Revocations other than that intrastate switch still add points. A liability lapse is the union of primary BIPD filings. A replacement that starts before the old policy cancels is not a gap, and an excess layer does not fill one. A closed lapse adds points only when it ends within 60 months. An older lapse is an info note and is not in the score. The VIN timeline and the schedule check read the cross-carrier VIN index and always merge a cached VIN-only query of the unit file (wt8s-2hbx) and the inspection file (fx4q-ay7w) for every VIN on the list. That query is cached for 24 hours, and only a few VINs are asked at once. An index row does not hide another carrier on that VIN. A liability-insurer penalty counts a new primary BIPD insurer that replaces the primary in force just before it. Names are compared after dropping company words, and a leading “MS” is not a second insurer, so two spellings of the same insurer are not a change. The same policy number, ignoring spaces and punctuation, is a continuation. Excess layers are not changes. Two or more primary changes in 12 months add 6 points. More than two in 24 months add 8. If both apply, the higher one is used and they are not added together. One change is an Info flag and adds 0 points. Hours-of-service and drug or alcohol out-of-service inspections are rates per driver inspection over 12 months, pulled toward 22.9 and 2.15 per 1,000. Those two figures are MileVet’s own calculation from raw public inspection and violation rows. They are capped at 12, and together with a positive driver out-of-service factor they stop at 16. The roadside violation sample is not used for those points. A score that moves only because the method changed is labeled a method change and is not sent as a carrier alert. The factor table on the report is the score. The number is the sum, held between 0 and 100, and a row says when the sum was capped. A carrier without enough data to grade shows the factors without points and without the baseline row.

FMCSA data use notes

MileVet shows public raw records: census, inspections, violations, crashes, and authority and insurance filings. It does not show property-carrier SMS percentiles, BASIC measures, or alerts. The score is MileVet’s, not a statement by FMCSA. A blank field on an FMCSA daily-difference row is a deletion of that value. Legacy insurance and authority history stay joined by docket when a MOTUS row is removed. A daily pull that blanks far more rows than usual is logged and is not written over the stored file. A refresh pulls the inspection window and the crash window again, so a DataQs correction replaces the stored row.

Score history

The first time a carrier is opened or watched, MileVet rebuilds a monthly score for the last 24 complete months from the public records already stored for that USDOT. Later months are live snapshots taken when someone opens the file. Reconstructed months are drawn dashed, with hollow points. A live month is solid. Reconstructed points stay out of alerts.

About 12 of those months have a full 24-month roadside window, because the public inspection file keeps about three years. Earlier reconstructed months use a partial window and say so. Power units, drivers, miles, and the safety rating are today's census values, so a crash rate for a month when the fleet was a different size follows today's fleet. Insurance and authority go back only as far as MOTUS and the frozen legacy archive. A missing filing can hide a lapse. The line is the file as known today, including late uploads and corrections. Each scoring method keeps its own history.