Agriculture Reference tableQC clean AI-training-safe

EU Food & Feed Safety Alerts (RASFF)

Every EU food, feed and food-contact-material safety alert from 1979 to 2020 in one clean table - the cross-border early-warning record importers, QA teams and food-safety researchers want but can't get from the portal. The live RASFF Window is presentation-only with no reuse licence; the Commission (DG SANTE) instead published the full pre-2021 back-catalogue as an OPEN CC-BY-4.0 distribution on data.europa.eu (the 'restored_rasff' dataset). One tidy row per notification-line: reference and date, notifying and origin country, notification type (Food/Feed/Food-contact) and class, the notification basis, product / subject / product category, hazard category + substance + full hazard text, any analytical result, the action taken and the market-distribution status. Keyed by (reference, line_no). No complainant or company-contact personal data. CC-BY-4.0 ((c) European Union).

76K
rows
18
columns
8.1 MB
download
Source
RASFF
Licence
Redistributable open data
Quality
QC clean · 0 failures
Format
Apache Parquet + dictionary

Safe to train on

Built only from a named, redistributable official source under a documented open licence - not scraped web data. No copyright grey zone, no personal data. Ships machine-readable Croissant metadata (ML Commons - loads in Hugging Face / Kaggle / Google), an AI training-licence manifest documenting source, licence and provenance for your model's data governance, and a machine-readable data dictionary (drop it into an agent / RAG prompt so the model knows every column) - all inspectable before you buy.

What's included

  • Every EU food/feed/food-contact safety notification 1979-2020 - ~76k lines, one clean table
  • Notifying & origin country, notification type & class, notification basis
  • Hazard category + substance + full hazard text; product, subject & product category
  • Action taken and market-distribution status; analytical result where measured
  • 42 product categories, 29 hazard categories - filter, aggregate or join by country/product
  • Built ONLY from the OPEN restored_rasff CC-BY-4.0 distribution (data.europa.eu), NOT the portal
  • No complainant/company-contact personal data (public extract; no_pii enforced)
  • CC-BY-4.0 - commercial reuse & redistribution with attribution
  • Source: (c) European Union, RASFF (Rapid Alert System for Food and Feed), DG SANTE / data.europa.eu

Schema

ColumnTypeDescriptionFilledDistinct
reference str RASFF notification reference (e.g. 1979.01) 100.0% 61,313
line_no int 0-based line index within a notification (with reference, the primary key) 100.0% 33
notification_date str Notification date (YYYY-MM-DD) 100.0% 5,865
notifying_country str Country/authority that filed the notification 100.0% 36
origin_country str Country of origin of the product 100.0% 189
notification_type str Food, Feed or Food Contact Material 100.0% 3
notification_class str alert / information / border rejection / for attention 100.0% 5
notification_basis str How the issue was found (official control, border control) 94.5% 11
subject str Free-text notification subject 100.0% 56,120
product str Product name 100.0% 22,993
product_category str RASFF product category 100.0% 42
hazard_category str RASFF hazard category 100.0% 29
hazard_substance str Substance / finding 100.0% 1,308
hazard_full str Full hazard description text 100.0% 2,210
action_taken str Action taken (recall/withdrawal, import not authorised, destruction) 93.4% 48
distribution_status str Market-distribution status of the product 88.9% 16
result str Analytical result value (where measured) 76.4% 24,402
result_unit str Unit of the analytical result 68.5% 55

Sample & preview

Every purchase ships as Apache Parquet with a data dictionary and the full QC report. A free sample (first rows + schema) is downloadable here - confirm fit before you buy. Source: RASFF (redistributable open data; attribution passes through - see our Licence).

Don't trust screenshots - drop the sample into your notebook right now.

import pandas as pd
df = pd.read_parquet("eu-food-safety-alerts_sample.parquet")
df.info()   # typed columns, gap-aware, ready to join
⬇ Download free Parquet sample or CSV for Excel

Related datasets

Agriculture

Agri Positioning Matrix (crop condition × COT)

Physical crop reality vs paper positioning: USDA Good+Excellent condition momentum joined to CFTC speculative-positioning z-score per crop, weekly, across 8 crops - corn, soybeans, wheat, cotton, rice, oats (all with both condition and the dominant CFTC futures market) plus barley and sorghum (condition only, no listed futures). Crops deteriorating while funds are net-short flags short-squeeze setups in food commodities.

16K rows· 9 zones· 1987-2026 (weekly)
19 View
Agriculture

EU CAP Subsidy Flows

Common Agricultural Policy expenditure, cleaned to analysis-ready Parquet: EUR paid per EU member state x CAP instrument (direct payments, market measures, rural development) x year, 2003-2022. Fully aggregated (member-state level, no beneficiary individuals) - the GDPR-safe view of where CAP money goes. Source: DG AGRI 'Financing the CAP' indicators.

CAPFLOWS· 6K rows· 28 zones· 2003-2022 (annual)
29 View
Agriculture

European Agricultural Output Prices

The real output-price index of Europe's major crops - cereals, wheat, barley, grain maize, industrial crops and oilseeds - deflated to 2020=100, per country, annual. Cleaned from Eurostat's agricultural price statistics into one tidy panel: the farm-gate price signal, in real terms, that agri-commodity traders, food manufacturers and ag-lenders track. Distinct from our global crop-production volumes - this is PRICE, not tonnage.

Eurostat· 884 rows· 26 zones· 2020-2025 (annual)
Free View