Open Food Facts Scraper
Pricing
from $3.00 / 1,000 results
Open Food Facts Scraper
Scrape Open Food Facts - 3M+ grocery products worldwide. Search by keyword, look up by EAN barcode, or browse by category. Returns nutrition facts, Nutri-Score, NOVA group, Eco-Score, ingredients, allergens, images, and more.
Pricing
from $3.00 / 1,000 results
Rating
0.0
(0)
Developer
Crawler Bros
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Extract food product data from Open Food Facts — the world's largest open food product database with 3 million+ products from 200+ countries. No API key, no login, no proxy required.
What can this scraper do?
- Search by keyword — find any food product by name, ingredient, or brand (e.g. "chocolate", "oat milk", "avocado")
- Browse by category — list products within a named food category (beverages, dairy, snacks, meats, and 25+ others)
- Lookup by EAN barcode — retrieve specific products using EAN-8 or EAN-13 barcodes
- Filter results — narrow down by brand, country, Nutri-Score grade, NOVA processing level, and boolean flags (must have image / ingredients / nutrition data)
Output Fields
Each product record contains:
| Field | Description |
|---|---|
productId | Unique product identifier (barcode) |
barcode | EAN-8 or EAN-13 barcode |
name | Product name (English preferred) |
brands | All brands (list) |
brand | Primary brand |
categories | Product categories (list) |
countries | Countries where sold (list) |
ingredients | Full ingredients text |
nutrimentEnergy | Energy per 100 g in kcal |
nutrimentFat | Fat per 100 g in g |
nutrimentSaturatedFat | Saturated fat per 100 g in g |
nutrimentCarbohydrates | Carbohydrates per 100 g in g |
nutrimentSugars | Sugars per 100 g in g |
nutrimentProteins | Proteins per 100 g in g |
nutrimentSalt | Salt per 100 g in g |
nutriscore | Nutri-Score grade (A–E) |
nutriscoreScore | Numeric Nutri-Score points (lower is healthier) |
novaGroup | NOVA food processing group (1=unprocessed, 4=ultra-processed) |
ecoscore | Eco-Score grade (A–E) |
ecoscoreScore | Numeric Eco-Score (0–100; higher is better) |
foodGroup | Food group classification (e.g. sweets, sweetened-beverages) |
additivesCount | Number of food additives detected |
ingredientsCount | Number of ingredients |
manufacturerUrl | Manufacturer's official product page URL (when available) |
scansCount | Number of times the barcode was scanned in the mobile apps (popularity) |
uniqueScansCount | Number of unique users who scanned the barcode |
nutrientLevels | Traffic-light levels (low/moderate/high) for fat, saturated fat, sugars, and salt |
veganStatus | vegan / non-vegan / maybe-vegan, from Open Food Facts' ingredient analysis |
vegetarianStatus | vegetarian / non-vegetarian / maybe-vegetarian |
palmOilStatus | palm-oil-free / palm-oil / may-contain-palm-oil |
traces | Allergens the product "may contain" (distinct from confirmed allergens) |
servingQuantity | Serving size in grams (numeric) |
allergens | Declared allergens (list) |
labels | Quality labels e.g. Organic, Fair Trade, Vegan (list) |
imageUrl | Front product image URL |
imageNutritionUrl | Nutrition label image URL |
imageIngredientsUrl | Ingredients label image URL |
productUrl | Open Food Facts product page URL |
sourceUrl | Source URL (same as productUrl) |
scrapedAt | ISO 8601 timestamp of scrape |
recordType | Always "product" |
productName | Alias of name |
genericName | Generic/common product name |
allBrands | Alias of brands (all brands as a list) |
quantity | Net quantity as sold (e.g. 500 g, 1 L) |
servingSize | Serving size text (e.g. 1 square (10 g)) |
packaging | Packaging materials/format (list) |
additives | Detected food additives (list of E-numbers/names) |
origins | Declared origin of ingredients |
manufacturingPlaces | Where the product is manufactured |
stores | Stores where the product is sold (list) |
language | Primary product language code |
nutritionGrade | Alias of nutriscore grade (A–E) |
ecoScore | Alias of ecoscore grade (A–E) |
imageFrontUrl | Front-of-pack image URL |
ingredientsText | Alias of ingredients |
completeness | Open Food Facts data-completeness score (0–1) |
Convenience flat nutrition fields (per 100 g, same values as the nutriment* fields) are also included when available: calories, fat, saturatedFat, carbohydrates, sugar, protein, salt, sodium, fiber.
Fields not available for a product are omitted from the output (no null values).
Input Options
| Field | Description |
|---|---|
mode | search, byCategory, or byBarcode |
searchQuery | Keyword to search (mode=search) |
barcodes | List of EAN barcodes (mode=byBarcode) |
categorySlug | Food category to browse (mode=byCategory) |
brand | Filter by brand name |
country | Filter by country of sale |
language | Preferred language for product name/ingredients |
hasIngredients | Only include products with ingredients text |
hasImage | Only include products with a product image |
hasNutrition | Only include products with nutrition data |
nutriscore | Filter by Nutri-Score grade (A–E) |
novaGroup | Filter by NOVA processing level (1–4) |
dietaryPreference | Only include products confirmed vegan, vegetarian, or palmOilFree |
maxItems | Maximum number of products to return (1–1000) |
Supported Categories
Beverages, Dairy Products, Breads, Cereals, Snacks, Confectioneries, Meats, Fish & Seafood, Fruits & Vegetables, Condiments, Oils & Fats, Frozen Foods, Baby Foods, Alcoholic Beverages, Water, Chocolates, Biscuits & Cakes, Breakfast Cereals, Yogurts, Cheeses, Ice Cream, Sodas, Fruit Juices, Coffees, Teas, Nuts, Sauces, Soups, Ready Meals, Plant-Based Foods.
Example Use Cases
- Nutrition research — collect nutrition data for a specific food category for analysis
- Allergen monitoring — find products that are gluten-free, vegan, or halal certified
- Brand product catalog — retrieve all products from a specific brand
- Barcode lookup API — look up product details from EAN barcodes in bulk
- Eco-Score analysis — find products with the best/worst environmental scores
- Country-specific products — compare products sold in different markets
FAQs
Do I need an API key? No. Open Food Facts is fully open and requires no authentication.
Is proxying required? No. The Open Food Facts API has no geographic restrictions and works from any IP.
How many products are available? Open Food Facts has over 3 million products from 200+ countries as of 2026.
What is the Nutri-Score? Nutri-Score is a 5-letter nutritional quality grade (A=best, E=worst) used on food packaging in many European countries.
What is the NOVA group? NOVA classifies foods by degree of processing: 1=unprocessed, 2=culinary ingredients, 3=processed, 4=ultra-processed.
What is the Eco-Score? The Eco-Score (A–E) measures the environmental impact of a food product, considering carbon footprint, packaging, biodiversity impact, and more.
Are all output fields always present?
No — only fields with actual data are included. For example, if a product has no registered allergens, the allergens field is omitted rather than set to null or empty.
What barcode formats are supported? EAN-8, EAN-13, and UPC-A barcodes (4–14 digits).
Data Source
All data is sourced from Open Food Facts, which is published under the Open Database License (ODbL).