Recipe Scraper API – URL to Structured Data
Pricing
from $3.00 / 1,000 successful recipe extractions
Recipe Scraper API – URL to Structured Data
Recipe scraper API for recipe sites and food blogs. Turn recipe URLs into clean structured data with titles, ingredients, instructions, prep and cook times, servings, nutrition, and source URLs. Handles JavaScript-heavy pages and anti-bot challenges for apps, data pipelines, and AI agents.
Pricing
from $3.00 / 1,000 successful recipe extractions
Rating
0.0
(0)
Developer
Tiger Claw
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Recipe Scraper API
Recipe scraper API for extracting structured recipe data from public recipe URLs, recipe websites, and food blogs.
Extract a recipe from a URL and receive normalized ingredients, instructions, cooking times, servings, cuisine, category, nutrition, and other available recipe fields.
The Actor automatically adapts to different website structures, JavaScript-rendered pages, and supported access protections. No browser configuration, proxy setup, or scraping knowledge is required.
What does Recipe Scraper API do?
Recipe Scraper API extracts structured recipe information from recipe websites, publishers, and food blogs.
For each unique URL, the Actor selects appropriate fetching and extraction methods automatically and returns one Dataset record.
It is designed for:
- Recipe and meal-planning applications
- Recipe database ingestion
- Shopping-list and ingredient tools
- Nutrition and food-data pipelines
- AI agents that need structured recipe information
- Bulk recipe processing and research
Why use this Actor?
One interface for many recipe websites
Recipe websites use different layouts, structured-data formats, JavaScript frameworks, and access protections. This Actor hides that complexity behind one consistent input and output format.
Automatic fallback
The Actor starts with efficient HTTP fetching, then automatically uses browser rendering and managed access handling only when needed. You do not need to choose a browser, configure a proxy, or enable a special scraping mode.
Structured output
Recipes are returned in predictable fields suitable for applications, databases, automation workflows, APIs, and AI agents.
One result per URL
Each unique submitted URL produces one Dataset record. Failed URLs are not silently discarded: they return a structured error that makes bulk processing easy to reconcile programmatically.
Input
Provide up to 100 direct public recipe URLs:
{"urls": ["https://www.bbcgoodfood.com/recipes/easy-pancakes","https://www.750g.com/quiche-lorraine-r100077.htm"]}
Output
The Actor creates one Dataset item for every unique input URL.
Successful recipe
The detailed recipe is contained in recipe. Top-level summary fields make
the Apify Dataset table easy to scan and filter.
{"success": true,"fetch_method": "basic_requests","extraction_method": "json_ld","recipe": {"title": "Easy pancakes","description": "Learn how to make the perfect pancakes every time.","ingredients": ["100g plain flour","2 large eggs","300ml milk","1 tbsp sunflower or vegetable oil plus a little extra for frying","lemon wedges to serve (optional)","caster sugar to serve (optional)"],"instructions": ["Whisk the flour, eggs, milk, oil, and salt into a smooth batter.","Rest the batter if desired.","Heat and lightly oil a frying pan.","Cook each pancake until golden on both sides.","Serve with lemon wedges and caster sugar."],"prep_time": "PT10M","cook_time": "PT20M","total_time": "PT30M","yield": "Makes 12","cuisine": "British","category": "Breakfast, Brunch, Main course","nutrition": {"calories": "61 calories","proteinContent": "3 grams protein"},"source_url": "https://www.bbcgoodfood.com/recipes/easy-pancakes"},"source_url": "https://www.bbcgoodfood.com/recipes/easy-pancakes","recipe_title": "Easy pancakes","ingredient_count": 6,"instruction_count": 5}
Fields such as nutrition, cooking time, cuisine, category, and servings depend
on what the source website publishes and can be null when unavailable.
Error Handling
Every submitted URL produces a result, including URLs that cannot be successfully extracted. Failures are returned as Dataset items rather than being silently skipped:
{"success": false,"source_url": "https://example.com/recipe","error": {"code": "not_a_recipe","message": "The page does not appear to contain a recipe.","retryable": false}}
The error object always contains a machine-readable code, a human-readable
message, and a retryable flag. Some errors also include helpful context,
such as an anti-bot provider or HTTP status code.
| Error code | Meaning |
|---|---|
not_a_recipe | The page was accessible but does not appear to contain a recipe. |
recipe_incomplete | Recipe information was found, but there was not enough reliable data to return a complete recipe. |
subscription_required | The recipe appears to require an authenticated subscription or paywall access. |
anti_bot_challenge | The website blocked automated access even after available fallback methods were attempted. |
access_blocked | The website denied access without a detected named anti-bot challenge. |
network_error | The page could not be retrieved because of a network or remote-server failure. |
fetch_timeout | The website did not respond before the request timed out. |
Notes and Limits
- Submit direct public recipe-page URLs, not category pages, search results, or homepages.
- Duplicate URLs are processed once per run.
- The Actor never attempts to bypass subscriptions or authenticated access.
- Recipe availability and optional fields depend on the source website.
- Use the returned
successfield and error object when processing recipes in bulk.
Pricing
Successful recipe extractions cost $0.003 each ($3 per 1,000 successful recipes).
Failed URLs still return a Dataset record but do not trigger the successful-extraction charge. Platform usage is included in the price. A small Actor-start fee applies per run.
Example Use Cases
- Send a list of bookmarked recipes to build a meal plan.
- Convert recipe links into an ingredient database or shopping list.
- Enrich a food dataset with cooking times, servings, and nutrition data.
- Let an AI agent retrieve a recipe from a public link in a predictable JSON format.
API and AI Agent Use
Use Recipe Scraper API through the Apify API, automation workflows, or Apify MCP.
It is useful when an application or AI agent needs to:
- Extract a recipe from a URL.
- Parse recipes from food blogs or recipe websites.
- Convert recipe pages into predictable structured JSON.
- Retrieve ingredients and cooking instructions programmatically.
- Normalize recipe data before meal planning, shopping-list generation, or further AI processing.