FMCSA Motor Carrier Leads Scraper
Pricing
Pay per event
FMCSA Motor Carrier Leads Scraper
π Find public USDOT/FMCSA motor carrier leads by DOT number, company name, state, city, fleet size, and new-carrier add date.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Stas Persiianenko
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Extract public USDOT/FMCSA motor carrier records for trucking lead generation, compliance checks, factoring outreach, insurance prospecting, and freight broker research.
The actor queries the public U.S. Department of Transportation Socrata dataset directly. It does not scrape blocked SAFER pages, does not require a login, and does not use a browser.
What does FMCSA Motor Carrier Leads Scraper do?
FMCSA Motor Carrier Leads Scraper turns public motor-carrier registry data into a clean Apify dataset.
It can look up known USDOT numbers, search legal or DBA company names, discover carriers by physical-address state or city, and build new-carrier feeds by FMCSA add date.
Each output row is one carrier record with DOT number, name, status, phone, address, fleet size, drivers, add date, docket fields, and source URL.
Who is it for?
- π Freight brokers building regional carrier lists.
- π³ Factoring companies looking for small fleets and new authorities.
- π‘οΈ Insurance teams prospecting commercial trucking accounts.
- π Compliance teams checking public carrier status and contact data.
- π B2B sales teams enriching transportation company CRMs.
- π§βπ» Data teams that need repeatable FMCSA API extraction on Apify.
Why use this actor?
The public FMCSA dataset contains millions of rows, but it is not packaged for lead workflows. This actor adds user-friendly filters, pagination, typed output, Apify datasets, API access, and pay-per-result charging.
You can run it on a schedule, export CSV or JSON, connect it to webhooks, or call it from your own code.
Data source
The actor uses the public Socrata endpoint hosted at data.transportation.gov.
SAFER/FMCSA HTML pages are not used as the extraction source because they can return 403 responses from automated environments. Dataset rows include a SAFER snapshot URL for user reference.
What data can I extract?
| Field | Description |
|---|---|
dotNumber | USDOT number |
legalName | Carrier legal name |
dbaName | DBA name when available |
statusCode | FMCSA status code, for example active/inactive |
carrierOperation | Carrier operation code |
businessOrg | Business organization description |
phone | Public phone number |
physicalAddress | Physical street/city/state/ZIP |
mailingAddress | Mailing street/city/state/ZIP |
powerUnits | Power unit count |
drivers | Total driver count |
mcs150Mileage | MCS-150 mileage |
addDate | FMCSA add date |
docketPrefix | Docket prefix |
docketNumber | Docket number |
sourceUrl | SAFER carrier snapshot URL |
scrapedAt | Extraction timestamp |
How much does it cost to scrape FMCSA motor carrier leads?
This actor uses pay-per-event pricing.
- A small start fee is charged once per run.
- A per-item fee is charged for each carrier record saved.
- Larger Apify subscription tiers receive lower per-item prices.
Use maxItems to control cost before running a broad state or city search.
Input options
Lookup filters
dotNumbersβ exact DOT/USDOT number lookup.companyNamesβ partial legal name or DBA search.statesβ physical-address state codes such asTX,CA, orFL.citiesβ physical-address city names.
Carrier filters
onlyActiveβ defaulttrue, keeps active carriers only.addedSinceβ build a new-carrier feed fromYYYY-MM-DDorYYYYMMDD.minPowerUnitsβ exclude carriers below a fleet-size threshold.minDriversβ exclude carriers below a driver-count threshold.
Run limits
maxItemsβ maximum records to save.pageSizeβ Socrata page size for each request.
Example input: active Texas leads
{"states": ["TX"],"onlyActive": true,"minPowerUnits": 1,"maxItems": 100}
Example input: DOT lookup
{"dotNumbers": ["284470", "1000006"],"onlyActive": false,"maxItems": 25}
Example input: new carrier feed
{"states": ["FL", "GA"],"addedSince": "2024-01-01","onlyActive": true,"minPowerUnits": 1,"maxItems": 250}
Output example
{"dotNumber": "284470","legalName": "INDEPENDENT TRANSPORTATION SERVICES INC","dbaName": null,"statusCode": "I","phone": "6022339778","city": "PHOENIX","state": "AZ","powerUnits": 2,"drivers": 5,"addDate": "1986-12-30","sourceUrl": "https://safer.fmcsa.dot.gov/query.asp?...","scrapedAt": "2026-06-26T00:00:00.000Z"}
How to run it
- Open the actor on Apify.
- Choose DOT lookup, company search, or state/city lead discovery.
- Keep the default
maxItemsfor a cheap first run. - Run the actor.
- Export the dataset as CSV, JSON, Excel, XML, or RSS.
Tips for better lead lists
- Use
onlyActive: truefor sales prospecting. - Use
addedSincefor new-authority or new-carrier monitoring. - Combine
stateswithminPowerUnitsto focus on operating fleets. - Disable
onlyActivefor historical or compliance research. - Use smaller
maxItemswhen testing a new geography.
Integrations
This actor works well in these workflows:
- CRM enrichment: export FMCSA carrier leads to HubSpot, Salesforce, or Airtable.
- Outreach: send new carrier rows to email or calling workflows.
- Compliance monitoring: schedule repeat runs and compare DOT status changes.
- Market research: build state-level snapshots of active trucking companies.
- Freight sales: segment carriers by power units, drivers, state, and city.
API usage with Node.js
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('automation-lab/fmcsa-motor-carrier-leads-scraper').call({states: ['TX'],onlyActive: true,maxItems: 100});console.log(run.defaultDatasetId);
API usage with Python
from apify_client import ApifyClientclient = ApifyClient('YOUR_APIFY_TOKEN')run = client.actor('automation-lab/fmcsa-motor-carrier-leads-scraper').call(run_input={'states': ['TX'],'onlyActive': True,'maxItems': 100,})print(run['defaultDatasetId'])
API usage with cURL
curl -X POST 'https://api.apify.com/v2/acts/automation-lab~fmcsa-motor-carrier-leads-scraper/runs?token=YOUR_APIFY_TOKEN' \-H 'Content-Type: application/json' \-d '{"states":["TX"],"onlyActive":true,"maxItems":100}'
MCP usage
Use this actor from Claude Desktop, Claude Code, or other MCP clients through Apify MCP.
MCP server URL:
https://mcp.apify.com/?tools=automation-lab/fmcsa-motor-carrier-leads-scraper
Claude Code setup:
$claude mcp add apify-fmcsa --transport http "https://mcp.apify.com/?tools=automation-lab/fmcsa-motor-carrier-leads-scraper"
Claude Desktop JSON config:
{"mcpServers": {"apify-fmcsa": {"url": "https://mcp.apify.com/?tools=automation-lab/fmcsa-motor-carrier-leads-scraper"}}}
Example prompts:
- βFind 100 active FMCSA motor carriers in Texas with at least one power unit.β
- βLook up these DOT numbers and return company names, phone numbers, and fleet size.β
- βBuild a new FMCSA carrier lead feed for Florida and Georgia since 2024-01-01.β
Scheduling and monitoring
You can schedule the actor daily, weekly, or monthly. For new-carrier monitoring, set addedSince to a recent date and export new rows to your CRM or warehouse.
Limits and reliability
The actor uses public Socrata API pagination and bounded retries. Very large runs may be throttled by the public endpoint, so increase volume gradually and keep pageSize reasonable.
Legality
The actor extracts public U.S. government transportation records. You are responsible for using the data lawfully, respecting outreach rules, honoring do-not-call requirements where applicable, and complying with your local privacy and marketing regulations.
FAQ
Is this an official FMCSA product?
No. This is an independent Apify actor that reads public data from a U.S. Department of Transportation open-data endpoint.
Do I need a Socrata app token?
No app token is required for normal runs. The actor uses gentle pagination and retries for the public endpoint.
Troubleshooting
Why did I get fewer rows than maxItems?
Your filters may be narrow, or Socrata may not contain matching rows for the combination of state, city, add date, active status, fleet size, and driver count.
Why are some fields null?
FMCSA source records are not complete for every carrier. DBA name, mailing address, docket fields, and mileage can be missing.
Why does the source URL show a page that blocks bots?
The actor does not depend on that page. It is included as a human-readable SAFER reference. The extraction source is the public Socrata dataset.
Related scrapers
Explore other Automation Lab actors:
- https://apify.com/automation-lab/website-contact-finder
- https://apify.com/automation-lab/google-maps-lead-finder
- https://apify.com/automation-lab/business-email-finder
Changelog
0.1
Initial private build with DOT lookup, company-name search, state/city discovery, new-carrier add-date feed, fleet filters, typed output, and pay-per-result charging.
Support
If you need a field that exists in the FMCSA public dataset but is not included yet, open an issue on the actor page and include your target workflow.