Free tool · No signup

    Recipe Schema Generator

    Turn ingredients and steps into valid Recipe JSON-LD eligible for Google's recipe carousel and rich results.

    One per line.

    One step per line.

    Recipe JSON-LD

    <script type="application/ld+json">
    {
      "@context": "https://schema.org",
      "@type": "Recipe",
      "name": "Charred Lemon Orzo",
      "description": "A 25-minute one-pan orzo with charred lemon, chilli and parsley.",
      "image": "https://example.com/img/charred-lemon-orzo.jpg",
      "author": {
        "@type": "Person",
        "name": "Nina Delgado"
      },
      "datePublished": "2026-01-20",
      "prepTime": "PT10M",
      "cookTime": "PT15M",
      "totalTime": "PT25M",
      "recipeYield": "4 servings",
      "recipeCategory": "Main course",
      "recipeCuisine": "Mediterranean",
      "nutrition": {
        "@type": "NutritionInformation",
        "calories": "480 calories"
      },
      "recipeIngredient": [
        "300g orzo",
        "2 lemons, halved",
        "3 garlic cloves, sliced",
        "1 red chilli, sliced",
        "30g parsley, chopped",
        "40ml olive oil"
      ],
      "recipeInstructions": [
        {
          "@type": "HowToStep",
          "text": "Char the lemon halves cut-side down in a dry pan for 3 minutes."
        },
        {
          "@type": "HowToStep",
          "text": "Toast the orzo in olive oil with garlic and chilli for 2 minutes."
        },
        {
          "@type": "HowToStep",
          "text": "Add 700ml stock and simmer for 10 minutes, stirring."
        },
        {
          "@type": "HowToStep",
          "text": "Squeeze in the charred lemon, fold through parsley and serve."
        }
      ]
    }
    </script>

    Paste this block into the <head> or anywhere in the <body> of the page it describes, then confirm it parses with the JSON-LD schema validator.

    In short

    A recipe schema generator produces JSON-LD marking up name, image, recipeIngredient and recipeInstructions so Google can render the page as a recipe rich result, including the recipe carousel and star ratings in search. Google's guidelines require name, image and at least one of ingredients or instructions, and treat aggregateRating, cookTime, prepTime and nutrition as strongly recommended extras that unlock the fuller carousel card. Enter the recipe details below to generate the markup.

    Worked example

    What the output looks like

    Input
    Recipe: 20-Minute Garlic Butter Shrimp, prep 10 min, cook 10 min, serves 4, rated 4.7 from 212 reviews
    Output
    { "@context": "https://schema.org", "@type": "Recipe", "name": "20-Minute Garlic Butter Shrimp", "image": ["https://example.com/images/garlic-butter-shrimp.jpg"], "author": {"@type": "Person", "name": "Dana Ortiz"}, "prepTime": "PT10M", "cookTime": "PT10M", "totalTime": "PT20M", "recipeYield": "4 servings", "recipeCategory": "Main Course", "recipeCuisine": "American", "nutrition": { "@type": "NutritionInformation", "calories": "310 calories" }, "recipeIngredient": [ "1 lb large shrimp, peeled", "4 tbsp butter", "4 cloves garlic, minced", "1 lemon, juiced" ], "recipeInstructions": [ {"@type": "HowToStep", "text": "Melt butter in a skillet over medium heat."}, {"@type": "HowToStep", "text": "Add garlic and cook until fragrant, about 1 minute."}, {"@type": "HowToStep", "text": "Add shrimp and cook 2-3 minutes per side until pink."}, {"@type": "HowToStep", "text": "Stir in lemon juice and serve immediately."} ], "aggregateRating": { "@type": "AggregateRating", "ratingValue": "4.7", "ratingCount": "212" } }
    How to read it
    totalTime is derived from prepTime plus cookTime and should be kept consistent if either changes. recipeInstructions is an array of HowToStep objects rather than a single string, which is what lets Google render numbered steps in the rich result. aggregateRating must reflect ratings genuinely displayed elsewhere on the page, not a marketing figure.

    How it works

    1

    Enter the recipe name, image and yield

    Provide the recipe name, at least one image URL (Google recommends multiple aspect ratios), and recipeYield such as '4 servings'. These fields anchor the card shown in the recipe carousel.

    2

    List ingredients and numbered instructions

    Add each recipeIngredient as a separate line and break recipeInstructions into discrete HowToStep entries rather than one paragraph, since Google displays them as a numbered list in the rich result.

    3

    Add times, nutrition and rating data

    Fill in prepTime and cookTime in ISO 8601 duration format, plus aggregateRating from real user reviews. Never fabricate ratings — Google's guidelines explicitly prohibit markup that doesn't match visible page content.

    What this tool does

    • Covers required fields: name, image and either ingredients or instructions
    • Structures step-by-step instructions as a HowToStep list
    • Adds nutrition, cookTime, prepTime and aggregateRating
    • Outputs schema.org-compliant JSON-LD ready to paste into your recipe page

    Questions

    Frequently asked

    More free SEO tools

    Validate structured data across every page automatically

    LemRank tracks rankings, backlinks, and AI-search visibility in one dashboard. 14-day free Pro trial. No credit card.