Key Points

  • The Importance of Recipe Schema: Any solid recipe website SEO strategy will include schema markup, a technical SEO practice that allows search engines to better understand your content to improve your chances of showing up with rich results.
  • Essential Recipe Schema Properties: Some of the most important properties to include in Recipe schema are PrepTime, CookTime, RecipeIngredient, RecipeInstructions, AggregateRating, and Review.
  • Implementation of Recipe Schema: Adding Recipe schema to your website can be highly technical so we recommend using a schema markup generator. Once your structured data is generated, you’ll then add the code to your website’s HTML document in the header section or at the end before the closing </body> tag.

Cooking is an art. Baking is a science. Technical SEO… 

Is both.

If you’ve been in the web publishing game for a minute, you know how important SEO is. But best practices for your recipe site go beyond simple on-page keywords. There are a lot of ingredients to fold in. 

One of those ingredients is recipe schema markup.

Schema is a technical SEO best practice that can take your recipe site from a hole-in-the-wall shop to a 5-star fine dining restaurant.

In this post, we’ll tell you everything you need to know to get there.

Grab your apron and let’s get cooking.

-- Article Continues Below --

New call-to-action

The Complete Guide to Schema for Website Publishers and Content Creators

What is Recipe Schema?

 

 

Recipe schema is a type of structured data that provides critical information to search engines about the content of your recipe site, food blog, or article. 

While schema isn’t a direct ranking factor for recipe SEO, there are several incredibly valuable benefits to including it in your content strategy. 

  1. It helps search engines better understand your content, so they can deliver it to the right readers.
  2. It makes it possible for Google to add rich snippets to your content’s search results, which is highly valuable given some of Google’s most recent algorithm updates.

What are Rich Results?

Rich results — also known as schema rich snippets or enriched results — are search results that go beyond the plain title-and-description results you may be used to.

Think of it like plating your meal. Presentation matters! It doesn't matter how delicious your meatloaf is; if the photo on the menu looks bad, not many people will want to order it.

Enriched Google results encourage readers to choose your recipe content by making it look as appetizing as possible. For a news site, this might be a larger thumbnail image, while for a recipe site, this could be a carousel of food images, recipe ratings, or listed ingredients and cooking time right within search results.

Recipe Site - Rich Snippet

The bottom line, this “additional encouragement” leads to more relevant traffic on your site, which ultimately results in more revenue in your pocket.

That’s a sweet treat we’re all willing to save room for.

Properties to Include in Recipe Schema

Recipe schema is the root schema type we’ll be talking about in this post, which means your structured data will begin like this: 

{

  "@context": "http://schema.org",

  "@type": "Recipe",

Following that, there are several properties you can choose to include in the schema. You can use a schema generator or plugin to create the markup or, if you believe you’re a highly skilled SEO chef, you can also write it manually.

Here’s how: 

1. Name

After @context and @type, Name schema will be the first bit of structured data to add. Type “name”: and then whatever your recipe is called. 

For example, “Mama’s Famous Oatmeal Cookies” or “Super Duper Spicy Fried Tofu Ramen” or just “Chocolate Fondue”. 

Here’s what the code will look like:

  "name": "Classic Carrot Cake",

2. Author

Next comes Author schema. Add the root type (Author) and then use Person schema to add information about the creator of the recipe and blog post.

It should look like this:

 "author": {

    "@type": "Person",

    "name": "Jane Doe"

  },

3. Image

You want to add Image schema to direct the search engine directly to the URL of the main image used in your post.

It will look like this:

  "image": "https://example.com/photos/carrotcake.jpg",

4. DatePublished

Include information about the publication date:

 "datePublished": "2024-07-02",

5. Description

Now that we’ve added the standard Recipe schema markup ingredients, we can get started on the juicy stuff.

Write up a quick description of the recipe. Keep in mind this description could be used in Google’s rich results, so make sure it leaves your readers’ mouths watering.

Here’s an example:

 "description": "A moist and flavorful carrot cake topped with creamy cream cheese frosting. Perfect for any occasion!",

6. PrepTime

Next, it’s time for a few quick details. Add the estimated preparation time for the recipe.

One note: times in schema should always use ISO-8601 format

It should look something like this: 

  "prepTime": "PT20M",

-- Article continues below --

New call-to-action

Explore the Complete Schema Resource Center

7. CookTime

Then, include data about the estimated cook time.

Here’s an example:

  "cookTime": "PT45M",

8. TotalTime

One more bit of data about time; this one should be the estimated time to make the recipe from start to finish. Include prep time, cook time, cool time, and any time in between for ingredients to rise or marinate.

This is what it looks like:

  "totalTime": "PT1H5M",

9. RecipeYield

The next short detail is the amount of servings the recipe will yield.

It should turn out like this:

  "recipeYield": "12 servings",

10. RecipeIngredient

Now comes a longer and more complicated section of Recipe schema: the ingredient list.

This information is, for obvious reasons, extra valuable for your readers. Since nearly everyone is a dairy-free, paleo, gluten-free raw vegan these days, people want and need to know whether your recipe accommodates their dietary restrictions.

Try to organize the ingredients in a relevant order that lines up with your RecipeInstructions schema (coming up next).

Here’s an example:

  "recipeIngredient": [

    "2 cups all-purpose flour",

    "2 teaspoons baking powder",

    "1 teaspoon baking soda",

    "1/2 teaspoon salt",

    "2 teaspoons ground cinnamon",

    "1/2 teaspoon ground nutmeg",

    "1/4 teaspoon ground ginger",

    "1 cup vegetable oil",

    "1 cup granulated sugar",

    "1 cup packed brown sugar",

    "4 large eggs",

    "2 teaspoons vanilla extract",

    "3 cups grated carrots",

    "1 cup chopped walnuts (optional)",

    "1 cup raisins (optional)"

  ],

11. Recipe Instructions

RecipeInstructions schema is a bit more complex than adding some of the other data on this list. It requires some nesting of the HowTo schema. 

Nesting schema may look intimidating at first, but rest assured: it’s as easy as seasoning mashed potatoes.

Start by listing out a short version of your step-by-step instructions. Then, add it to the following formula:

  1. Establish the type: In this case, it’s: { “@type”: “HowToStep”,
  2. Add the text: In the following line, include the step: “text”: “Whisk the eggs.”
  3. Add a closing tag: For each nested HowToStep, close with a: },

The result will be something like looks like this:

  "recipeInstructions": [

    {

      "@type": "HowToStep",

      "text": "Preheat the oven to 350°F (175°C). Grease and flour two 9-inch round baking pans."

    },

    {

      "@type": "HowToStep",

      "text": "In a medium bowl, whisk together the flour, baking powder, baking soda, salt, cinnamon, nutmeg, and ginger."

    },

    {

      "@type": "HowToStep",

      "text": "In a large bowl, beat together the oil, granulated sugar, and brown sugar until well combined. Add the eggs one at a time, beating well after each addition. Stir in the vanilla extract."

    },

    {

      "@type": "HowToStep",

      "text": "Gradually add the dry ingredients to the wet ingredients, mixing until just combined. Fold in the grated carrots, walnuts, and raisins."

    },

    {

      "@type": "HowToStep",

      "text": "Divide the batter evenly between the prepared baking pans. Bake for 40-45 minutes, or until a toothpick inserted into the center comes out clean."

    },

    {

      "@type": "HowToStep",

      "text": "Allow the cakes to cool in the pans for 10 minutes, then turn them out onto a wire rack to cool completely before frosting."

    }

  ],

12. Nutrition

For the health nuts out there, add a bit of data about the nutritional value of your recipe.

Some sub-properties of Nutrition schema include:

  • Calories
  • CarbohydrateContent
  • CholesterolContent
  • FatContent
  • FiberContent
  • ProteinContent
  • SaturatedFatContent
  • ServingSize
  • SodiumContent
  • SugarContent
  • TransFatContent
  • UnsaturatedFatContent

This is what Nutrition schema looks like in action:

  "nutrition": {

    "@type": "NutritionInformation",

    "calories": "450 calories",

    "fatContent": "20 grams",

    "carbohydrateContent": "60 grams",

    "proteinContent": "5 grams"

  },

13. RecipeCuisine

A couple more easy bits: RecipeCuisine schema provides information about the type of cuisine your recipe is.

Like this:

  "recipeCuisine": "American",

14. RecipeCategory

Next, include the category of the recipe:

  "recipeCategory": "Dessert",

15. Keywords

Finally, sprinkle in a list of the relevant search terms related to your recipe:

  "keywords": "carrot cake, dessert, cake, baking",

16. AggregateRating

If your posts allow users to rate and review your recipes, include AggregateRating and Review schema.

AggregateRating schema is information about the overall rating of your recipe.

Here’s what it looks like:

  "aggregateRating": {

    "@type": "AggregateRating",

    "ratingValue": "4.8",

    "reviewCount": "125"

  },

17. Review

Review schema provides structured data about reviews users leave on your posts. 

It has nested properties, including:

  • Author and Person
  • DatePublished
  • ReviewBody
  • ReviewRating

Here’s what it looks like:

  "review": [

    {

      "@type": "Review",

      "author": {

        "@type": "Person",

        "name": "John Smith"

      },

      "datePublished": "2024-06-15",

      "reviewBody": "This carrot cake is absolutely delicious! The perfect balance of spices and the cream cheese frosting is to die for.",

      "reviewRating": {

        "@type": "Rating",

        "ratingValue": "5"

      }

    },

    {

      "@type": "Review",

      "author": {

        "@type": "Person",

        "name": "Emily Johnson"

      },

      "datePublished": "2024-06-20",

      "reviewBody": "A wonderful recipe! The cake was moist and flavorful. I added pineapple and it turned out great.",

      "reviewRating": {

        "@type": "Rating",

        "ratingValue": "4.5"

      }

    }

  ]

}

Taste That Sweet, Sweet Revenue With Playwire

Technical SEO best practices like schema markup can feel like a mundane time suck, but they can make a massive difference in your site’s traffic and engagement metrics.

Plus, it’s not as easy as just tossing structured data into a bowl and whisking up a light, fluffy revenue strategy. There’s much more that goes into reaching your goals.

That’s where Playwire comes in. 

We’ve mastered the art of planning, prepping, cooking, and serving the perfect, customized revenue strategies for our partners.

So, if you’re sick of managing all the simmering and stewing yourself, reach out to us today to get started.

New call-to-action