Bon Appétit + Epicurious Recipe Scraper
Pricing
Pay per event
Bon Appétit + Epicurious Recipe Scraper
Scrape complete recipe data from Bon Appétit and Epicurious — two premium Condé Nast editorial brands. Extracts ingredients, instructions, nutrition, ratings, and Epicurious's unique 'would-make-again' review signal via sitemap enumeration (~65K recipes total).
Pricing
Pay per event
Rating
0.0
(0)
Developer
BowTiedRaccoon
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Scrape complete recipe data from Bon Appétit and Epicurious — two premium Condé Nast editorial recipe brands on the same platform. Both sites publish schema.org/Recipe JSON-LD with full structured data, making this one of the most reliable recipe data sources available.
What you get
Each scraped recipe includes:
- Full recipe data: name, author, description, category, cuisine
- Timing: prep time, cook time, total time (ISO 8601)
- Ingredients: complete ingredient list (pipe-separated)
- Instructions: step-by-step cooking instructions (pipe-separated)
- Nutrition: calories, protein, fat, carbohydrates, sodium, fiber, and more
- Ratings: aggregate rating (e.g. 4.5) and rating count
- Epicurious exclusive: "would-make-again %" review signal
- Media: recipe image URLs
- Metadata: keywords, tags, publish date, source site
Why Bon Appétit + Epicurious?
These are two of the most-trusted US editorial recipe brands, both owned by Condé Nast and running on the same CMS. The Epicurious "would-make-again percentage" is a unique recommender-grade quality signal not found in generic recipe scrapers — it tells you what fraction of actual cooks would repeat a recipe, which is invaluable for recommender systems, recipe app curation, and food trend analysis.
Corpus size
- Bon Appétit: ~30,000 recipes (sitemap-enumerable)
- Epicurious: ~35,000 recipes (sitemap-enumerable)
- Total: ~65,000 recipes
Input
| Field | Type | Description |
|---|---|---|
maxItems | integer | Maximum recipes to scrape. 0 = unlimited. Default: 10. |
startUrls | array | Optional specific recipe URLs to scrape directly |
sources | array | Which sites: bonappetit, epicurious, or both |
Example: scrape 100 recipes from both sites
{"maxItems": 100,"sources": ["bonappetit", "epicurious"]}
Example: scrape specific recipes
{"maxItems": 5,"startUrls": [{ "url": "https://www.bonappetit.com/recipe/bas-best-chocolate-chip-cookies" },{ "url": "https://www.epicurious.com/recipes/food/views/chicken-salad" }]}
Example: Epicurious only
{"maxItems": 500,"sources": ["epicurious"]}
Output
Each record matches the schema.org/Recipe vocabulary:
{"source_site": "bonappetit","slug": "bas-best-chocolate-chip-cookies","url": "https://www.bonappetit.com/recipe/bas-best-chocolate-chip-cookies","name": "BA's Best Chocolate Chip Cookies","author": "Chris Morocco","description": "Crispy edges, chewy centers, and puddles of chocolate in every bite.","recipe_category": "Cookies","recipe_cuisine": null,"prep_time": "PT20M","cook_time": "PT12M","total_time": "PT32M","recipe_yield": "About 24 cookies","recipe_ingredient": "2 1/4 cups all-purpose flour | 1 tsp baking soda | ...","recipe_instructions": "Preheat oven to 375 degrees F. | Mix dry ingredients... | ...","nutrition": "{\"calories\":\"190 calories\",\"fatContent\":\"9g\"}","aggregate_rating": "4.5","rating_count": "1437","would_make_again_pct": null,"keywords": "chocolate chip cookies, baking, dessert","tags": "Dessert | Baking","image_urls": "https://assets.bonappetit.com/photos/.../chocolate-chip-cookie.jpg","date_published": "2019-04-25T06:00:00.000-04:00","scraped_at": "2026-05-27T13:41:04.010Z"}
The would_make_again_pct field is populated for Epicurious recipes only, where the platform shows the percentage of reviewers who would make the recipe again.
Rate limits and performance
Both sites return clean 200 responses from datacenter IPs. The scraper uses 10 concurrent requests with automatic rate-limit handling. Full corpus crawl (~65K recipes) typically completes in several hours on a single run.