Recipe schema has the shortest required list of almost any rich result type, and that is exactly why so much of it is thin. A plugin fills in the name and the featured image, the Rich Results Test passes, and the site owner assumes the job is done. It is valid. It is also the least useful version of the markup you could publish.
This guide covers what Google requires, what it recommends, the image rules that trip people up, a recipe schema example in JSON-LD, and the mistakes that make markup ineligible. If structured data is new to you, start with our primer on schema markup and come back.
Required versus recommended recipe schema markup
Google’s Recipe structured data documentation lists two required properties. name is “The name of the dish”, and image is “Image of the completed dish”. That is the floor. Note the wording on the image: the finished dish, not the ingredients, not the cook, not a step in progress.

The recommended list is long, and it is where recipe results get their detail. Each property below is one Google names as recommended. None is required, but a recipe result without times, ingredients or instructions has little to show beyond a title and a picture.
| Property | Status | What it carries |
|---|---|---|
name | Required | “The name of the dish” |
image | Required | “Image of the completed dish” |
recipeIngredient | Recommended | The ingredient list |
recipeInstructions | Recommended | The steps, without “Step 1” labels |
prepTime, cookTime, totalTime | Recommended | Durations in ISO 8601, such as PT30M |
recipeYield | Recommended | How many servings |
nutrition.calories | Recommended | Calories per serving |
recipeCategory, recipeCuisine, keywords | Recommended | Course, cuisine and descriptive terms |
aggregateRating | Recommended | Ratings shown on the page |
author, datePublished, description, video | Recommended | Who wrote it, when, a summary and any video |
Treat the recommended list as the real specification. If the page shows a cook time, mark it up. If it shows a serving count, mark that up too. The markup should describe what is already on the page, so the more complete the recipe card, the more complete the schema can honestly be.
The image rules most recipe sites get wrong
Google asks for multiple high-resolution images in three aspect ratios: 16×9, 4×3 and 1×1. It also sets a floor of “50K pixels when multiplying width and height”. A 300 by 150 thumbnail is 45,000 pixels and fails; most hero photos clear it easily.

The aspect ratios matter more than people think. Different search surfaces crop differently, and supplying three versions lets Google pick the one that suits the layout instead of cropping your dish awkwardly. Most image tools and many recipe plugins can generate the crops from one master photo, so this is a template job, not a manual one. Our guide to Google Images SEO covers the wider side of getting food photography found.

A recipe schema example in JSON-LD
Below is a recipe schema JSON-LD block for a hypothetical recipe. Every value in it should also be visible on the page. The durations use ISO 8601 syntax, so PT15M is fifteen minutes and PT1H is one hour.
A few things to notice. The instructions contain no “Step 1” labels; Google says not to put them in the text, because the order of the array already carries the sequence. The calorie figure and servings are placeholders, so use your own. And there is no aggregateRating here, because a new recipe with no reviews has nothing honest to put in it. When you do add ratings, our guide to review schema covers the rules. If you are weighing formats, JSON-LD versus microdata explains why JSON-LD is the easier one to maintain.

What does not qualify, and other mistakes
Recipe markup is only for actual dishes. Google gives two examples of content that does not qualify: a “facial scrub” or “party ideas”. The same logic covers cocktail party planning guides, cleaning “recipes” and craft tutorials. If nobody eats the result, it is not a recipe for this purpose. Marking up that kind of page does not earn a richer result; it simply makes the markup ineligible and adds noise to your Search Console reports.
The other common mistakes are mechanical. Times written as “30 minutes” rather than ISO 8601. Step labels baked into the instruction text. A single tiny image. Ratings in the markup that are not shown on the page. Each of these is the kind of thing a plugin setting or theme template produces once and then repeats across every recipe on the site, so check a handful of real pages, not just one.
Video is the one recommended property worth singling out. If you film the recipe, the video property ties it to the markup. Our video SEO guide covers how to get that video indexed in its own right.

Carousels and recipe summary pages
Recipe sites often want to appear in carousels. For that, Google describes adding an ItemList on a summary page, such as a category or roundup page, that lists the individual recipes. Each recipe still carries its own full Recipe markup on its own page; the summary page points to them rather than duplicating them.
This mirrors the rule for most schema types: the detailed markup belongs on the page that is actually about the thing. A roundup of “twenty easy soups” should not try to be twenty recipes at once. It should be a list that links to them.

One limitation to be clear about. Valid recipe schema makes a page eligible for recipe rich results; it does not guarantee them. Google decides what to show, and passing the Rich Results Test is a check on the markup, not a promise of a carousel spot or a rating in the results. What you control is accuracy and completeness: the two required fields, as much of the recommended list as the page genuinely supports, images in the right ratios, and nothing in the markup that a visitor cannot see. Once it is live, Search Console’s report for recipes shows errors across the whole site, which is where template problems tend to surface after a theme or plugin update. Check it after every change to the recipe card, because a broken field mapping spreads to every recipe at once.
Frequently asked questions
What does recipe schema require?
Only two properties: name, “The name of the dish”, and image, “Image of the completed dish”. Everything else is recommended.
What size should recipe images be?
Google asks for multiple high-resolution images in 16×9, 4×3 and 1×1, with a minimum of 50K pixels when you multiply width by height.
How do I write cook times in recipe schema?
Use ISO 8601 durations, such as PT30M for thirty minutes or PT1H for an hour, in prepTime, cookTime and totalTime.
Can I use recipe markup for non-food content?
No. It is only for actual dishes. Google names a facial scrub and party ideas as examples that do not qualify.
The takeaway Name and image get you valid; the recommended fields get you a useful result. Mark up what the recipe card shows, supply three image ratios, use ISO 8601 times and keep step labels out of the instructions.

