Recipe Schema Generator

Build Recipe JSON-LD with ingredients, steps, times, and nutrition — the markup behind Google's recipe rich results. Runs entirely in your browser.

Recipe details

Fill in what you have — optional fields are left out of the markup entirely.

Google requires at least one image for the recipe rich result.

Times (minutes)

Entered in plain minutes — the tool converts to the ISO 8601 duration format schema.org requires.

Yield & classification

Comma-separated.

Ingredients & instructions

One ingredient per line.

One step per line — each line becomes a numbered step.

Rating, nutrition & video (optional)

Both rating fields are needed together to include a rating.

JSON-LD

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Recipe"
}
</script>

Required by Google, still empty

Recipe titleImage URLIngredientsInstructions
What goes into a recipe rich result

Google's recipe rich result pulls directly from Recipe structured data — the ingredients list, the numbered steps, prep and cook time, yield, and an optional rating badge all come from the same JSON-LD block a crawler reads on the page. Getting the shape right matters more than filling in every optional field: a missing image or an empty ingredient list can keep the rich result from appearing at all, while a missing cuisine or keyword just means one less filter a user could have matched on.

Keep the markup honest and in sync with what's visible on the page. If the visible recipe changes — a different yield, an added step, updated nutrition — update the schema at the same time so the two never drift apart.

Frequently asked questions

Do I need exact prep/cook times?

No, they're optional but recommended. Google's recipe rich result can show a cook-time badge when prepTime, cookTime, or totalTime are present, which helps a listing stand out — but a recipe with only a name, image, ingredients, and instructions is still a fully valid rich result.

What format do the ingredient and instruction fields expect?

One item per line, plain text — the tool splits on newlines and builds the array for you. For ingredients, that becomes the recipeIngredient list; for instructions, each line becomes a numbered HowToStep. You don't need to add numbering, bullets, or any markup yourself.

Does adding this schema guarantee a recipe rich result?

No — Google decides whether to show the recipe rich result, and that decision also depends on things outside the markup, like overall page quality and whether the content matches what's marked up. This tool just makes your recipe's ingredients, steps, and times machine-readable; showing up in the enhanced result is Google's call.

Can I include a recipe video?

Yes — paste a direct link to the video file (or a page that hosts it) into the video URL field and it's added as a VideoObject on the recipe. This is separate from the site-wide Video schema tool, which is meant for a page whose main content is a video rather than a supporting clip on a recipe page.

What if my recipe doesn't have nutrition information?

Leave the calories field blank — the nutrition block is only added to the markup when it's filled in. Google doesn't require nutrition information for the recipe rich result, so there's no downside to omitting it if you don't have reliable numbers.

Related tools

Command Palette

Search for a command to run...