Mark up your recipe content with structured data to provide rich cards and host-specific lists for your recipes, such as reviewer ratings, cooking and preparation times, and nutrition information.
Use Cases
A query such as “mango recipes” |
A query such as “grandmas holiday apple pie” |
A query such as "great chicken recipes" |
Guidelines
In addition to the general policies that apply to all Rich Cards, the following extra policies apply for recipe Rich Cards:
- Use recipe markup for content about preparing a particular dish. For example, "facial scrub" or "party ideas" are not valid names for a dish.
- Use recipe property markup for a single recipe, not a category of recipes or a list of recipes. For example, “10 apple pie recipes” is not a single recipe. See also policies regarding multiple entities on the same page.
- If the recipe markup contains a single review, the reviewer’s name must be a valid person or organization. For example, "50% off ingredients" is not a valid name for a reviewer.
- To enable your recipes to appear in a host-specific list, you must provide
ItemListmarkup to summarize the recipes for your list. You can provideItemListmarkup separately or together with Recipe markup. See Mark Up Your Lists for details. - For host-specific lists, your site must have a summary page that lists all the recipes in the collection, so that when a user clicks the summary link from Search results, they are properly directed to a page on your site listing the recipes related to their search.
Type Definitions
ItemList Properties
The following table indicates the ItemList properties necessary for host-specific lists. See specific guidelines above and Mark Up Your Listings for implementation details.
| Property | |
|---|---|
itemListElement |
ListItem, required Annotation for a single item page. |
ListItem.position |
Integer, required Ordinal position of the item page in the list. |
ListItem.url |
URL, required The canonical URL of the item page. Every item should have a unique URL. |
Recipe Properties
When you mark up your recipe content, use the following properties of the schema.org Recipe type. The table below indicates those properties that are required in order for your content to be eligible for rich cards. Mark up as many of the recommended fields as possible; this maximizes your rich content opportunities and drives better engagement in Search.
| Properties | |
|---|---|
name |
Text, required The name of the dish. |
recipeCategory |
Text, recommended The type of dish. For example: appetizer, entree, or dessert. |
image |
URL or ImageObject, required Image of the completed dish. |
datePublished |
Date, recommended The date the recipe was published, in ISO 8601 format. |
description |
Text, recommended A short summary describing the dish. |
aggregateRating |
AggregateRating, recommended Annotation for the average review score assigned to the item. |
review |
Review, recommended A review of the dish. Can include nested review information. |
prepTime |
Duration, recommended* The length of time it takes to prepare the recipe for dish, in ISO 8601 format. Can use min, max as child elements to specify a range of time. *Always use in combination with |
cookTime |
Duration, recommended* The time it takes to actually cook the dish, in ISO 8601 format. Can usemin, max as child elements to specify a range of time. *Always use in combination with |
totalTime |
Duration, recommended* The total time it takes to prepare the cook the dish, in ISO 8601 format. Can use min, max as child elements to specify a range of time. * Use |
nutrition.calories |
Energy, recommended The number of calories in the recipe. |
recipeInstructions |
Text, recommended The steps to make the dish. Can contain the child element instruction, which can be used to annotate each step. |
recipeYield |
Text, recommended The quantity produced by the recipe. For example: number of people served, or number of servings. |
recipeIngredient |
Text, recommended An ingredient used in the recipe. |
author |
Person, recommended Creator of the recipe. |