โ ๏ธ CPSC Product Recalls & Safety Tracker
Pricing
from $20.00 / 1,000 results
โ ๏ธ CPSC Product Recalls & Safety Tracker
CPSC consumer product recalls (saferproducts.gov): recalled products, hazards, remedies, manufacturers, injuries, and dates. For retailers, product-safety/QA, insurers, and class-action researchers.
Pricing
from $20.00 / 1,000 results
Rating
0.0
(0)
Developer
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Pay-per-result US consumer-product recall data straight from the official CPSC / saferproducts.gov feed โ $0.10 per recall record. No commercial recall-monitoring subscription, no per-seat compliance-platform contract.
Every consumer-product recall in the United States โ from cribs and space heaters to lithium-battery power banks, kids' apparel with drawstring hazards, contaminated cosmetics, and tip-over-prone dressers โ is announced by the U.S. Consumer Product Safety Commission (CPSC) and published through saferproducts.gov. This actor reads the official CPSC recalls publication, parses each recall into clean structured JSON, and lets you filter by date range or keyword so you can monitor exactly the categories, brands, and hazards that matter to you.
CPSC recalls are a high-value safety and compliance signal. A single recall can trigger product-liability exposure, retailer pull-from-shelf obligations, insurance claims, regulatory follow-up, and press coverage in the same week. Yet the teams who need that signal earliest are least served by the raw source: the official site is built for a human reading one recall at a time, not for a pipeline that must ingest, filter, dedupe, and route hundreds of records into a database, spreadsheet, alerting workflow, or model.
This actor closes that gap. It turns the official CPSC recalls feed into a queryable, schedulable dataset where every structured detail the CPSC publishes โ products, hazards, remedies, manufacturers, injury statements, the consumer-contact block, and the canonical recall URL โ is broken out into discrete fields you can act on programmatically. You pay only for the records you pull, with no platform contract and no minimum.
Why use this
- It is the official source. Records come directly from the CPSC's saferproducts.gov recalls publication โ the authoritative US government register of consumer-product recalls โ not a third party's re-keyed or paraphrased copy.
- It is fully structured. Each recall is broken out into discrete arrays for
products,productTypes,hazards,remedies,manufacturers,injuries, andconsumerContact, plus stable identifiers, so you can route, filter, and dedupe without scraping or parsing free text yourself. - It is filterable. Pass a
recallDateStart/recallDateEndwindow and an optionalkeywordto pull exactly the slice you need โ a date range for a back-load, a brand name for ongoing brand monitoring, or a hazard term like "lithium" or "tip-over." - It is pay-per-result. At $0.10 per recall record there is no subscription, no seat licensing, and no annual minimum. A one-time historical pull and a daily five-record monitor cost the same per record.
- It is schedulable. Run it on Apify's scheduler every day or every hour and feed new recalls straight into Slack, a webhook, a warehouse, or your own compliance system.
- It is portable. Output is plain JSON/CSV/Excel via the Apify dataset API, so it drops into any stack โ Python, JavaScript, a no-code automation, or a BI tool โ without a vendor SDK.
What you get
Each item in the dataset is one CPSC recall, with these real fields:
| Field | Description |
|---|---|
recallId | CPSC's internal numeric identifier for the recall โ a stable primary key for deduping and joining. |
recallNumber | The published CPSC recall number (e.g. "26565"), the human-facing reference used in CPSC press releases. |
recallDate | ISO datetime the recall was issued (e.g. "2026-06-18T00:00:00"). |
title | The full official recall headline, including product, hazard, and importer/firm. |
description | The CPSC's product description โ what the item is, affected model/serial/UPC ranges, and identifying details. |
url | Canonical cpsc.gov recall page for the record, for citation and human follow-up. |
products | Array of the specific products covered by the recall. |
productTypes | Array of CPSC product-type/category labels (may be empty for some records). |
hazards | Array describing the hazard(s) that prompted the recall (fire, burn, fall, laceration, lead, choking, etc.). |
remedies | Array of the remedy offered to consumers (refund, repair, replacement, stop-use instructions). |
manufacturers | Array of the manufacturing/importing firms named in the recall. |
injuries | Array of injury/incident statements as published by CPSC (reported incidents, injuries, or none reported). |
consumerContact | The official consumer-contact block โ how affected owners should reach the firm. |
lastPublishDate | When the recall record was last published/updated by CPSC, so you can detect amendments. |
Because the structured arrays are separated from the free-text title and description, you can build a hazard taxonomy, filter by manufacturer, flag any recall with a non-empty injuries array, or join records across runs on recallId โ without re-parsing the headline.
Use cases
- Product-liability counsel. Build a defensible, timestamped record of recalls touching a client's products, competitors, or supply chain, with the official
urlfor every citation andinjuriestext preserved verbatim. - Retail & e-commerce safety teams. Cross-reference incoming recalls against your active SKU catalog so you can pull affected listings, halt fulfillment, and notify customers before the recall hits the news.
- Insurers & risk/actuarial teams. Track recall frequency and hazard mix by product category to inform product-liability underwriting, reserves, and claims triage.
- Compliance & regulatory affairs. Maintain an audit-ready feed of recalls in your operating categories, with
lastPublishDateto catch amendments andconsumerContactto verify firm-side handling. - Consumer-safety researchers & academics. Assemble multi-year recall datasets โ by hazard, product type, or manufacturer โ for trend analysis without manually clicking through hundreds of pages.
- Journalists & investigative reporters. Monitor by keyword (a brand, a material, a hazard) and get the official record, description, and source URL in seconds for fast, accurate reporting.
- Brand & marketplace monitoring. Watch for your own brand, your private-label suppliers, or a competitor appearing in a recall, and route an alert the moment a matching record publishes.
- No-code automation builders. Wire the dataset into Make, Zapier, or a webhook to push new recalls into Slack, email, or a Notion/Airtable safety log.
Sample output
{"recallId":10826,"recallNumber":"26565","recallDate":"2026-06-18T00:00:00","title":"Arizer Solo III Portable Vaporizers Recalled Due to Fire and Burn Hazards; Risk of Serious Injury or Death; Imported by 7111495 Canada","description":"This recall involves the Arizer Solo III Intergalactic (Black), a portable electronic vaporizer powered by an internal lithium-ion battery. The unit features a rigid anodized aluminum housing. It includes a front-facing digital display for temperature and device settings, with a stainless steel heating chamber and removable glass components. The model number \"C0001-NB 130-LCUS\" is on a barcode sticker on the packaging. UPC 628078802274 is printed on the product packaging.","url":"https://www.cpsc.gov/Recalls/2026/Arizer-Solo-III-Portable-Vaporizers-Recalled-Due-to-Fire-and-Burn-Hazards-Risk-of-Serious-Injury-or-Death-Imported-by-7111495-Canada","products":["Arizer Solo III portable electronic vaporizers (Intergalactic/Black color only)"],"productTypes":[""],"hazards":["The internal lithium-ion battery can overheat, posing fire and burn hazards and a risk of serious injury or death."],"remedies":["Consumers should immediately stop using the recalled vaporizers and contact the firm for a remedy."],"manufacturers":["7111495 Canada"],"injuries":["No injuries reported."],"consumerContact":"Contact the firm by phone or through its website for instructions on the available remedy.","lastPublishDate":"2026-06-18T00:00:00"}
Note: CPSC's source text is free-form, so some fields (for example
productTypes) can be empty and some descriptions include raw model/serial fragments exactly as CPSC published them. The actor preserves the official text faithfully rather than rewriting it.
Input parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
recallDateStart | string | No | 2020-01-01 | Earliest recall date to include, as YYYY-MM-DD. |
recallDateEnd | string | No | โ | Latest recall date to include, as YYYY-MM-DD. Leave blank for "up to today." |
keyword | string | No | โ | Filter recalls whose title or description contains this term (e.g. a brand, material, or hazard). |
maxResults | integer | No | 2000 | Maximum number of recall records to return in the run. |
All parameters are optional. With no input, the actor returns recalls from the default start date up to the latest published, capped at maxResults.
How to use it
Python (apify-client)
from apify_client import ApifyClientclient = ApifyClient("<YOUR_APIFY_TOKEN>")run_input ={"recallDateStart":"2026-01-01","recallDateEnd":"2026-06-25","keyword":"lithium","maxResults":500,}run = client.actor("YOUR_USERNAME/cpsc-product-recalls").call(run_input=run_input)for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item["recallNumber"],"-", item["title"])
cURL (run-sync-get-dataset-items)
curl-X POST "https://api.apify.com/v2/acts/YOUR_USERNAME~cpsc-product-recalls/run-sync-get-dataset-items?token=<YOUR_APIFY_TOKEN>"\-H"Content-Type: application/json"\-d'{"recallDateStart": "2026-01-01","recallDateEnd": "2026-06-25","keyword": "lithium","maxResults": 500}'
The run-sync-get-dataset-items endpoint runs the actor and returns the dataset items in the same HTTP response โ ideal for quick pulls and webhook-driven automations.
Pricing
This actor uses pay-per-result pricing: $0.10 per recall record returned to your dataset. You pay for the records you actually get โ nothing else. No subscription, no seats, no monthly minimum.
Worked examples:
| What you pull | Records | Cost |
|---|---|---|
| A single day's new recalls | 5 | $0.50 |
| A keyword-filtered brand watch | 30 | $3.00 |
| A quarter of recalls in your categories | 120 | $12.00 |
| A focused historical back-load | 300 | $30.00 |
| A large multi-year research dataset | 2,000 | $200.00 |
For example, a 300-recall historical pull costs 300 ร $0.10 = $30.00. Use maxResults to cap spend precisely, and use a tight recallDateStart/recallDateEnd window on scheduled runs so you only pay for genuinely new records.
How this compares
| This actor | Stericycle / commercial recall-monitoring | UL & enterprise compliance platforms | Manual saferproducts.gov browsing | |
|---|---|---|---|---|
| Pricing | $0.10 per record, pay-per-use | Annual contract / subscription | Enterprise license, per-seat | Free, but labor-intensive |
| Source | Official CPSC / saferproducts.gov | Aggregated, often multi-source | Aggregated + advisory layer | Official, one page at a time |
| Output | Structured JSON/CSV/Excel | Dashboard / report | Dashboard / portal | Unstructured web pages |
| Automation | API + scheduler + webhooks | Vendor-defined | Vendor-defined | None |
| Time to integrate | Minutes | Procurement cycle | Procurement cycle | Manual every time |
| Minimum commitment | None | Typically annual | Typically annual | None |
Commercial recall-monitoring and enterprise compliance platforms add advisory services, multi-agency coverage, and workflow tooling โ but they come with procurement cycles, annual commitments, and per-seat pricing. Manual browsing of saferproducts.gov is free but doesn't scale. This actor sits in between: the same official CPSC data, delivered structured and on demand, for a per-record price that scales from a five-record daily watch to a multi-year back-load.
FAQ
How fresh is the data? The actor reads the CPSC's live recalls publication at run time, so a scheduled run picks up recalls as soon as they appear in the official feed. Schedule it daily (or hourly) to catch new recalls quickly.
How far back does the recall history go?
You control the window with recallDateStart / recallDateEnd. The default start is 2020-01-01, but you can set an earlier start to pull older recalls, subject to what CPSC publishes in its recalls feed and your maxResults cap.
Can I filter by hazard or brand?
Yes. Use the keyword parameter to match a term in the recall title or description โ a brand name, a material such as "lithium," or a hazard such as "tip-over" or "burn." For more granular filtering, pull a date range and filter the structured hazards, manufacturers, or productTypes arrays in your own code.
Is injury data included?
Yes. Each record includes an injuries array carrying CPSC's published injury/incident statement (for example reported incidents and injuries, or "no injuries reported"), preserved as CPSC wrote it.
Is the source text cleaned or rewritten?
No. The actor faithfully preserves CPSC's official text. Some fields may be empty (for example productTypes), and some descriptions include raw model/serial/UPC fragments exactly as published. Use recallId to dedupe and the structured arrays for filtering.
Can I run it on a schedule and get only new recalls?
Yes. Run it on Apify's scheduler with a rolling date window (e.g. the last 7 days) and dedupe against recallId in your destination so you only ingest records you haven't seen.
What output formats are supported? Results land in an Apify dataset, exportable as JSON, CSV, or Excel via the dataset API or the run-sync endpoint shown above.
Is there a cap on how many recalls I can pull?
The per-run cap is controlled by maxResults (default 2,000). For larger back-loads, split the work into multiple date-windowed runs.
Schema stability & versioning
The output fields listed in What you get form the stable contract for this actor: recallId, recallNumber, recallDate, title, description, url, products, productTypes, hazards, remedies, manufacturers, injuries, consumerContact, and lastPublishDate. Existing fields will not be renamed or removed without a version bump and changelog note. New fields may be added over time as CPSC exposes more structure; additive changes are non-breaking, so build your integration to ignore unknown fields. Because CPSC's underlying text is free-form, treat array fields as variable-length (including possibly empty) and always key your dedupe/joins on recallId.
Compliance & legal
This actor returns public information published by the U.S. Consumer Product Safety Commission via saferproducts.gov / cpsc.gov. The data is provided for informational purposes to support safety, compliance, research, and reporting workflows. It is not legal advice. CPSC is the authoritative source: for any action with legal, regulatory, or safety consequences, verify against the official recall page (the url field) and the CPSC directly. NexGenData is an independent publisher and is not affiliated with, endorsed by, or sponsored by the CPSC or any government agency. Use of this actor is subject to Apify's terms; users are responsible for ensuring their use of recall data complies with applicable laws and the source's terms.
Related actors
- FDA Orange Book Drug Patents
- Openfda Drug Search
- FDA Recall Monitor
- Clinical Trials Tracker
- NPI Healthcare Provider Leads
If recall and safety data is part of your workflow, these NexGenData actors pair well:
- FDA Recalls Tracker โ structured FDA enforcement and recall data for food, drugs, devices, and cosmetics.
- NHTSA Recalls Tracker โ official US vehicle and equipment recalls and safety campaigns.
- Environmental & ESG MCP โ environmental, sustainability, and ESG signals for risk and compliance teams.
Combine CPSC consumer-product recalls with FDA and NHTSA feeds for full-spectrum US recall coverage across consumer goods, regulated products, and vehicles.
