
SAFER FMCSA DOT Crawler
Pricing
Pay per event

SAFER FMCSA DOT Crawler
Crawl the SAFER DOT.GOV database for publicly registered vehicles. Supports Address, phone, email, DUNS and other registration details. Perfect for Lead Generation!
5.0 (1)
Pricing
Pay per event
5
Total users
110
Monthly users
5
Runs succeeded
>99%
Issues response
7.8 hours
Last modified
3 days ago
FMCSA DOT Crawler
Overview
The FMCSA DOT Crawler collects structured information about U.S. motor carriers directly from the FMCSA SAFER "Company Snapshot" pages. It supports keyword‑style filtering (DOT range, state, fleet size, etc.) and an optional Premium mode that adds crash statistics, safety ratings and public email addresses.
Typical use–cases include:
- Lead generation for logistics or insurance companies
- Competitor or market‑size analysis
- Compliance monitoring and risk assessment
- Building datasets of motor carriers for analysis
- Monitoring FMCSA updates for compliance or reporting
- Integrating carrier data with logistics systems
Key Features
- Comprehensive Data Extraction: Scrapes legal names, DBA names, phone numbers, addresses, operational stats, and cargo types.
- Flexible filters – pull only the carriers you need by DOT number window or add‑date.
- Straight‑forward output – each company snapshot is returned as a single JSON object that is easy to ingest downstream.
- Resilient crawling – automatic retries, exponential back‑off and proxy rotation keep the run moving even when SAFER throttles.
- Efficient Processing – optimized for crawling millions of records with fast and memory-efficient streaming
Input Schema
The scraper reads the parameters below at run‑time. Required fields are marked bold.
Field | Type | Description |
---|---|---|
dot_start | integer | First DOT number to process (inclusive) |
max_results | integer | Maximum number of records to process (0 → no limit) |
dot_end | integer | Last DOT number to process (inclusive). Defaults to 10,000,000 |
add_after_date | string (YYYY‑MM‑DD) | Include only carriers registered on or after this date |
sp_intended_usage | string | Short sentence describing how you plan to use the data. |
sp_improvement_suggestions | string | Your feedback for future upgrades. |
sp_contact | string | Contact email where we can reach you for feedback/collaboration |
Example Input
{"dot_start": 2000000,"max_results": 10000,"dot_end": 2100000,"add_after_date": "2020-01-01","sp_intended_usage": "Outbound prospecting list for carriers","sp_improvement_suggestions": "Option to filter by cargo type""sp_contact": "john@example.com"}
Output Fields
Each successful company snapshot is returned as a flat JSON object:
Field | Standard | Premium |
---|---|---|
DOT_num | ✓ | ✓ |
entity_type , legal_name , dba_name | ✓ | ✓ |
mc_mx_ff_numbers | ✓ | ✓ |
phone , physical_address , mailing_address | ✓ | ✓ |
power_units , drivers | ✓ | ✓ |
cargo_carried , carrier_operation , operation_classification | ✓ | ✓ |
DUNS_num | ✓ | ✓ |
inspections_us (vehicle / driver / hazmat / iep) | ✓ | ✓ |
inspections_ca (vehicle / driver) | ✓ | ✓ |
email | ✓ | |
crashes_us (fatal / injury / tow / total) | ✓ | |
crashes_ca (fatal / injury / tow / total) | ✓ | |
safety_rating (rating_date / review_date / rating / type) | ✓ |
Sample (Standard)
{"DOT_num": "2802023","entity_type": "Carrier","legal_name": "Example Logistics LLC","dba_name": "Example Trucks","mc_mx_ff_numbers": "MC‑123456","phone": "555‑123‑4567","physical_address": "123 Main St, Springfield, IL","mailing_address": "PO Box 456, Springfield, IL","power_units": "50","drivers": "75","cargo_carried": ["General Freight", "Household Goods"],"carrier_operation": ["Interstate"],"operation_classification": ["For Hire"],"DUNS_num": "012345678","inspections_us": { "vehicle": "10", "driver": "2", "hazmat": "0", "iep": "0" },"inspections_ca": { "vehicle": "–", "driver": "–" }}
Field | Type | Description |
---|---|---|
DOT_num | string | DOT registration number |
entity_type | string | Business type (CARRIER, BROKER, FREIGHT FORWARDER, etc.) |
legal_name | string | Legal business name |
dba_name | string | "Doing Business As" name |
mcs150_date | string | MCS-150 form update date (MM-DD-YY format) |
mcs150_mileage | string | Annual mileage reported on MCS-150 |
mcs150_mileage_year | string | Year for reported mileage |
mc_mx_ff_numbers | string | MC/MX/FF docket numbers |
phone | string | Primary phone number (digits only) |
cell_phone | string | Cell phone number |
physical_address | string | Physical business address |
mailing_address | string | Mailing address |
power_units | integer | Number of power units (trucks, tractors) |
drivers | integer | Total number of drivers |
truck_units | integer | Number of truck units |
bus_units | integer | Number of bus units |
fleet_size | string | Fleet size category (e.g., "1", "2-3", "4-6", "76-100", etc.) |
cargo_carried | array | Types of cargo transported |
carrier_operation | array | Operation type (Interstate, Intrastate Only, etc.) |
operation_classification | array | Operational classifications |
company_officer_1 | string | Primary company officer |
company_officer_2 | string | Secondary company officer |
DUNS_num | string | Dun & Bradstreet number |
email | string | Email address (when available in source data) |
inspections_us | object | US inspection counts (driver, vehicle, hazmat, iep) |
inspections_ca | object | Canadian inspection counts (currently null) |
Sample Output
{"DOT_num": "2802023","entity_type": "CARRIER","legal_name": "Example Logistics LLC","dba_name": "Example Trucks","mcs150_date": "09-06-24","mcs150_mileage": "120000","mcs150_mileage_year": "2024","mc_mx_ff_numbers": "MC123456","phone": "5551234567","cell_phone": "5559876543","physical_address": "123 Main St, Springfield, IL, 62701, US","mailing_address": "PO Box 456, Springfield, IL, 62701, US","power_units": 50,"drivers": 75,"truck_units": 45,"bus_units": 0,"fleet_size": "45-55","cargo_carried": ["General Freight", "Building Materials"],"carrier_operation": ["Interstate"],"operation_classification": ["For Hire"],"company_officer_1": "John Smith","company_officer_2": "Jane Doe","DUNS_num": "012345678","email": "contact@examplelogistics.com","inspections_us": {"driver": "12","vehicle": "8","hazmat": "2","iep": "0"},}
Notes & Best Practices
- Stick to a single primary filter per run – combining filters is currently not supported.
- Records are filtered to include only active carriers (
STATUS_CODE = 'A'
) - Phone numbers are cleaned to contain only digits
- MCS-150 dates are formatted from YYYYMMDD to MM-DD-YY for consistency
Need More Features?
If you'd like to add new data fields to this scraper or need a custom scraper for another purpose, feel free to file an issue or get in touch! We are open to customizing the scraper to suit your needs.
Why Choose This Scraper?
- Efficient: Processes a high volume of requests with intelligent retries and session management.
- Customizable: Tailor input options to suit your scraping needs.
- Reliable: Leverages robust error-handling and proxy configurations for uninterrupted scraping.
- Flexible: Process only the records you need
Proxies and Anti-blocking
This scraper uses the Apify Proxy or your custom proxy settings to reduce the risk of being blocked. It supports automatic session management for smooth operation.
Resources
Enhance your transportation data collection capabilities with the FMCSA DOT Crawler. Get started today!