Recipe Schema Generator — Free JSON-LD for Food Blogs
Generate valid Recipe structured data with ingredients, cook time, yield, and instructions. Be eligible for Google's Recipe Carousel and Discover surfacing.
🍳Recipe Schema
Fields marked with * are required for valid schema markup.
Ingredients *
Instructions *
JSON-LD Output
<span class=400">"text-gray-500"><script type=400">"application/ld+json"></span>
{
400">"@context": 400">"https://schema.org",
400">"@type": 400">"Recipe"
}
<span class=400">"text-gray-500"></script></span>Copy this code and paste it into the <head> section of your HTML page.
What is Recipe Schema?
Recipe is the Schema.org type specifically built for cooking and baking content. It is a subtype of CreativeWork and HowTo, but with food-specific properties — ingredients, yield, nutrition information, cooking method, suitable diet (vegan, kosher, gluten-free), and cuisine. It is one of the most rendered schema types in Google search.
Recipes with valid schema are eligible for the Recipe Carousel (horizontal scrolling cards on mobile search), Recipe rich results with star ratings and cook times, and Google Discover food category placement. Without Recipe schema, a food blog is invisible to these surfaces regardless of content quality.
Why Recipe Schema Matters
- Recipe Carousel placement: Mobile recipe searches show a horizontal carousel of card-based recipes. Only pages with valid Recipe schema appear here. Carousel placement drives ~3x the CTR of standard blue-link results.
- Star ratings in SERP: Recipes with aggregateRating display gold stars and review counts in search results — visually distinguishing your listing from plain text.
- Cook time and calories in SERP: Rich result snippets show prep time, cook time, and calorie count, helping users select your recipe based on their constraints.
- Google Discover: Properly marked-up recipes appear in mobile Discover feeds, particularly for users with cooking-related interests in their Google profile.
- Voice assistant integration: Google Assistant reads recipe steps aloud during cooking. Schema enables this "Hey Google, what's next?" interaction.
- Pinterest Rich Pins: Although different from Google, Recipe schema also feeds Pinterest's Rich Pin format with auto-imported ingredients and cook times.
Recipe Schema Properties Explained
Required Properties
- name: Recipe name (matches H1).
- image: High-quality food photo, ideally 1200×1200 or larger. Multiple images recommended for Carousel rendering.
- recipeIngredient: Array of ingredient strings, each in "quantity + unit + ingredient" format.
- recipeInstructions: Array of HowToStep objects with step text. Can include images and names per step.
Strongly Recommended Properties
- author: Person who created the recipe.
- datePublished: When the recipe was first posted.
- description: One-line summary (used as meta description and Carousel subtitle).
- prepTime / cookTime / totalTime: ISO 8601 durations (
PT15M,PT1H). - recipeYield: "4 servings" or numeric "4".
- recipeCuisine: Italian, Mexican, Japanese, etc.
- recipeCategory: Dinner, Breakfast, Dessert, Snack.
- nutrition: Nested NutritionInformation with calories, fatContent, carbohydrateContent, proteinContent (per serving).
- suitableForDiet: RestrictedDiet enums (VeganDiet, GlutenFreeDiet, KosherDiet, etc.).
- aggregateRating: Only with genuine reviews on your page.
- video: Nested VideoObject — significant ranking boost when present.
Step-by-Step Implementation
Step 1: Confirm You Have a Real Recipe
Recipe schema is for content where a reader could actually cook the dish from your page — ingredients quantities, cooking method, and steps must all be present. Don't use Recipe on roundup pages ("Best Pasta Recipes"), product reviews, or food-adjacent content.
Step 2: Format Ingredients as Atomic Strings
Each recipeIngredient entry must be a single string Google can parse. Good: "2 cups all-purpose flour". Bad: separating into "quantity{"""}: 2, "unit{"""}: "cups{"""}. Include alternative units in parentheses if helpful: "500g (1.1 lbs) chicken breast".
Step 3: Use ISO 8601 for All Times
Prep time, cook time, and total time must use ISO 8601 duration format. Examples: PT15M (15 minutes), PT1H30M (1 hour 30 minutes), PT45M (45 minutes). Free-text formats break rich result eligibility.
Step 4: Structure Instructions as Steps
Use array of HowToStep objects. Each step gets a text describing the action. Optional name for short step titles, optional image for visual steps. Google renders this as numbered steps in Assistant-driven recipe reading.
Step 5: Add Nutrition (Strongly Recommended)
Calculate per-serving nutrition and add to the nutrition field. Use units that match Google's expectations: "calories": "350 calories", "fatContent": "12g", "proteinContent": "28g". This data is increasingly important as users filter recipes by nutrition.
Recipe Schema Best Practices
- Use at least 4 high-resolution food photos. Multiple images significantly improve Carousel rendering.
- Match recipe yield format Google expects: "4 servings" or just "4" (numeric).
- Keep ingredient strings short and parseable: quantity + unit + ingredient. Skip prep notes ("diced", "finely chopped") for cleaner parsing.
- Add step-level images for visually complex techniques (laminating dough, braiding bread).
- Use
recipeCuisinewith the actual cuisine, not your blog's branding ("Mom's Italian Sunday Sauce" → cuisine: "Italian"). - Include video if available. Recipes with video earn 2-3x higher CTR.
- List dietary restrictions accurately. A recipe with butter cannot be marked VeganDiet. Misuse triggers manual actions.
Common Mistakes to Avoid
- Using HowTo instead of Recipe schema for cooking content.
- Splitting ingredient strings into separate quantity/unit/ingredient fields.
- Using free-text time formats ("about 30 minutes") instead of ISO 8601 (PT30M).
- Adding Recipe schema to recipe roundup or collection pages — those should use ItemList.
- Fabricating aggregateRating — Google's structured data policy forbids this and can trigger manual actions.
- Incorrect suitableForDiet labels (claiming vegan when ingredients include eggs/dairy).
- Forgetting to include the actual rendered recipe content on the page — schema must match visible content.
- Missing high-quality images. Recipes without good photos rarely appear in the Carousel even with valid schema.
Frequently Asked Questions
What is Recipe schema?
Recipe is the Schema.org type for cooking and baking instructions. It conveys ingredients, prep/cook time, yield, nutrition, ratings, and step-by-step instructions in a structured format that Google uses to render Recipe rich results and Recipe Carousels.
Should I use Recipe or HowTo schema for food content?
Always use Recipe for food. Recipe is a specialized subtype with food-specific properties (ingredients, nutrition, cooking method). HowTo is for general procedural content. Using HowTo on a recipe forfeits Recipe rich result eligibility.
How do I write ingredient strings correctly?
Each recipeIngredient should be a single string with quantity + unit + ingredient: '2 cups flour', '1 tsp salt', '500g chicken breast'. Don't split into separate fields. Google parses these strings to detect ingredients.
Is nutrition data required?
Not required for basic rich results, but strongly recommended for nutrition-focused content (keto, paleo, diabetic recipes). Use NutritionInformation nested object with calories, fatContent, proteinContent, etc.
Can I include video in Recipe schema?
Yes — add a nested video property using VideoObject schema. Recipe pages with video schema can appear in the Recipe Carousel with video thumbnails, significantly increasing CTR over text-only listings.
Will my recipe appear in Google Discover?
Recipe schema is one of the strongest signals for Google Discover food category placement. Combined with high-quality images and consistent publishing cadence, properly marked-up recipes drive significant Discover traffic.
Related Schema Generators
- How-To Schema Generator — for non-cooking step-by-step content.
- Video Schema Generator — for recipe video embeds.
- FAQ Schema Generator — for FAQ sections often included on recipe pages.