USDA Cattle Market Report Scraper avatar

USDA Cattle Market Report Scraper

Pricing

from $4.07 / 1,000 results

Go to Apify Store
USDA Cattle Market Report Scraper

USDA Cattle Market Report Scraper

Scrape USDA cattle market reports into flat rows with class, grade, head count, weight range and weighted average price. Export to CSV, Excel, JSON or XML.

Pricing

from $4.07 / 1,000 results

Rating

0.0

(0)

Developer

ParseForge

ParseForge

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

7 days ago

Last modified

Share

ParseForge Banner

๐Ÿ„ USDA Cattle Market Report Scraper

๐Ÿš€ Export USDA cattle prices in seconds. 59 live Livestock Mandatory Reporting cattle reports, 25 fields per row, head count and weighted average price on every line, straight to CSV, Excel, JSON or XML.

USDA Agricultural Marketing Service publishes fed cattle trade under the Livestock Mandatory Reporting program. Packers report every purchase, AMS aggregates it, and the result is the price the whole beef supply chain settles against. The catch is the format: PDFs, fixed width text, and a query API that most teams never wire up. This Actor turns those reports into one flat row per class and grade combination, with the numbers already parsed into real numbers.

Coverage: 59 cattle reports from the open USDA Market News datamart, daily, weekly and monthly, covering the 5 Area negotiated trade, the Texas-Oklahoma-New Mexico, Kansas, Nebraska, Colorado and Iowa-Minnesota regions, national formulated and forward contract purchases, premiums and discounts, and the direct cow and bull trade. Every row carries the report slug, AMS code, report date, publication timestamp, market location, cattle class, quality grade, selling basis, purchase type, head count, weight range low, high and average, price range low and high, weighted average price and dressing percentage. USDA serves the full published history, so a single run can pull one week or ten years.

๐ŸŽฏ Target Audience๐Ÿ’ก Primary Use Cases
Cattle feeders and ranchersBenchmark last week's sale against the regional weighted average
Beef packers and procurement teamsTrack negotiated versus formula purchase mix by region
Commodity traders and analystsBuild live cash basis series against CME live cattle futures
Ag lenders and insurersValue collateral and loss claims against official USDA prices
Ag-tech and data teamsBackfill a price database without maintaining a PDF parser
Academics and extension servicesStudy price discovery and mandatory reporting coverage

๐Ÿ“‹ What the USDA Cattle Market Report Scraper does

๐Ÿ’ก Why it matters: the weighted average price in these reports is the reference price for a large share of US fed cattle contracts. Getting it as a typed number, on a schedule, is the difference between a spreadsheet somebody updates by hand and a data pipeline.

  1. Reads the open USDA Market News datamart, which needs no account and no API key.
  2. Pulls the Detail section of every report you select, for the look back window you choose.
  3. Normalises USDA's varying column names into one stable schema, so class_description and class_desc both land in cattleClass.
  4. Converts "24,032" into 24032 and "08/31/2026" into 2026-08-31, so sorting and charting work immediately.
  5. Drops USDA's placeholder lines for class and grade combinations with no confirmed trade, unless you ask for them.
  6. Applies your class, grade, selling basis and date filters, deduplicates, and spreads the row budget evenly across every report you picked.

๐ŸŽฌ Full Demo (๐Ÿšง Coming soon)

๐Ÿ“Š Output

FieldTypeDescription
๐Ÿ“Œ reportTitlestringReport name, for example National Weekly Direct Slaughter Cattle - Negotiated Purchases
๐Ÿท reportSlugstringUSDA Market News slug, for example AMS_2481
๐Ÿ”ค reportCodestringLegacy AMS report code, for example LM_CT154, or N/A when the report has none
๐Ÿ†” reportIdstringNumeric report id used by My Market News
๐Ÿ”— reportUrlstringPublic report page on mymarketnews.ams.usda.gov
๐Ÿ“… reportDatestringReport date as YYYY-MM-DD
๐Ÿ•˜ publishedAtstringPublication timestamp as reported by AMS
๐Ÿ“ marketLocationstringMarket location the AMS office reports for
๐Ÿ—บ marketStatestringTwo letter state code
๐Ÿ› officeNamestringAMS market news office that issued the report
๐Ÿฎ marketTypestringAMS market type, for example Direct Livestock - LMR Cattle
๐Ÿ„ cattleClassstringSteer, heifer, mixed, dairybred, cow or bull class as USDA prints it
โญ gradeDescriptionstringQuality grade band, for example Over 80% Choice
โš–๏ธ sellingBasisstringLive or dressed, FOB or delivered
๐Ÿค purchaseTypestringNegotiated cash, negotiated grid, formula base or forward contract base
๐Ÿ”ข headCountnumberHead reported for the class, grade and basis combination
๐Ÿ“‰ weightRangeLownumberLow end of the reported weight range in pounds
๐Ÿ“ˆ weightRangeHighnumberHigh end of the reported weight range in pounds
๐Ÿ“Š weightRangeAvgnumberWeighted average weight in pounds
๐Ÿ’ต priceRangeLownumberLow end of the reported price range
๐Ÿ’ฐ priceRangeHighnumberHigh end of the reported price range
๐ŸŽฏ weightedAvgPricenumberWeighted average price, the headline number of the report
๐Ÿฅฉ dressedPercentnumberWeighted average dressing percentage where USDA reports it
๐Ÿ•’ scrapedAtstringISO timestamp of the extraction
โŒ errorstringPopulated only on an error row, otherwise null

Fields USDA withholds on a given line come back as Not Disclosed. Fields that do not apply to a report come back as N/A. Numbers are never returned as text.

Three real records from a run:

[
{
"reportTitle": "National Weekly Direct Slaughter Cattle - Negotiated Purchases",
"reportSlug": "AMS_2481",
"reportCode": "LM_CT154",
"reportId": "2481",
"reportUrl": "https://mymarketnews.ams.usda.gov/viewReport/2481",
"reportDate": "2026-08-31",
"publishedAt": "2026-08-31T11:48:23",
"marketLocation": "St. Joseph, MO",
"marketState": "MO",
"officeName": "St Joseph, MO",
"marketType": "Direct Livestock - LMR Cattle",
"cattleClass": "STEER",
"gradeDescription": "Over 80% Choice",
"sellingBasis": "LIVE FOB",
"purchaseType": "NEGOTIATED CASH",
"headCount": 24032,
"weightRangeLow": 1305,
"weightRangeHigh": 1700,
"weightRangeAvg": 1546,
"priceRangeLow": 214,
"priceRangeHigh": 227,
"weightedAvgPrice": 219.54,
"dressedPercent": 63.2,
"scrapedAt": "2026-09-08T05:36:45.003Z",
"error": null
},
{
"reportTitle": "National Weekly Direct Slaughter Cattle - Negotiated Purchases",
"reportSlug": "AMS_2481",
"reportCode": "LM_CT154",
"reportId": "2481",
"reportUrl": "https://mymarketnews.ams.usda.gov/viewReport/2481",
"reportDate": "2026-08-31",
"publishedAt": "2026-08-31T11:48:23",
"marketLocation": "St. Joseph, MO",
"marketState": "MO",
"officeName": "St Joseph, MO",
"marketType": "Direct Livestock - LMR Cattle",
"cattleClass": "STEER",
"gradeDescription": "65 - 80% Choice",
"sellingBasis": "LIVE FOB",
"purchaseType": "NEGOTIATED CASH",
"headCount": 3617,
"weightRangeLow": 1250,
"weightRangeHigh": 1650,
"weightRangeAvg": 1514,
"priceRangeLow": 218,
"priceRangeHigh": 222,
"weightedAvgPrice": 221.67,
"dressedPercent": 62.8,
"scrapedAt": "2026-09-08T05:36:45.004Z",
"error": null
},
{
"reportTitle": "National Weekly Direct Slaughter Cattle - Negotiated Purchases",
"reportSlug": "AMS_2481",
"reportCode": "LM_CT154",
"reportId": "2481",
"reportUrl": "https://mymarketnews.ams.usda.gov/viewReport/2481",
"reportDate": "2026-08-31",
"publishedAt": "2026-08-31T11:48:23",
"marketLocation": "St. Joseph, MO",
"marketState": "MO",
"officeName": "St Joseph, MO",
"marketType": "Direct Livestock - LMR Cattle",
"cattleClass": "STEER",
"gradeDescription": "35 - 65% Choice",
"sellingBasis": "LIVE FOB",
"purchaseType": "NEGOTIATED CASH",
"headCount": 798,
"weightRangeLow": 1250,
"weightRangeHigh": 1500,
"weightRangeAvg": 1441,
"priceRangeLow": 221,
"priceRangeHigh": 222,
"weightedAvgPrice": 221.93,
"dressedPercent": 62.3,
"scrapedAt": "2026-09-08T05:36:45.004Z",
"error": null
}
]

โœจ Why choose this Actor

  • No account, no key, no proxy. The Actor reads the open USDA Market News datamart. A run works out of the box.
  • Numbers arrive as numbers. Head counts, weights and prices are parsed, so a chart or a SUM works on the first try.
  • One schema across 59 reports. USDA uses different column names in different report families. The Actor maps them all to the same 25 fields.
  • No empty rows by default. USDA prints a line for every class and grade combination even when nothing traded. Those lines are filtered out unless you want them.
  • Full history, not just today. Set the look back window to 3,650 days and pull ten years of weighted average prices in one run.
  • Even coverage across reports. Pick five reports and a budget of 500 rows and the Actor spreads the budget across all five instead of exhausting the first one.
  • Never a silent null. Withheld values come back as Not Disclosed, inapplicable ones as N/A.

๐Ÿ“ˆ How it compares to alternatives

ApproachSetupStructured numbersCoverageMaintenance
This ActorNone, run itYes, 25 typed fields59 LMR cattle reports, full historyNone
USDA report PDFsDownload by handNo, you parse the layoutEverything AMS publishesLayout changes break your parser
My Market News API directFree key by eAuth registration, hours to issueYes, raw column names vary by reportFull AMS catalogYou write the normalisation
Generic web scrapersSelector tuningRarelyWhatever renders in HTMLBreaks on every site change

Honest ceiling: the open datamart carries the Livestock Mandatory Reporting catalog, which is direct trade between producers and packers. Auction barn reports live in the wider My Market News catalog and need the free API key, which you can paste into the optional API key input.

๐Ÿš€ How to use

  1. Create a free Apify account with $5 in starting credit through this link.
  2. Open the Actor and go to the Input tab.
  3. Pick one or more USDA cattle reports from the dropdown. The default is the National Weekly Direct Slaughter Cattle negotiated purchases report.
  4. Set the look back window, or set a From date to pull a specific stretch of history.
  5. Optionally filter by cattle class, quality grade or selling basis.
  6. Set Max Items and click Start.
  7. Download the dataset as CSV, Excel, JSON or XML, or read it from the Apify API.

๐Ÿ’ผ Business use cases

Cash basis and hedging

Pull the 5 Area weekly weighted average alongside the regional negotiated reports, join it to your futures settlements, and you have a live basis series per region. Feeders use it to time hedge placement, packers use it to price forward contracts.

Procurement benchmarking

A feedlot that sold 1,200 head of Over 80% Choice steers on a live FOB basis can compare its realised price against the national weighted average for the exact same class, grade and basis on the same report date. That comparison is a single filtered query once the data is in a table.

Market intelligence products

Ag-tech platforms and farm management apps embed cattle price widgets. Running this Actor on a schedule and writing the rows to a database is a complete backend for that feature, with no PDF parsing and no scraper to maintain.

Lending and risk

Ag lenders value cattle collateral against official USDA prices. Pulling the historical weighted average for the relevant class and weight range gives an auditable valuation basis that a regulator recognises.

๐Ÿ”Œ Automating USDA Cattle Market Report Scraper

  • Schedules: run it every weekday at 4 pm Central, after the afternoon reports publish.
  • Make and Zapier: trigger on a finished run and append new rows to Google Sheets or Airtable.
  • Slack: post the weighted average price and head count to a trading channel the moment a report lands.
  • Airbyte and Fivetran: pull the dataset through the Apify API into Snowflake, BigQuery or Postgres.
  • GitHub Actions: call the Actor from a workflow and commit the CSV to a data repository for versioned history.
  • Google Drive: drop the CSV into a shared folder so the analysts who live in spreadsheets always have the latest file.

๐ŸŒŸ Beyond business use cases

  • Research: study how much of the fed cattle trade is negotiated versus formula, region by region, over a decade.
  • Personal: a small producer can check whether the local buyer's bid is close to the national weighted average before loading the trailer.
  • Non-profit: food policy groups can document price discovery and market concentration with primary government data.
  • Experimentation: train a forecasting model on ten years of weighted average prices with head counts as a volume signal.

๐Ÿค– Ask an AI assistant about this scraper

Paste this into ChatGPT, Claude or any assistant:

I am using the ParseForge USDA Cattle Market Report Scraper on Apify. It returns one row per USDA report line with reportSlug, reportDate, marketLocation, cattleClass, gradeDescription, sellingBasis, purchaseType, headCount, weightRangeLow, weightRangeHigh, weightRangeAvg, priceRangeLow, priceRangeHigh, weightedAvgPrice and dressedPercent. Help me build a weekly cash basis series for Nebraska live FOB steers and chart it.

โ“ Frequently Asked Questions

๐Ÿ”‘ Do I need a USDA account or an API key?

No. The Actor reads the open USDA Market News datamart, which answers without any credentials. The API key input is optional and only widens the report catalog.

๐Ÿฎ Which reports are covered?

59 Livestock Mandatory Reporting cattle reports that publish a Detail section: daily, weekly and monthly negotiated purchases, formula and grid purchases, forward contract purchases, premiums and discounts, and the direct cow and bull trade, at national and regional level.

๐Ÿš Are auction barn reports included?

Not through the open route. Auction reports live in the wider My Market News catalog, which needs the free API key. Register at the My Market News API page and paste the key into the API key input.

๐Ÿ“… How far back can I go?

USDA serves the full published history through this route. The look back window accepts up to 3,650 days, and you can also set explicit From and To dates.

๐Ÿ’ฒ What unit are the prices in?

Exactly what USDA published on that report line. Live basis rows are dollars per hundredweight of live weight, dressed basis rows are dollars per hundredweight of carcass weight. The Actor does not convert between them.

๐Ÿˆณ Why do some rows show Not Disclosed?

USDA suppresses a value when too few packers reported it, which protects confidentiality. Those lines are kept with a Not Disclosed sentinel rather than a null, so you can see the gap instead of guessing.

๐Ÿšซ Why are so many report lines missing from my output?

USDA prints a placeholder line for every class and grade combination, including the ones with no confirmed trade. Those lines are dropped by default. Turn on "Include rows with no reported sales" to keep them.

๐Ÿ” How often should I run it?

Daily reports publish every weekday, weekly reports on Monday, monthly reports once a month. A weekday afternoon schedule catches everything.

๐Ÿ“ฆ Can I pull several reports in one run?

Yes. Select as many as you like and the Actor spreads your item budget evenly across them, so no single report eats the whole run.

๐Ÿงพ What formats can I export?

CSV, Excel, JSON, XML, JSONL and RSS, either from the Apify Console or through the dataset API.

โฑ How long does a run take?

A single report over a 30 day window returns in a few seconds. Ten reports over ten years is a couple of minutes, since the whole job is a handful of JSON calls.

๐ŸŒ Do I need a proxy?

No. USDA answers plain requests, so the proxy input defaults to off. Turn it on only if you run very high volume from one account.

๐Ÿ”Œ Integrate with any app

Every run writes a standard Apify dataset, so anything that speaks HTTP can read it. Use the REST API, the JavaScript or Python client, the Make and Zapier integrations, or a plain scheduled export to Google Drive, Amazon S3 or a webhook.

๐Ÿ’ก Pro Tip: browse the complete ParseForge collection for more government and market data Actors.

๐Ÿ†˜ Need Help? Open our contact form

โš ๏ธ Disclaimer: This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by the United States Department of Agriculture or its Agricultural Marketing Service. It collects only publicly available data published by USDA Market News.