Example of image search on a mobile device and example of a rich result

Mark up your recipe content with structured data to provide rich results (previously known as rich cards) and host-specific lists for your recipes, such as reviewer ratings, cooking and preparation times, and nutrition information.

Recipe markup enables a badge on the image in mobile image search results, which can encourage more users to click your content.


See examples for recipes using JSON-LD code in the Structured Data Testing Tool.

Here's an example for the query “mango recipes".

Here's an example for the query “grandma's holiday apple pie”.

Here's an example for the query "great chicken recipes".


In addition to the general guidelines that apply to all rich results, be aware of the following extra guidelines for recipe rich results:

  • Use AMP to build your recipe pages and mark up the content with structured data to provide rich results and instant-loading host-specific lists for your recipes.
  • 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 technical guidelines 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 ItemList markup to summarize the recipes for your list. You can provide ItemList markup 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.


ListItem, required

Annotation for a single item page.


Integer, required

Ordinal position of the item page in the list.


URL, required

The canonical URL of the item page. Every item should have a unique URL.

Recipe Properties

Build your recipe pages with AMP, and mark up your recipe content with the following properties of the Recipe type. In addition to the required fields, mark up as many of the recommended fields as possible to drive better engagement in Search.


AggregateRating, recommended

Annotation for the average review score assigned to the item.


Person, recommended

Creator of the recipe.


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 prepTime.


Date, recommended

The date the recipe was published, in ISO 8601 format.


Text, recommended

A short summary describing the dish.


URL or ImageObject; required for Image Search, recommended for Search

Image of the completed dish.

Additional image guidelines:

  • Every page must contain at least one image (whether or not you include markup). Google will pick the best image to display in Search results based on the aspect ratio and resolution.
  • Image URLs must be crawlable and indexable.
  • Images must represent the marked up content.
  • Images must be in .jpg, .png, or. gif format.
  • For best results, provide multiple high-resolution images (minimum of 50K pixels when multiplying width and height) with the following aspect ratios: 16x9, 4x3, and 1x1.

For example:

"image": [

Text, required

The name of the dish.


Energy, recommended

The number of calories in the recipe.


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.


Text, recommended

The type of dish. For example: appetizer, entree, or dessert.


Text, recommended

An ingredient used in the recipe.


Text, recommended

The steps to make the dish. Can contain the child element instruction, which can be used to annotate each step.


Text, recommended

The quantity produced by the recipe. For example: number of people served, or number of servings.


Review, recommended

A review of the dish. Can include nested review information.


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 totalTime or a combination of both cookTime and prepTime.

Send feedback about...