Carrier directory · Methodology
How this directory is built
Every carrier page is a copy of FMCSA public records, decoded with FMCSA’s own data dictionary and shown with the date each source published or returned it. A small number of sentences are derived by fixed rules from those records; they are labelled as such on the page and defined here. This page is the contract the site holds itself to.
Sources
All datasets are published by the Federal Motor Carrier Safety Administration on data.transportation.gov (Socrata) or through its QCMobile API. Each is read by NeuroHaul’s import pipeline on the cadence below; each row on a profile carries its source’s own as-of date where the source publishes one, and the time NeuroHaul retrieved it.
| Dataset | Identifier | Cadence | Role |
|---|---|---|---|
| MCMIS Company Census File | az4n-8mr2 | Daily | Population: identity, registered location, registration status, fleet as reported, cargo as declared, safety rating on record. Data dictionary: MCMIS Company Census Data Dictionary, Revision 08 (2026-01-23). |
| Motus Carrier register (full / daily diff) | inys-ebih / nakq-58th | Daily | Live operating-authority status and insurance filings per docket (live since 2026-04-29). |
| Motus authority history (full / diff) | yu5v-wbh6 / dm5j-zc6c | Daily | Authority status transitions with dates and reasons. |
| Legacy Licensing & Insurance carrier file | 6eyk-hxee (+ 9mw4-x3tu, ypjt-5ydn, sa6p-acbp) | Frozen 2026-05-14 | Fallback authority record for dockets absent from Motus; always labelled with the frozen date. |
| New Entrant Safety Assurance Program out-of-service orders | p2mt-9ige | Daily | Out-of-service orders under that program, with status and rescission date. |
| QCMobile API (/carriers/{dot}, /docket-numbers) | API | Retrieval date only | Enrichment only: allowed-to-operate flag, out-of-service date, safety rating, 24-month inspection and crash totals. Never a prerequisite for a page. |
Authority precedence: a docket’s authority and insurance rows come from the Motus register when Motus has the docket; otherwise from the legacy Licensing & Insurance file, labelled “as of 2026-05-14 (FMCSA no longer updates this system)”; otherwise the profile says no for-hire authority is on record. Status-change dates and reasons come from the Motus authority history.
Coverage: which carriers are in the directory
The directory is loaded state by state. Two lists of states drive the same admission rule: an engineering pilot (proves ingestion, storage and rendering; any state would do) and an SEO cohort chosen by a written rubric. Nothing about a pilot state is special once loaded.
Admission predicate (both lists), applied to the Company Census File
phy_state IN (INTEL_PILOT_STATES ∪ INTEL_SEO_STATES) AND status_code = 'A' -- registration active at admission AND carrier_operation = 'A' -- interstate AND carship LIKE '%C%' -- holds the motor-carrier entity type AND power_units >= INTEL_COHORT_MIN_POWER_UNITS -- default 1
Status A is an admission filter only. Once a USDOT number is imported it is refreshed by number on every run, so a later change to Inactive stays visible on the page and the URL never breaks. A carrier that no longer satisfies the predicate after a completed run is marked “outside current coverage”: its page renders with a notice, is removed from the sitemap and carries noindex,follow.
A state is loaded in batches
A state is imported in batches rather than in one pass, so until its load is complete this directory holds a subset of the carriers FMCSA has registered in that state. Every count on a state page, a city page, the hub or a research page is therefore a count of what is currently loaded, not of what exists: it can be lower than FMCSA’s own total for that state, and a share computed from a partial load — a fleet-size distribution, for instance — describes the carriers loaded and is not representative of the state. Each page says what it contains, and the counts rise as batches land.
SEO cohort rubric
States are ranked by search demand for carrier lookups (Search Console and supplied keyword data) × carrier density (census counts) × query diversity (cities, fleet bands, cargo types) × commercial relevance to NeuroHaul’s dispatch and compliance clients. Default proposal: Illinois (≈35,500 active interstate carriers; NeuroHaul’s home market), then the Midwest by measured demand. The current list is stated on the directory hub.
Which profiles are indexable
A profile is submitted to search engines only when: it is published and not suppressed; it is within current coverage; the USDOT number is valid; the census entity types include motor carrier; a legal name and a two-letter state are present; the census file carries an as-of timestamp; and the record has enough substance to stand on its own — a city, at least one fleet figure (power units or drivers), and at least one dated fact (an MCS-150 date, a census add date or an authority row). QCMobile enrichment is never a condition. Pages that fail the rule still render; they carry noindex,follow and are absent from the sitemap.
The five fact states
Every section of a profile ends with one of five words for how the value got there. They are decided in one place in the code, never by the page, so “0 drivers” and “drivers not reported” can never be rendered the same way.
| State | Label on the page | Meaning | Example |
|---|---|---|---|
| reported | Reported | A value is on record. | 14 power units on the MCS-150. |
| zero_reported | Zero / none reported | The source reported 0 or an empty set. | 0 drivers; no cargo categories declared. |
| not_applicable | Not applicable | The field does not apply to this registrant. | For-hire authority for a carrier that only moves its own goods. |
| no_data | No value on record | The source has no value for the field. | A blank carrier_operation code. |
| source_unavailable | Source not yet read | NeuroHaul has not read the source for this carrier (never checked, or the last attempt failed). | Out-of-service orders not yet checked; QCMobile not yet retrieved. |
Decode tables (MCMIS data dictionary, Revision 08)
Codes are decoded only where the dictionary defines them. A code the dictionary does not define is shown as the raw code with an “FMCSA code” note, never guessed. A blank code is shown as “Not stated” — on 2026-09-06 the carrier-operation code was blank on 186,114 census rows, and a blank is a fact of its own.
| Code | Meaning |
|---|---|
| A | Active |
| I | Inactive |
| P | Pending |
| Code | Meaning |
|---|---|
| A | Interstate |
| B | Intrastate (hazardous materials) |
| C | Intrastate (non-hazardous materials) |
| Code | Meaning |
|---|---|
| C | Motor carrier |
| S | Shipper |
| B | Broker |
| R | Registrant |
| F | Freight forwarder |
| I | Intermodal equipment provider |
| T | Cargo tank facility |
| Code | Meaning |
|---|---|
| S | Satisfactory |
| C | Conditional |
| U | Unsatisfactory |
| (blank) | No rating on record — FMCSA rates only carriers it has reviewed |
| Code | Meaning |
|---|---|
| genfreight | General freight |
| household | Household goods |
| metalsheet | Metal: sheets, coils, rolls |
| motoveh | Motor vehicles |
| drivetow | Drive-away / tow-away |
| logpole | Logs, poles, beams, lumber |
| bldgmat | Building materials |
| mobilehome | Mobile homes |
| machlrg | Machinery, large objects |
| produce | Fresh produce |
| liqgas | Liquids / gases |
| intermodal | Intermodal containers |
| passengers | Passengers |
| oilfield | Oilfield equipment |
| livestock | Livestock |
| grainfeed | Grain, feed, hay |
| coalcoke | Coal / coke |
| meat | Meat |
| garbage | Garbage, refuse, trash |
| usmail | U.S. mail |
| chem | Chemicals |
| drybulk | Commodities dry bulk |
| coldfood | Refrigerated food |
| beverages | Beverages |
| paperprod | Paper products |
| utility | Utility |
| farmsupp | Agricultural / farm supplies |
| construct | Construction |
| waterwell | Water well |
| cargoothr | Other |
Review-type codes (C, H, N, A, S, E, U, B, F, G, I, J) are listed in the dictionary but their meanings are not carried in the extract the directory reads; they are shown as codes.
Derived fields
The boxed “Summary” on each profile is computed by the rules below — rules version 2026-09-07.1 — from FMCSA fields already shown on the page. No model, no inference about lanes or equipment, no judgement. When a rule changes the version changes, and every stored summary is recomputed.
Fleet class
From reported power units. Null → “Fleet size not reported”; 0 → “FMCSA records show 0 power units reported on the MCS-150 filing.”
| Power units | Class |
|---|---|
| 1 | Owner-operator (1 power unit) |
| 2-5 | Micro fleet (2–5 power units) |
| 6-20 | Small fleet (6–20 power units) |
| 21-100 | Mid-size fleet (21–100 power units) |
| 101-500 | Large fleet (101–500 power units) |
| 500+ | Enterprise fleet (500+ power units) |
Operating model
One sentence assembled from three census fields: the carrier-operation code (“Interstate” / “Intrastate”), the classification list (AUTHORIZED FOR HIRE or EXEMPT FOR HIRE → “for-hire”; a classification beginning PRIVATE with no for-hire entry → “private”), and the hazardous-materials indicator (Y → “flagged as a hazardous-materials carrier on the census”). If Motus shows an Active broker authority alongside carrier authority the sentence adds “also holds active broker authority”; broker authority alone adds “holds active broker authority”. Only Motus rows count as active: a legacy L&I row still reads Active for every docket it held on the day the file froze, so a carrier whose only rows are legacy gets “legacy authority record as of 2026-05-14 (not updated by FMCSA since)” instead. Example output: “Interstate for-hire carrier; also holds active broker authority.”
Authority summary and explanation
| Summary | Shown as | Rule |
|---|---|---|
| active | Active operating authority on record | At least one Motus authority row for the USDOT has status Active. |
| pending | Operating authority pending | Motus rows exist, none Active, at least one Pending. |
| inactive | No active operating authority on record | Motus rows exist, none Active or Pending. |
| legacy_only | Authority record from the legacy system (as of 2026-05-14) | No Motus row; at least one legacy L&I row (as of the frozen date). |
| docket_unmatched | Docket listed on the census; no authority record found in the Motus register or the legacy file | No authority row in Motus or the legacy file, but the census lists an MC, FF or MX docket — a gap between two FMCSA sources, not a private carrier. |
| none_on_record | No for-hire operating authority on record | No authority row and no docket anywhere — a private carrier, not a missing lookup. |
The explanation sentence names the active authority types and the Motus as-of date (“Active common-carrier and broker authority is currently recorded by FMCSA (Motus register as of …)”); for an inactive summary it appends the most recent status change and its reason; for legacy-only it states that the legacy system stopped updating on 2026-05-14; for docket-unmatched it says that neither register carries a record for the docket the census lists and points to SAFER; for none-on-record it adds “Carriers that move only their own goods do not need one.”
Freshness
“Registration information (MCS-150) last updated by the carrier {mcs150_date}.” — or, when the census carries no date, “The MCS-150 filing date is not stated in the census record.” — followed by “Census record as published by FMCSA {census_source_as_of}.”
Relative fleet context
Computed only when the carrier reported at least one power unit AND the state’s cohort statistics count at least 100 carriers with a reported fleet size. The percentage is the share of those carriers in strictly smaller fleet bands (the bands above, so a carrier is compared by band, not by exact count). Wording: “Larger than approximately {pct}% of the {n} active interstate carriers registered in {State} in NeuroHaul’s current dataset as of {date}. Comparison by power-unit band; carriers that did not report a fleet size are excluded.” When no band is strictly smaller — always the case for a single power unit — the sentence states the band’s share instead: “In the smallest fleet band (1 power unit), shared by {share}% of the {n} active interstate carriers registered in {State} …”, where the share is that band’s count over the same denominator. Cohort statistics are recomputed per state after every completed census run.
What is deliberately left out
- Street addresses. The physical street is stored separately with service-role-only access, pending legal review, and is never read by any public function or page. Mailing addresses are not imported at all.
- Personal and contact data from the census: email address, company officer names, telephone, fax and cell numbers, D-U-N-S number. These columns are never requested from the source, so they cannot be logged or stored by accident.
- Employer identification numbers and the ISS score from QCMobile, and the QCMobile /basics endpoint.
- Safety Measurement System BASIC percentiles, Pre-Employment Screening Program records, motor-vehicle records, Drug & Alcohol Clearinghouse data and crash-level detail. None of these are public bulk datasets FMCSA licenses for republication, and none belongs on a public page keyed to a small business.
- Ownership, equipment and lane details from the census (owned / term-leased / trip-leased unit counts, fleet-size code).
- Ratings, badges, scores or rankings of NeuroHaul’s own. The directory repeats what FMCSA recorded and when; it does not grade carriers.
Checking a page against FMCSA
Every profile links to FMCSA’s SAFER company snapshot for the same USDOT number. SAFER is the authoritative current record; this directory is a dated copy that can lag it by up to the cadence in the sources table plus the page cache (below). When the two differ, SAFER is right and the difference is worth a correction request.
Corrections, removals and retention
Requests are made from the form on each profile, reviewed by a person and never applied automatically. A removal request from the registrant unpublishes the profile while under review. Request contents and reviewer notes are kept 12 months after close; a keyed hash of the submitter’s IP address and the user-agent string 90 days; the private change log of status fields 24 months; import rejects for the last five runs. The full process is on data corrections.
Limitations
- QCMobile has no as-of date. The API returns a retrieval date only; inspection and crash totals cover the 24 months preceding FMCSA’s own snapshot, whose date is not exposed. QCMobile authority and insurance fields mirror the frozen legacy system and are not shown as current.
- Legacy L&I frozen 2026-05-14. A docket absent from Motus is shown from the legacy file with that date. Its status may have changed since; the page says so and points to SAFER.
- Out-of-service dataset scope. The orders shown are those in the New Entrant Safety Assurance Program dataset. It is not every enforcement action FMCSA can take.
- Self-reported fleet figures. Power units, drivers and mileage are what the carrier filed on its MCS-150; FMCSA does not audit them at filing time, and a filing can be years old — the MCS-150 date is shown for that reason.
- Page caching. Profiles and listings are cached for up to 24 hours. A USDOT number requested before it was imported can keep returning “not found” for up to 24 hours after the import; a correction or removal can take as long to appear everywhere. The import pipeline refreshes the pages it changed, which shortens this in practice.
- Coverage is partial. Only the states on the hub are loaded, and only carriers that met the admission predicate at import. Absence from this directory says nothing about a carrier.
- Names are as filed. Legal and DBA names are shown as FMCSA holds them, upper-case and unedited; two carriers with near-identical names are two profiles, told apart by USDOT number.