DAT Freight Rates Scraper
parseforge/dat-freight-rates-scraper
BusinessAutomation
Scrapes DAT Trendlines national rate history, load-to-truck ratios, trend percentages, and fuel prices. Returns each observation as a flat row tagged by dataset.
- Total users
- 12
- Monthly active
- 3
- Total runs
- 695
- Bookmarked
- 0
- Rating
- Not rated yet
- Last modified
- 12 days ago
Overview
DAT Freight Rates Scraper
Scrape DAT Trendlines freight rates, load-to-truck ratios, fuel prices, and trend percentages on a schedule. Pull national rate history, state-level supply/demand indicators, and diesel benchmarks into one flat dataset. Export to CSV, JSON, Excel, or XML.
DAT Trendlines is the industry benchmark for North American truckload pricing, but the web dashboards are built for manual lookups, not for feeding models or spreadsheets. This Actor reads the public Trendlines datasets directly and returns every data point in a consistent row format, so you can track spot rates, contract rates, and capacity signals without copying and pasting. No API key or DAT login is required.
| Who uses it | What they scrape DAT Freight & Analytics for |
|---|---|
| Freight brokers | Monitor spot rate movements week over week to price lanes competitively. |
| Logistics analysts | Feed national rate history and load-to-truck ratios into forecasting models. |
| Carrier sales teams | Track contract rate trends to negotiate renewal terms with shippers. |
| Supply chain consultants | Pull state-level capacity signals to advise clients on regional sourcing risks. |
What it does
This Actor collects DAT Trendlines freight rate history, load-to-truck ratios, national trend percentages, and fuel prices, and returns each observation as a flat row tagged by dataset.
- π National rate history: monthly and weekly time series of average rates per equipment, rate type, and country.
- βοΈ Load-to-truck ratio: state and province level supply/demand indicator for dry van, flatbed, reefer, and intermodal.
- π National trend percentages: week-over-week, month-over-month, and year-over-year change percentages for the national average.
- β½ Fuel price: current national diesel reference price updated weekly by DAT.
- π·οΈ Dataset tagging: every row carries a
datasetfield so you can filter and join the four datasets downstream.
Results export to CSV, JSON, Excel, or XML, or straight from the API.
What you can do with DAT Freight & Analytics data
π Track spot rate trends.
A freight broker runs the Actor weekly for dry van spot rates out of California and Texas to decide when to adjust lane pricing.
π Feed a rate forecasting model.
A logistics data scientist pulls the full national rate history monthly and joins it with load-to-truck ratios to train a predictive model.
β½ Monitor diesel benchmarks.
A carrier CFO scrapes the fuel price dataset weekly to update internal surcharge tables without visiting the DAT dashboard.
πΊοΈ Compare regional capacity.
A supply chain consultant pulls load-to-truck ratios for every Midwest state to identify tightening markets before a peak season.
Why choose this scraper
| What you get | |
|---|---|
| No manual exports | Schedule the Actor and append fresh rates to your database every Monday morning. |
| Four datasets, one schema | National history, load-to-truck ratios, trend percentages, and fuel prices land in the same flat table. |
| State-level granularity | Filter load-to-truck ratios to the exact US states or Canadian provinces you care about. |
| Spot and contract rates | Pull shipper-to-broker spot, broker-to-carrier spot, and contract rates in one run. |
How it compares
No other Store actor targets DAT Freight & Analytics the same way, so the honest comparison is with the alternatives teams actually weigh.
| DAT Freight Rates Scraper | Build it in-house | By hand | |
|---|---|---|---|
| Setup | Run it now, zero config | Days of engineering | None, but hours per pull |
| When DAT Freight & Analytics changes | Maintained for you | You fix it | You re-learn the page |
| Proxies, retries, anti-bot | Built in | Your problem | Browser only |
| Output | Fixed JSON schema, CSV/Excel export | Whatever you build | Copy-paste |
| Cost | Pay per result | Engineering time | Analyst hours |
Configure the run
Drive the Actor by picking which Trendlines datasets to scrape, then narrow the results by equipment category, rate type, country, period granularity, and state codes before a single row lands in your dataset. The Input tab lists every parameter.
A first run with the defaults:
{
"maxItems": 10
}
A larger pull:
{
"maxItems": 200
}
Pricing
Pay-per-result: $0.025 per result collected. You pay only for the results written to your dataset.
| Results collected | Approximate cost |
|---|---|
| 100 results | $2.50 |
| 1,000 results | $25.00 |
| 10,000 results | $250.00 |
New Apify accounts start with $5 in free credit.
Free users
Free-plan runs return up to 10 results as a preview. Upgrade your Apify plan to collect up to 1,000,000 results per run.
Run it
- Create a free Apify account with $5 in credit.
- Open the DAT Freight Rates Scraper.
- Set your inputs and any filters, then click Start.
- Export the results as CSV, Excel, JSON, or XML from the Dataset tab.
Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.
Use with AI agents (MCP)
Give an AI agent live access to DAT Freight & Analytics through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:
claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/dat-freight-rates-scraper"
Then prompt it in plain language to run the scraper and read back the results.
Troubleshooting
Why am I getting no results?
Check that you have selected at least one dataset and that your equipment, rate type, country, and period filters are not too restrictive. The load-to-truck ratio dataset ignores the country and period filters, so try running it alone to confirm connectivity.
Why are load-to-truck ratio rows missing for some states?
DAT publishes ratios only for states and provinces with enough activity. If a region has very low volume, it may not appear in the feed. Leave the state codes filter empty to see every region DAT returns.
Why do I see fewer rows than expected in national history?
The number of rows depends on the combinations of equipment, rate type, country, and period granularity you selected. Each combination produces one time series. Broaden your filters to pull more data.
The run timed out. What should I do?
Reduce the number of datasets or filter combinations in a single run. You can also increase the run timeout in the Actor's advanced settings on Apify.
Why are the trend percentages showing null values?
DAT may not publish a percentage change for every period, especially at the start of a time series when the prior period is unavailable. Nulls are expected and represent missing reference points.
FAQ
| Question | Answer |
|---|---|
| Do I need a DAT login or API key to scrape Trendlines? | No. The Actor reads the public Trendlines endpoints that power the DAT web dashboards. You do not need a DAT account or an API key. |
| What is the difference between shipper-to-broker spot and broker-to-carrier spot? | Shipper-to-broker spot is the rate a shipper pays a broker to move a load. Broker-to-carrier spot is the rate the broker pays the carrier. The spread between them is the broker margin. |
| How far back does the national rate history go? | Monthly buckets typically reach back about three years. Weekly buckets go back roughly one year. The exact window depends on what DAT publishes at the time of the run. |
| Can I pull load-to-truck ratios for Canadian provinces? | Yes. The load-to-truck ratio dataset covers US states and Canadian provinces. Leave the state codes filter empty to get every region DAT publishes. |
| What equipment types are available? | Dry van, flatbed, reefer (refrigerated), and intermodal. You can select one, several, or all of them in the equipment filter. |
| Does the Actor return contract rates as well as spot rates? | Yes. The rate types filter lets you include contract rates alongside the two spot rate types in the national history dataset. |
| How often is the fuel price updated? | DAT updates the national diesel reference price weekly. Schedule the Actor to run on the same cadence to keep your records current. |
| Can I get week-over-week and month-over-month change percentages? | Yes. The national trend percentages dataset returns week-over-week, month-over-month, and year-over-year changes for the national average rate. |
| What output formats are supported? | The Apify platform stores results as JSON, CSV, Excel, or XML. You choose the format when you export or via an API call. |
| Can I schedule this Actor to run automatically? | Yes. Apify schedules let you run the Actor on a cron expression, so you can pull fresh rates every Monday morning or on any other cadence. |
Related actors
Browse the full ParseForge collection for more scrapers.
π Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.
β οΈ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by DAT Solutions, LLC. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.
Input
| Field | Type | What it does | Default |
|---|---|---|---|
| maxItems | integer | How many freight rates to collect per run. | 10 |
| datasets | array | Which Trendlines datasets to scrape. `national_history` is a time series of national average rates per equipment, rate type, and country. `load_truck_ratio` is the supply/demand indicator per US/Canadian state. `national_trends` is week/month/year-over-year percentages. `fuel_price` is the current national diesel reference price. | ["national_history","load_truck_ratio"," |
| equipments | array | Equipment categories to include. Applies to `national_history` and `load_truck_ratio`. | ["VAN","FLATBED","REEFER"] |
| rateTypes | array | Rate types to include for `national_history`. SPOT-shipper-to-broker is what shippers pay brokers. SPOT-broker-to-carrier is what brokers pay carriers. CONTRACT is the contractual rate. | ["SHIPPER_TO_BROKER_SPOT","BROKER_TO_CAR |
| countries | array | Countries to include for `national_history`. `load_truck_ratio` always returns the full North American grid. | ["US","CA"] |
| periodTypes | array | Time period granularities to fetch for `national_history`. Month returns monthly buckets going back ~3 years. Week returns weekly buckets going back ~1 year. | ["Month","Week"] |
| states | array | Optional list of US state or Canadian province ISO codes to restrict the `load_truck_ratio` dataset. Leave empty to return every state and province DAT publishes. | [] |
Pricing
from $18.75 per 1,000 results
| Charged for | What it is | Price each |
|---|---|---|
| Result Item | Charged once per result collected. | $0.01875 to $0.025 |
Tiered: the lower figure is the price on a higher Apify plan. Billing and the free credit live on Apify.
API
One POST returns the dataset directly. Same shape for every scraper in the library, so swapping the slug is the only change.
curl -X POST "https://api.apify.com/v2/acts/parseforge~dat-freight-rates-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"helloWorld": 123
}' Examples
Input that runs as-is.
{
"helloWorld": 123
} Reviews
No reviews yet. Be the first.
Issues
We build and maintain this scraper, so a problem with it comes to us. Report it on the Apify listing and the thread stays attached to the scraper where the next person can find it: open an issue.
Broken and urgent, or you would rather not post in public? Write to parseforge@protonmail.com and it reaches the people who wrote it.
