Automated Regulatory Compliance for Packaging
FDA, EU, GHS, and pharmaceutical label requirements — validated automatically against your artwork before it reaches production. Catch compliance failures at preflight, not at recall.
AI Compliance — Invite-Only Alpha
FDA Nutrition Facts
21 CFR 101.9United States Food and Drug Administration requirements for nutrition labeling on food packaging.
What LintPDF Checks
| Check | Severity | Description |
|---|---|---|
| Nutrition Facts header font size | Error | Header must be in 13pt or larger Franklin Gothic Heavy or equivalent. |
| Serving size declaration | Error | Serving size and servings per container must be present and correctly formatted. |
| Nutrient ordering | Error | Nutrients must appear in the FDA-mandated order (calories, total fat, saturated fat, trans fat, etc.). |
| Daily value percentages | Warning | Percent Daily Value column must be present and right-aligned. |
| Font size minimums | Error | Body text minimum 8pt. Packages with < 40 sq in PDP may use 6pt minimum. |
| Hairline rules | Info | Horizontal rules between nutrient groups must meet minimum weight specifications. |
| Footnote presence | Warning | The '% Daily Value' footnote must be present on standard format labels. |
Example Finding
{
"inspection_id": "ai.fda.nutrient_order",
"severity": "error",
"message": "Nutrient 'Trans Fat' appears after 'Cholesterol' — FDA requires Trans Fat immediately after Saturated Fat",
"page": 1,
"source": "ai"
}EU Food Information
Regulation (EU) No 1169/2011European Union requirements for food information provided to consumers, including nutritional declarations and allergen labeling.
What LintPDF Checks
| Check | Severity | Description |
|---|---|---|
| x-height minimum | Error | Mandatory information must have an x-height of at least 1.2mm (0.9mm for packages < 80 cm²). |
| Allergen emphasis | Error | Allergens in ingredients list must be typographically distinguished (bold, underline, or CAPS). |
| Nutritional declaration order | Error | Must follow: energy, fat, saturates, carbohydrate, sugars, protein, salt. |
| Mandatory fields present | Error | Product name, ingredients, allergens, net quantity, date marking, storage conditions, origin (where required). |
| Energy units | Warning | Energy must be expressed in both kJ and kcal. |
| Per 100g/100ml declaration | Error | Nutritional values must be declared per 100g or per 100ml. |
Example Finding
{
"inspection_id": "ai.eu_fir.allergen_emphasis",
"severity": "error",
"message": "Allergen 'milk' in ingredients list is not typographically distinguished — EU 1169/2011 Article 21 requires emphasis",
"page": 1,
"source": "ai"
}GHS/CLP Chemical Labels
Regulation (EC) No 1272/2008Globally Harmonized System of Classification and Labelling of Chemicals, implemented in the EU as the CLP Regulation.
What LintPDF Checks
| Check | Severity | Description |
|---|---|---|
| Hazard pictogram presence | Error | All required GHS pictograms must be present based on product classification. |
| Pictogram minimum size | Error | Each pictogram must be at least 1/15th of the label area, minimum 1 cm². |
| Signal word | Error | 'Danger' or 'Warning' must be present and match the highest hazard classification. |
| H-statement validation | Error | All required Hazard statements must be present with correct codes and text. |
| P-statement validation | Warning | Precautionary statements must be present and appropriate for the classification. |
| Supplier identification | Warning | Name, address, and telephone number of the supplier must be present. |
| Product identifier | Error | Product name and chemical identifiers must be present on the label. |
Example Finding
{
"inspection_id": "ai.ghs.pictogram_size",
"severity": "error",
"message": "GHS07 (exclamation mark) pictogram area is 0.8 cm² — minimum required is 1 cm² per CLP Regulation",
"page": 1,
"source": "ai"
}Pharmaceutical Packaging
EU FMD (2011/62/EU) & National RequirementsPharmaceutical packaging requirements including serialization, Braille, patient information leaflets, and font compliance.
What LintPDF Checks
| Check | Severity | Description |
|---|---|---|
| Serialization area | Error | EU Falsified Medicines Directive requires 2D DataMatrix code area with adequate quiet zones. |
| Braille placeholder | Warning | Outer packaging must include Braille rendering of the medicine name (or placeholder area). |
| Font size compliance | Error | Patient information must meet minimum font size requirements per national guidelines. |
| Leaflet structure | Info | Patient information leaflet should follow the standard QRD template section ordering. |
| Tamper evidence indicator | Warning | Anti-tampering device area must be identifiable on the packaging artwork. |
| Batch and expiry placement | Error | Batch number and expiry date must be present and positioned per requirements. |
Example Finding
{
"inspection_id": "ai.pharma.serialization_area",
"severity": "error",
"message": "2D DataMatrix serialization area not detected — EU FMD requires serialization on outer packaging",
"page": 1,
"source": "ai"
}