# US food recalls for undeclared allergens, report_date 2025-10-01 to 2026-09-30 (openFDA food enforcement) Source: openFDA food enforcement, `api.fda.gov/food/enforcement.json`, no key. Observation only; public sources only; no contact with anyone. ## 1. Source totals and records read (D1) One date range was queried: `report_date:[20251001 TO 20260930]`, all classifications. The skip limit was never reached, so the range was not split. | Pull | Date range | Total reported by source (`meta.results.total`) | Pages read (limit 1000) | Records read | Read = total | |---|---|---|---|---|---| | pull 1 (Date Thu, 05 Nov 2026 01:38:07 GMT) | 20251001-20260930 | 1389 | skip 0 → 1000, skip 1000 → 389 | 1389 | yes | | pull 2 (Date Fri, 06 Nov 2026 02:02:31 GMT) | 20251001-20260930 | 1389 | skip 0 → 1000, skip 1000 → 389 | 1389 | yes | Records read: 1389 in pull 1 (total 1389, equal to the sum of the pages, excerpts in section 8). Kept as undeclared-allergen recalls: **429** (pull 1), **429** (pull 2). The remaining 960 records (pull 1) were read and dropped by the rule below. Every recall_number in the source was unique. ## 2. Rule used to decide what is an undeclared allergen Every `reason_for_recall` was read (all records, all three classes). A record is KEPT when its reason says an allergen is in the product but is not declared on the label, in any of these forms: the word "undeclared"; "not declared" / "does not declare" / "does not list" / "does not include" / "does not specify" (ingredient list or Contains statement); "missing" or "omitted" from the Contains / allergen statement; "not listed" or "not mentioned in the contains statement"; cross-contact ("may contain undeclared", "cross-contact"). The allergen words in the reason decide the allergens cell: milk, egg, fish (incl. named species such as salmon, tuna, anchovy, pollock), shellfish (shrimp, crab, lobster, crustacean), tree nuts (almond, walnut, pecan, cashew, pistachio, hazelnut, pine nut, "tree nut"), peanuts, wheat, soybeans (soy, soy lecithin), sesame. Sulfites / sulfur dioxide are not one of the nine majors and are classed `other`. A record naming several allergens is counted once for each, joined with `;` in this order: milk;egg;fish;shellfish;tree nuts;peanuts;wheat;soybeans;sesame;other. DROPPED: undeclared colors (FD&C Yellow 5/6, Red 40, Blue 1), drugs (sildenafil, tadalafil), sweeteners (cyclamates, aspartame), caffeine, quinine, STTP, sugar and other non-allergens; allergens named only as the product or a contamination carrier (e.g. Salmonella in milk powder, Listeria in cheese, un-eviscerated fish); foreign objects; pure label-claim or nutrition-panel errors. Judgment calls (hand-checked): `H-0545-2026` (coconut water, ingredient list lacks added sugar) dropped; `H-0914-2026` (sesame seeds labeled as curry powder, no undeclared allergen stated), `H-0071-2026` (conflicting soy statements), `H-0911-2026` (Pista → Pistachio nomenclature) dropped; `H-0650/0651/0652-2026` (soy lecithin in ingredients but soy not in the Contains statement) and `H-0631-2026` (tree nut type not specified) kept, matching the many "Contains statement does not declare X" records. Where the reason names a product (Frozen Flounder, Shrimp, "Mustard" sauce) rather than an undeclared allergen the product word is not counted; the `Peanuts & Eggs` record (`omitted peanuts`; eggs listed but not present) counts peanuts only. ## 3. Counts by allergen x classification (from the pull 2 CSV: 429 records) | Allergen | Class I | Class II | Class III | Total | |---|---|---|---|---| | milk | 42 | 83 | 0 | 125 | | egg | 13 | 12 | 0 | 25 | | fish | 8 | 24 | 29 | 61 | | shellfish | 5 | 5 | 13 | 23 | | tree nuts | 39 | 86 | 13 | 138 | | peanuts | 11 | 19 | 0 | 30 | | wheat | 17 | 25 | 3 | 45 | | soybeans | 15 | 50 | 2 | 67 | | sesame | 15 | 14 | 3 | 32 | | other | 2 | 10 | 1 | 13 | | allergen mentions (a record counts once per allergen) | 167 | 328 | 64 | 559 | | distinct kept records | 124 | 241 | 64 | 429 | ## 4. Counts by month of report_date (kept records) | Month | Class I | Class II | Class III | Records | |---|---|---|---|---| | 2025-10 | 15 | 22 | 2 | 39 | | 2025-11 | 13 | 6 | 0 | 19 | | 2025-12 | 4 | 11 | 2 | 17 | | 2026-01 | 11 | 6 | 1 | 18 | | 2026-02 | 12 | 14 | 2 | 28 | | 2026-03 | 11 | 7 | 0 | 18 | | 2026-04 | 4 | 19 | 0 | 23 | | 2026-05 | 1 | 52 | 0 | 53 | | 2026-06 | 9 | 73 | 54 | 136 | | 2026-07 | 30 | 10 | 0 | 40 | | 2026-08 | 5 | 8 | 0 | 13 | | 2026-09 | 9 | 13 | 3 | 25 | | total | 124 | 241 | 64 | 429 | ## 5. Firm ranking (exact `recalling_firm` string; 170 firms; records, distinct report months) | # | recalling_firm | Records | Months | |---|---|---|---| | 1 | Albertsons Companies LLC | 121 | 1 | | 2 | Silver Moon LP dba Loard's Ice Cream | 45 | 1 | | 3 | D'Dioses Fruit Pops, Inc. | 16 | 1 | | 4 | George J Howe Company, Inc. | 6 | 1 | | 5 | Wegmans Food Markets, Inc. | 6 | 1 | | 6 | Adams Extract & Spice LLC | 5 | 1 | | 7 | Carrot Top Kitchens LLC | 5 | 1 | | 8 | Egress Capital Partners Inc. | 5 | 1 | | 9 | Karison Foods & Snacks, Inc. | 5 | 1 | | 10 | Extract Labs, Inc. | 4 | 1 | | 11 | New Spirit Naturals Inc. | 4 | 1 | | 12 | Prince Bakery Inc | 4 | 1 | | 13 | Wawa Beverage Company | 4 | 1 | | 14 | B.C. Williams Bakery Service, Inc | 3 | 1 | | 15 | Boichik Bagels, Inc. | 3 | 1 | | 16 | Byron White Formulas, Inc. | 3 | 1 | | 17 | House Of Flavors, Inc. | 3 | 2 | | 18 | Lidl US TRADING | 3 | 2 | | 19 | MIN JIANG FOOD STORE INC DBA KOI KOI TRADING | 3 | 1 | | 20 | Marquez Brothers International, Inc. | 3 | 1 | | 21 | Ukrop's Homestyle Foods, LLC | 3 | 1 | | 22 | WFM Purchasing, LP | 3 | 3 | | 23 | Zarlengo Italian Ice | 3 | 1 | | 24 | Beacon Promotions Inc | 2 | 1 | | 25 | CNC Noodle Corporation | 2 | 1 | | 26 | Cocos Wholesale and Imports, LLC | 2 | 1 | | 27 | Costco Wholesale Corporation | 2 | 2 | | 28 | Distribuidora de Alimentos Sendero LLC | 2 | 1 | | 29 | Doan's Dessert And Coffee | 2 | 1 | | 30 | Elegant Foods, LLC | 2 | 1 | | 31 | Eunha Fisheries Co., LTD | 2 | 1 | | 32 | Fayus Inc. | 2 | 2 | | 33 | Gina Marie Bakery LLC | 2 | 1 | | 34 | Gooder Foods, Inc. | 2 | 1 | | 35 | Harris Teeter | 2 | 1 | | 36 | Herbs Forever | 2 | 1 | | 37 | Juniper Granola, LLC | 2 | 1 | | 38 | KHONG GUAN (HQ) | 2 | 1 | | 39 | Prime Food Processing LLC. | 2 | 1 | | 40 | Severn Peanut Company LLC | 2 | 1 | | 41 | Silvestri Sweets Inc dba Carousel Candies | 2 | 1 | | 42 | Teasdale Foods, Inc. | 2 | 1 | | 43 | The Maros Group, LLC | 2 | 1 | | 44 | Weaver Nut Company, Inc | 2 | 1 | | 45 | Zingerman's Coffee Company | 2 | 1 | | 46 | 529 COMMERCE, LLC | 1 | 1 | | 47 | ASK Foods Inc | 1 | 1 | | 48 | ASUKAR FOODS CORP | 1 | 1 | | 49 | Abdallah Incorporated | 1 | 1 | | 50 | Africando Foods LLC | 1 | 1 | | 51 | Anthony's BBQ | 1 | 1 | | 52 | Avion Pharmaceuticals, LLC | 1 | 1 | | 53 | Azuma Foods International Inc USA | 1 | 1 | | 54 | BEF Foods, Inc | 1 | 1 | | 55 | BHARAT BAZAR | 1 | 1 | | 56 | Bader Enterprises, Inc. | 1 | 1 | | 57 | Bakkavor | 1 | 1 | | 58 | Bazzini LLC | 1 | 1 | | 59 | Bear Stewart Co | 1 | 1 | | 60 | Best Friends Bakery, LLC | 1 | 1 | | 61 | Big Way Ca Inc | 1 | 1 | | 62 | Blank Slate Creamery Production | 1 | 1 | | 63 | Blonde Beard's | 1 | 1 | | 64 | Blue Oven Bakery, Inc. | 1 | 1 | | 65 | Blueroot Health, Inc. | 1 | 1 | | 66 | Booey's Gourmet LLC | 1 | 1 | | 67 | CERELES EN GENERAL SAS | 1 | 1 | | 68 | Cacao Art | 1 | 1 | | 69 | Chocolate Bar Holdings LLC | 1 | 1 | | 70 | DEMERS FOOD GROUP LLC | 1 | 1 | | 71 | Disaronno Ingredients S.p.a. | 1 | 1 | | 72 | Dough-To-Go Inc | 1 | 1 | | 73 | Dreamland Inc | 1 | 1 | | 74 | Dreyer's Grand Ice Cream, Inc. | 1 | 1 | | 75 | E & S Grocery & Bakery Inc. | 1 | 1 | | 76 | EXOTIQUE FOODS CANADA | 1 | 1 | | 77 | El Rojo Wholesale | 1 | 1 | | 78 | Eli's Cheesecake Company | 1 | 1 | | 79 | F&S Fresh Foods, Inc. | 1 | 1 | | 80 | FRITO-LAY NORTH AMERICA, INC. | 1 | 1 | | 81 | Ferrero USA | 1 | 1 | | 82 | Ferris Coffee and Nut Company, Inc. | 1 | 1 | | 83 | Fly By Jing Inc. | 1 | 1 | | 84 | Fran's Chocolates Ltd | 1 | 1 | | 85 | French Broad Chocolate Factory | 1 | 1 | | 86 | Fry Pie Factory LLC | 1 | 1 | | 87 | GELLERT GLOBAL GROUP | 1 | 1 | | 88 | Gansu Zhaofeng Agricultural Development Co., Ltd. | 1 | 1 | | 89 | Genepro Protein, Inc. | 1 | 1 | | 90 | Gregory's Foods, Inc | 1 | 1 | | 91 | H & U Inc. dba Sun Noodle | 1 | 1 | | 92 | HANA GROUP | 1 | 1 | | 93 | HEYTEA USA INC | 1 | 1 | | 94 | Herbal Creations USA | 1 | 1 | | 95 | Hometown Food Company | 1 | 1 | | 96 | ISLAND CRAB CORPORATION | 1 | 1 | | 97 | Imu-Tek Animal Health, Incorporated | 1 | 1 | | 98 | J2C Hawaii LLC | 1 | 1 | | 99 | JINA F&C | 1 | 1 | | 100 | Jaime's Foods ATX, LLC | 1 | 1 | | 101 | Jeni's Splendid Ice Creams LLC | 1 | 1 | | 102 | Jody's Inc. | 1 | 1 | | 103 | Karns Prime And Fancy Foods | 1 | 1 | | 104 | Kerry, Inc | 1 | 1 | | 105 | Kettle Cuisine, LLC | 1 | 1 | | 106 | Kradjian Importing Company, Inc. | 1 | 1 | | 107 | L-Nutra Inc | 1 | 1 | | 108 | Lee K of NY Inc. | 1 | 1 | | 109 | Lehi Valley Trading Company, Inc | 1 | 1 | | 110 | Lil Turtles LLC | 1 | 1 | | 111 | Lund Food Holdings Inc | 1 | 1 | | 112 | M.G. Foods, Inc. | 1 | 1 | | 113 | Man Fon, Inc. | 1 | 1 | | 114 | Marina Del Rey Foods inc. | 1 | 1 | | 115 | Market of Choice Inc | 1 | 1 | | 116 | Mellish Island Corp | 1 | 1 | | 117 | Mondelez Global Llc | 1 | 1 | | 118 | NEW WAY IMPORT INC | 1 | 1 | | 119 | NRS Enterprises, Inc. dba Sunflour Bakery | 1 | 1 | | 120 | Nats Nuts LLC | 1 | 1 | | 121 | New York Mutual Trading, Inc. | 1 | 1 | | 122 | Now Foods | 1 | 1 | | 123 | Nutrient Foods, LLC | 1 | 1 | | 124 | Nutrisystem Inc | 1 | 1 | | 125 | Nuts.com Inc. | 1 | 1 | | 126 | ONE FROZEN, LLC | 1 | 1 | | 127 | Ocinet, Inc. | 1 | 1 | | 128 | One Roof LLC | 1 | 1 | | 129 | Oven Artisans llc | 1 | 1 | | 130 | Pacific Seafood - Portland, LLC | 1 | 1 | | 131 | Pack'n Fresh LLC | 1 | 1 | | 132 | Perfect Pasta, Incorporated | 1 | 1 | | 133 | Plant Based Innovations, LLC | 1 | 1 | | 134 | Plenus Group Inc. | 1 | 1 | | 135 | Prospector Popcorn, LLC | 1 | 1 | | 136 | Publix Super Markets, Inc. | 1 | 1 | | 137 | Pure Solutions, Inc. | 1 | 1 | | 138 | QUE RIKURA'S PRODUCTS, CORP | 1 | 1 | | 139 | Quality Dairy Farms Inc. | 1 | 1 | | 140 | ROLLING PIN BAKING COMPANY LLC | 1 | 1 | | 141 | Reser's Fine Foods, Inc. | 1 | 1 | | 142 | Rich Products Corp | 1 | 1 | | 143 | Riverence Provisions LLC | 1 | 1 | | 144 | Rong Shing Trading NY Inc | 1 | 1 | | 145 | SECOND NATURE BRAND | 1 | 1 | | 146 | SHEANDRO LLC | 1 | 1 | | 147 | Savannah Bee Company Inc. | 1 | 1 | | 148 | Savor Seasonings LLC | 1 | 1 | | 149 | Schreiber Foods Inc | 1 | 1 | | 150 | Seoul Trading, Inc. | 1 | 1 | | 151 | South Asian Food Inc. | 1 | 1 | | 152 | South Florida Food, LLC | 1 | 1 | | 153 | Specialty Bakers, LLC | 1 | 1 | | 154 | Stuffed Foods LLC | 1 | 1 | | 155 | TG FOODS INC | 1 | 1 | | 156 | Tai Foong USA Inc | 1 | 1 | | 157 | Tai Phat Wholesalers, LLC | 1 | 1 | | 158 | Target Corporation | 1 | 1 | | 159 | The Brownie Baker Inc. | 1 | 1 | | 160 | The James Skinner LLC | 1 | 1 | | 161 | Troemner Farm | 1 | 1 | | 162 | Turkana Food Inc. | 1 | 1 | | 163 | Twin Marquis, LLC | 1 | 1 | | 164 | VH FOODS INC | 1 | 1 | | 165 | Vitalabs, Inc. | 1 | 1 | | 166 | WE R NUTS | 1 | 1 | | 167 | Western Mixers Produce & Nuts, Inc. | 1 | 1 | | 168 | White Castle System | 1 | 1 | | 169 | Wilco Peanut Co | 1 | 1 | | 170 | Willy Pete's Chocolate Company LLC | 1 | 1 | ## 6. Repeat firms (recalls in three or more different months of report_date) 1 firm(s): - **WFM Purchasing, LP** — 3 records in 3 months: 2025-10: H-0002-2026; 2026-01: H-0403-2026; 2026-09: H-1395-2026 ## 7. Changes between the two CSV files (key column recall_number) no change. Pull 1 rows: 429; pull 2 rows: 429. ## 7b. Data files (Rule 25) - `allergen-recalls-pull1.csv`: SHA-256 `5fae351159878134f07856e39c65307b6f6d5c9f9377b83098502540d951f91c`, 52003 bytes, 429 rows excluding the header (columns: recall_number, recalling_firm, report_date, classification, allergens, reason_for_recall; report_date as YYYY-MM-DD, source shows YYYYMMDD). - `allergen-recalls-pull2.csv`: SHA-256 `5fae351159878134f07856e39c65307b6f6d5c9f9377b83098502540d951f91c`, 52003 bytes, 429 rows excluding the header (columns: recall_number, recalling_firm, report_date, classification, allergens, reason_for_recall; report_date as YYYY-MM-DD, source shows YYYYMMDD). ```sha256 5fae351159878134f07856e39c65307b6f6d5c9f9377b83098502540d951f91c allergen-recalls-pull1.csv 5fae351159878134f07856e39c65307b6f6d5c9f9377b83098502540d951f91c allergen-recalls-pull2.csv ``` ## 8. SOURCES / PROOF Every request (GET, no body). Source time = the response's HTTP `Date` header. Raw responses of each pull are saved on the box in `work_esc_e894/pull1/` and `pull2/` (`*.body`, `*.headers.json`, `meta.json`). ### Pull 1 - Request 1: `GET https://api.fda.gov/food/enforcement.json?search=report_date:[20251001+TO+20260930]&limit=1` — retrieved 2026-11-05T01:38:07Z UTC — HTTP 200 — response header `Date: Thu, 05 Nov 2026 01:38:07 GMT` (source time) — 1856 bytes - Request 2: `GET https://api.fda.gov/food/enforcement.json?search=report_date:[20251001+TO+20260930]&limit=1000&skip=0` — retrieved 2026-11-05T01:38:08Z UTC — HTTP 200 — response header `Date: Thu, 05 Nov 2026 01:38:08 GMT` (source time) — 1344781 bytes - Request 3: `GET https://api.fda.gov/food/enforcement.json?search=report_date:[20251001+TO+20260930]&limit=1000&skip=1000` — retrieved 2026-11-05T01:38:09Z UTC — HTTP 200 — response header `Date: Thu, 05 Nov 2026 01:38:10 GMT` (source time) — 515906 bytes Response `count` raw excerpt (`Date: Thu, 05 Nov 2026 01:38:07 GMT`): ```json { "meta": { "disclaimer": "Do not rely on openFDA to make decisions regarding medical care. While we make every effort to ensure that data is accurate, you should assume all results are unvalidated. We may limit or otherwise restrict your access to the API in line with our Terms of Service.", "terms": "https://open.fda.gov/terms/", "license": "https://open.fda.gov/license/", "last_updated": "2026-10-28", "results": { "skip": 0, "limit": 1, "total": 1389 } }, "results": [ ``` Response `page0` raw excerpt (`Date: Thu, 05 Nov 2026 01:38:08 GMT`): ```json { "meta": { "disclaimer": "Do not rely on openFDA to make decisions regarding medical care. While we make every effort to ensure that data is accurate, you should assume all results are unvalidated. We may limit or otherwise restrict your access to the API in line with our Terms of Service.", "terms": "https://open.fda.gov/terms/", "license": "https://open.fda.gov/license/", "last_updated": "2026-10-28", "results": { "skip": 0, "limit": 1000, "total": 1389 } }, "results": [ ``` …then, consecutively, the first record of the page (cut at the end of its reason_for_recall line): ```json { "status": "Terminated", "city": "Detroit", "state": "MI", "country": "United States", "classification": "Class II", "openfda": {}, "product_type": "Food", "event_id": "98506", "recalling_firm": "Uncle Ray's LLC", "address_1": "14245 Birwood St", "address_2": "N/A", "postal_code": "48238-2207", "voluntary_mandated": "Voluntary: Firm initiated", "initial_firm_notification": "Two or more of the following: Email, Fax, Letter, Press Release, Telephone, Visit", "distribution_pattern": "NC", "recall_number": "H-0552-2026", "product_description": "Lowes Foods sour cream and onion flavored potato chips, 8oz. bag, UPC 7 41643 05576 6, 9 retail units per case", "product_quantity": "2800 cases", "reason_for_recall": "Inaccurate nutritional data in Nutrition Facts including but not limited to, understated sodium content. Undeclared ingredients including but not limited to, monosodium glutamate.", ``` Response `page1` raw excerpt (`Date: Thu, 05 Nov 2026 01:38:10 GMT`): ```json { "meta": { "disclaimer": "Do not rely on openFDA to make decisions regarding medical care. While we make every effort to ensure that data is accurate, you should assume all results are unvalidated. We may limit or otherwise restrict your access to the API in line with our Terms of Service.", "terms": "https://open.fda.gov/terms/", "license": "https://open.fda.gov/license/", "last_updated": "2026-10-28", "results": { "skip": 1000, "limit": 1000, "total": 1389 } }, "results": [ ``` ### Pull 2 - Request 4: `GET https://api.fda.gov/food/enforcement.json?search=report_date:[20251001+TO+20260930]&limit=1` — retrieved 2026-11-06T02:02:30Z UTC — HTTP 200 — response header `Date: Fri, 06 Nov 2026 02:02:31 GMT` (source time) — 1856 bytes - Request 5: `GET https://api.fda.gov/food/enforcement.json?search=report_date:[20251001+TO+20260930]&limit=1000&skip=0` — retrieved 2026-11-06T02:02:31Z UTC — HTTP 200 — response header `Date: Fri, 06 Nov 2026 02:02:31 GMT` (source time) — 1344781 bytes - Request 6: `GET https://api.fda.gov/food/enforcement.json?search=report_date:[20251001+TO+20260930]&limit=1000&skip=1000` — retrieved 2026-11-06T02:02:33Z UTC — HTTP 200 — response header `Date: Fri, 06 Nov 2026 02:02:33 GMT` (source time) — 515906 bytes Response `count` raw excerpt (`Date: Fri, 06 Nov 2026 02:02:31 GMT`): ```json { "meta": { "disclaimer": "Do not rely on openFDA to make decisions regarding medical care. While we make every effort to ensure that data is accurate, you should assume all results are unvalidated. We may limit or otherwise restrict your access to the API in line with our Terms of Service.", "terms": "https://open.fda.gov/terms/", "license": "https://open.fda.gov/license/", "last_updated": "2026-10-28", "results": { "skip": 0, "limit": 1, "total": 1389 } }, "results": [ ``` Response `page0` raw excerpt (`Date: Fri, 06 Nov 2026 02:02:31 GMT`): ```json { "meta": { "disclaimer": "Do not rely on openFDA to make decisions regarding medical care. While we make every effort to ensure that data is accurate, you should assume all results are unvalidated. We may limit or otherwise restrict your access to the API in line with our Terms of Service.", "terms": "https://open.fda.gov/terms/", "license": "https://open.fda.gov/license/", "last_updated": "2026-10-28", "results": { "skip": 0, "limit": 1000, "total": 1389 } }, "results": [ ``` Response `page1` raw excerpt (`Date: Fri, 06 Nov 2026 02:02:33 GMT`): ```json { "meta": { "disclaimer": "Do not rely on openFDA to make decisions regarding medical care. While we make every effort to ensure that data is accurate, you should assume all results are unvalidated. We may limit or otherwise restrict your access to the API in line with our Terms of Service.", "terms": "https://open.fda.gov/terms/", "license": "https://open.fda.gov/license/", "last_updated": "2026-10-28", "results": { "skip": 1000, "limit": 1000, "total": 1389 } }, "results": [ ``` Observation only; public sources only; no contact with anyone. ## 9. ACCEPTANCE self-check 1. [x] Total reported for the one date range queried (1389, `meta.results.total` in the count and both page excerpts) equals the records read (1389 = 1000 + 389). 2. [x] Both CSV files have exactly the columns recall_number, recalling_firm, report_date, classification, allergens, reason_for_recall, one row per kept recall record. 3. [x] Counts by allergen x classification and by month are computed from the pull 2 CSV and agree with it. 4. [x] Every firm with recalls in three or more different months is listed with those months and recall numbers (section 6, from the pull 2 CSV). 5. [x] PULL 1 note recorded 2026-11-05T01:41:20Z UTC and PULL 2 note recorded 2026-11-06T02:02:35Z UTC (24 h or more apart, server times), with row count and SHA-256; pull 2 Date later than pull 1; change counts agree with both CSVs.