ParseForge Scrapers

USDA FSIS Food Recall Scraper

parseforge/usda-recall-watch-scraper

News & mediaOther

Scrapes USDA FSIS food recall alerts by year or classification. Returns each recall as a flat row with reason, pounds affected, and dates.

Run this scraper See the API call
Total users
2
Monthly active
1
Total runs
96
Bookmarked
0
Rating
Not rated yet
Last modified
12 days ago

Overview

ParseForge

USDA FSIS Food Recall Scraper

Scrape USDA FSIS food recall alerts by year or severity, up to a million per run. Every recall comes with its reason, classification, pounds affected, and dates. No login or API key. Export to CSV, JSON, Excel, or XML.

The USDA FSIS recall page lists every meat, poultry, and egg product recall, but there is no official API and the data is spread across individual alerts. This Actor reads the public recall feed directly, filters by year or FDA classification, and returns each recall in one fixed schema.

Who uses it What they scrape USDA FSIS for
Food safety compliance officers Monitor recalls that affect their product categories
Supply chain managers Check whether a recalled ingredient appears in their inventory
Public health researchers Analyze recall frequency and severity over time
Journalists covering food safety Find recent recalls for a story or investigation

What it does

This Actor collects USDA FSIS food recall alerts by year or classification, and returns each recall as a flat row.

  • ๐Ÿ“… Year filter: collect recalls from a single year, or leave empty for the newest across all years.
  • ๐Ÿšจ Classification filter: narrow to Class I, Class II, or Class III recalls by severity.
  • ๐Ÿ”ข Max items: cap the number of recalls per run, from 1 to 1,000,000.

Results export to CSV, JSON, Excel, or XML, or straight from the API.

What you can do with USDA FSIS data

๐Ÿšจ Monitor high-risk recalls.

A food safety compliance officer runs the Actor daily with classification set to Class I, and reviews the newest alerts to decide whether to hold or recall affected products.

๐Ÿ“… Build an annual recall report.

A public health researcher sets the year to 2024 and collects all recalls, then analyzes the reasons and pounds affected to spot trends in contamination sources.

๐Ÿ” Check a supplier's recall history.

A supply chain manager filters by year and classification, then searches the dataset for a supplier's name to see if any of their ingredients have been recalled.

๐Ÿ“ฐ Find a story lead.

A journalist runs the Actor for the latest recalls, filters to Class I, and picks a recent alert with a large poundage to investigate for a feature.

Why choose this scraper

What you get
No API key Reads the public USDA FSIS recall feed directly, no registration or OAuth
Structured output Every recall is returned as a flat row with consistent fields
Flexible filtering Filter by year or FDA classification before data is collected
Scalable Collect up to 1,000,000 recalls in a single run

How it compares

No other Store actor targets USDA FSIS the same way, so the honest comparison is with the alternatives teams actually weigh.

USDA FSIS Food Recall Scraper Build it in-house By hand
Setup Run it now, zero config Days of engineering None, but hours per pull
When USDA FSIS 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 with a year, a classification, and a maximum item count, alone or together, and filters run as each recall is read so only matches reach 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.021 per result collected. You pay only for the results written to your dataset.

Results collected Approximate cost
100 results $2.10
1,000 results $21.00
10,000 results $210.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

  1. Create a free Apify account with $5 in credit.
  2. Open the USDA FSIS Food Recall Scraper.
  3. Set your inputs and any filters, then click Start.
  4. 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 USDA FSIS 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/usda-recall-watch-scraper"

Then prompt it in plain language to run the scraper and read back the results.

Troubleshooting

Why am I getting no results?

Check your year and classification filters. If you set a year with no recalls, or a classification that does not match any recall in that year, the Actor will return an empty dataset. Try leaving the year empty or changing the classification.

Why is the run slow?

The Actor reads the FSIS recall feed page by page. If you set maxItems very high, it may take longer. Reduce maxItems or run the Actor less frequently.

Why are some fields empty?

Not every recall alert includes every field. For example, some recalls may not list a specific poundage or company. The Actor returns whatever is available on the page.

Can I get the data in real time?

The Actor runs on demand or on a schedule. For real-time monitoring, schedule it to run every few minutes and use a webhook to push new results to your system.

FAQ

Question Answer
What is USDA FSIS? The Food Safety and Inspection Service is the public health agency in the U.S. Department of Agriculture responsible for ensuring that meat, poultry, and egg products are safe, wholesome, and correctly labeled.
What data does this Actor return? Each recall row includes the recall number, date, reason, classification, pounds affected, product description, and company information, as available on the FSIS recall page.
Can I filter by recall reason or company? The input schema only supports filtering by year and classification. To filter by reason or company, collect the data and filter the output dataset in your own code or spreadsheet.
How do I get the newest recalls? Leave the year field empty and set maxItems to the number of recalls you want. The Actor will return the most recent recalls across all years.
What is the difference between Class I, II, and III? Class I is a health hazard situation where there is a reasonable probability that the use of the product will cause serious, adverse health consequences or death. Class II is a situation where use of the product may cause temporary or medically reversible adverse health consequences. Class III is a situation where use of the product is not likely to cause adverse health consequences.
Is there a rate limit? The Actor reads the public FSIS recall feed, which does not impose a strict rate limit for normal use. If you run many concurrent instances, you may see slower responses.
Can I schedule this Actor to run automatically? Yes, you can schedule it on Apify to run daily, weekly, or at any interval, and have the results pushed to a dataset, key-value store, or external service via webhooks.
What export formats are supported? You can export the results to CSV, JSON, Excel, or XML from the Apify dataset.
Does this Actor include recalls from the FDA? No, this Actor only scrapes USDA FSIS recalls for meat, poultry, and egg products. FDA recalls for other foods are not included.
How far back does the recall data go? The FSIS recall page includes recalls from many years. You can set the year filter to a specific year, or leave it empty to get the newest recalls across all available years.

Related actors

  • google-news-scraper: Use this to monitor news articles about food recalls from multiple sources.

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 U.S. Department of Agriculture, Food Safety and Inspection Service. 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

FieldTypeWhat it doesDefault
maxItems integer How many recalls to collect per run. 10
year integer Filter by recall report year (e.g. 2025). Leave empty for newest across all years. not set
classification string (3 options) Filter by FDA classification (severity). not set

Pricing

from $19.00 per 1,000 results

Charged forWhat it isPrice each
result Single result in the default dataset. $0.019 to $0.021

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.

POST ยท run and get results
curl -X POST "https://api.apify.com/v2/acts/parseforge~usda-recall-watch-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "helloWorld": 123
  }'

Examples

Input that runs as-is.

input.json
{
  "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.

Related scrapers

Run USDA FSIS Food Recall Scraper on Apify All scrapers