How to add JSON-LD structured data for a recipe in a blog post (Shopify guide)

How to add JSON-LD structured data for a recipe in a blog post (Shopify guide)

How to add JSON-LD structured data for a recipe in a blog post (Shopify guide)

Learn how to add JSON-LD structured data for a recipe to a Shopify blog post to help search engines better understand your content and improve your chances of earning rich results.

Learn how to add JSON-LD structured data for a recipe to a Shopify blog post to help search engines better understand your content and improve your chances of earning rich results.

by Narmina Balabeyli

Updated:

5 min

Contents

TL:DR

  • Recipe markup makes your post eligible for one of the most visual rich results in search: image, rating, and cook time shown directly in the SERP.

  • Only two properties are required (name, image), but the rich result gets better with the recommended set: times in ISO 8601 format, yield, ingredients, step-by-step instructions, and nutrition.

  • On Shopify you can paste the JSON-LD manually per post — or use a recipe block that generates and injects the markup automatically, so the schema always matches the visible recipe.

TL:DR

  • Recipe markup makes your post eligible for one of the most visual rich results in search: image, rating, and cook time shown directly in the SERP.

  • Only two properties are required (name, image), but the rich result gets better with the recommended set: times in ISO 8601 format, yield, ingredients, step-by-step instructions, and nutrition.

  • On Shopify you can paste the JSON-LD manually per post — or use a recipe block that generates and injects the markup automatically, so the schema always matches the visible recipe.

Search "chocolate chip cookies" and look at the results: photos, star ratings, "25 min" labels. Those aren't ads and they aren't luck — every one of them is a page with Recipe structured data.

If your blog posts contain recipes — food, drinks, even DIY "recipes" — this markup is the difference between a blue link and a result people can see. Here's how to add it.

What is Recipe structured data and what it does

It describes your recipe to machines in schema.org vocabulary: what it makes, how long it takes, what goes in, and the exact steps. Google's Recipe documentation lists what that unlocks: eligibility for recipe rich results and the recipe carousels at the top of search.

The usual honesty applies: markup creates eligibility, not a guarantee — Google decides what to show. But without the markup, you're not even in the draw.

The fields that matter

Required by Google:

  • name — the recipe title

  • image — one or more photos of the finished dish

Recommended (and worth filling — the richer the markup, the richer the possible result):

  • description — a sentence or two

  • prepTime, cookTime, totalTime — in ISO 8601 duration format: 15 minutes is PT15M, 1 hour 20 is PT1H20M

  • recipeYield — servings ("18 cookies")

  • recipeIngredient — one array item per ingredient, amount included

  • recipeInstructions — an array of HowToStep objects, one per step

  • recipeCategory and recipeCuisine — "Dessert", "American"

  • nutrition — at minimum calories

  • author, datePublished, keywords

A complete example

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Recipe",
  "name": "Salted Tahini Chocolate Chip Cookies",
  "image": [
    "https://yourstore.com/cdn/shop/articles/tahini-cookies.jpg"
  ],
  "author": {
    "@type": "Person",
    "name": "Amina"
  },
  "datePublished": "2026-08-01",
  "description": "Chewy chocolate chip cookies with tahini and flaky sea salt.",
  "prepTime": "PT15M",
  "cookTime": "PT12M",
  "totalTime": "PT27M",
  "recipeYield": "18 cookies",
  "recipeCategory": "Dessert",
  "recipeCuisine": "American",
  "keywords": "tahini cookies, chocolate chip cookies",
  "nutrition": {
    "@type": "NutritionInformation",
    "calories": "210 calories"
  },
  "recipeIngredient": [
    "200 g all-purpose flour",
    "120 g tahini",
    "100 g butter, softened",
    "150 g brown sugar",
    "1 egg",
    "170 g dark chocolate, chopped",
    "Flaky sea salt for topping"
  ],
  "recipeInstructions": [
    {
      "@type": "HowToStep",
      "name": "Make the dough",
      "text": "Cream butter, tahini, and sugar. Beat in the egg, then fold in flour and chocolate."
    },
    {
      "@type": "HowToStep",
      "name": "Chill",
      "text": "Rest the dough in the fridge for 30 minutes."
    },
    {
      "@type": "HowToStep",
      "name": "Bake",
      "text": "Scoop onto a lined tray, top with sea salt, and bake at 180°C for 12 minutes."
    }
  ]
}
</script>
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Recipe",
  "name": "Salted Tahini Chocolate Chip Cookies",
  "image": [
    "https://yourstore.com/cdn/shop/articles/tahini-cookies.jpg"
  ],
  "author": {
    "@type": "Person",
    "name": "Amina"
  },
  "datePublished": "2026-08-01",
  "description": "Chewy chocolate chip cookies with tahini and flaky sea salt.",
  "prepTime": "PT15M",
  "cookTime": "PT12M",
  "totalTime": "PT27M",
  "recipeYield": "18 cookies",
  "recipeCategory": "Dessert",
  "recipeCuisine": "American",
  "keywords": "tahini cookies, chocolate chip cookies",
  "nutrition": {
    "@type": "NutritionInformation",
    "calories": "210 calories"
  },
  "recipeIngredient": [
    "200 g all-purpose flour",
    "120 g tahini",
    "100 g butter, softened",
    "150 g brown sugar",
    "1 egg",
    "170 g dark chocolate, chopped",
    "Flaky sea salt for topping"
  ],
  "recipeInstructions": [
    {
      "@type": "HowToStep",
      "name": "Make the dough",
      "text": "Cream butter, tahini, and sugar. Beat in the egg, then fold in flour and chocolate."
    },
    {
      "@type": "HowToStep",
      "name": "Chill",
      "text": "Rest the dough in the fridge for 30 minutes."
    },
    {
      "@type": "HowToStep",
      "name": "Bake",
      "text": "Scoop onto a lined tray, top with sea salt, and bake at 180°C for 12 minutes."
    }
  ]
}
</script>
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Recipe",
  "name": "Salted Tahini Chocolate Chip Cookies",
  "image": [
    "https://yourstore.com/cdn/shop/articles/tahini-cookies.jpg"
  ],
  "author": {
    "@type": "Person",
    "name": "Amina"
  },
  "datePublished": "2026-08-01",
  "description": "Chewy chocolate chip cookies with tahini and flaky sea salt.",
  "prepTime": "PT15M",
  "cookTime": "PT12M",
  "totalTime": "PT27M",
  "recipeYield": "18 cookies",
  "recipeCategory": "Dessert",
  "recipeCuisine": "American",
  "keywords": "tahini cookies, chocolate chip cookies",
  "nutrition": {
    "@type": "NutritionInformation",
    "calories": "210 calories"
  },
  "recipeIngredient": [
    "200 g all-purpose flour",
    "120 g tahini",
    "100 g butter, softened",
    "150 g brown sugar",
    "1 egg",
    "170 g dark chocolate, chopped",
    "Flaky sea salt for topping"
  ],
  "recipeInstructions": [
    {
      "@type": "HowToStep",
      "name": "Make the dough",
      "text": "Cream butter, tahini, and sugar. Beat in the egg, then fold in flour and chocolate."
    },
    {
      "@type": "HowToStep",
      "name": "Chill",
      "text": "Rest the dough in the fridge for 30 minutes."
    },
    {
      "@type": "HowToStep",
      "name": "Bake",
      "text": "Scoop onto a lined tray, top with sea salt, and bake at 180°C for 12 minutes."
    }
  ]
}
</script>
<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "Recipe",
  "name": "Salted Tahini Chocolate Chip Cookies",
  "image": [
    "https://yourstore.com/cdn/shop/articles/tahini-cookies.jpg"
  ],
  "author": {
    "@type": "Person",
    "name": "Amina"
  },
  "datePublished": "2026-08-01",
  "description": "Chewy chocolate chip cookies with tahini and flaky sea salt.",
  "prepTime": "PT15M",
  "cookTime": "PT12M",
  "totalTime": "PT27M",
  "recipeYield": "18 cookies",
  "recipeCategory": "Dessert",
  "recipeCuisine": "American",
  "keywords": "tahini cookies, chocolate chip cookies",
  "nutrition": {
    "@type": "NutritionInformation",
    "calories": "210 calories"
  },
  "recipeIngredient": [
    "200 g all-purpose flour",
    "120 g tahini",
    "100 g butter, softened",
    "150 g brown sugar",
    "1 egg",
    "170 g dark chocolate, chopped",
    "Flaky sea salt for topping"
  ],
  "recipeInstructions": [
    {
      "@type": "HowToStep",
      "name": "Make the dough",
      "text": "Cream butter, tahini, and sugar. Beat in the egg, then fold in flour and chocolate."
    },
    {
      "@type": "HowToStep",
      "name": "Chill",
      "text": "Rest the dough in the fridge for 30 minutes."
    },
    {
      "@type": "HowToStep",
      "name": "Bake",
      "text": "Scoop onto a lined tray, top with sea salt, and bake at 180°C for 12 minutes."
    }
  ]
}
</script>

One rule above all others, straight from Google's guidelines: the markup must describe content visible on the page. A schema block claiming steps and ingredients the reader can't see is a policy violation, not an optimization.

How to add Recipe structured data to a Shopify blog post?

The manual way

Shopify's blog editor lets you edit a post's HTML (the <> button). You can paste the script there, or have a developer add a custom Liquid section to the article template. It works — with three real drawbacks:

  1. You hand-write JSON for every recipe post, and one missing comma silently kills the whole block.

  2. Every time you edit the visible recipe, you must remember to edit the markup to match.

  3. ISO 8601 durations and nested HowToStep objects are exactly the kind of thing that's easy to get subtly wrong.

The no-code way

In vevy.ai's Blog Builder, a Recipe block handles both halves at once. You drag the block into the post and fill in normal fields — title, image, prep and cook time (total time is calculated for you), servings, difficulty, ingredients, instructions, nutrition, chef's notes. That gives readers a designed recipe card in the post.

Then you click Generate structured data, publish, and vevy.ai injects the schema.org Recipe JSON-LD into the page's <head> automatically. The markup is generated from the visible card, so the two can't drift apart — and there's no code involved at any step.

Bonus for non-food stores: the block's labels are editable, so a craft or DIY guide can say "Supplies" and "Steps" instead of "Ingredients" and "Instructions."

How to validate the Recipe structured data

Run the published post through the Rich Results Test. It will tell you whether the Recipe item is detected, which recommended fields are missing, and whether the page is eligible. Then check Search Console → Enhancements occasionally — that's where errors surface across all your recipe posts at once.

Recipe markup is one of the few places in SEO where the payoff is visible: your post literally looks different in search. For content you've already written, that's twenty minutes well spent — or one button, if the block does it for you.

Share this article
Contents

Article by

Narmina

Narmina is one of the founders at vevy.ai. She has over 8 years of experience in SEO and content marketing in eCommerce and SaaS businesses. She loves optimizing content more than posing for photos, so there’s no professional shoot yet. Excuse her.

Article by

Narmina

Narmina is one of the founders at vevy.ai. She has over 8 years of experience in SEO and content marketing in eCommerce and SaaS businesses. She loves optimizing content more than posing for photos, so there’s no professional shoot yet. Excuse her.

Article by

Narmina

Narmina is one of the founders at vevy.ai. She has over 8 years of experience in SEO and content marketing in eCommerce and SaaS businesses. She loves optimizing content more than posing for photos, so there’s no professional shoot yet. Excuse her.

Create stunning, SEO-first blog posts for your Shopify store

Everything, step-by-step to rank higher on search engine results page and sell products with conversion SEO

Create stunning, SEO-first blog posts for your Shopify store

Everything, step-by-step to rank higher on search engine results page and sell products with conversion SEO

Create stunning, SEO-first blog posts for your Shopify store

Everything, step-by-step to rank higher on search engine results page and sell products with conversion SEO

Ultimate SEO Guide for Shopify Brands

Everything, step-by-step to rank higher on search engine results page and sell products with conversion SEO

Share this article

Blogs

Our Related Blogs

Our Related Blogs

Blogs

Our Related Blogs

Our Related Blogs

Blogs

Our Related Blogs

Our Related Blogs

Built for shopify stores

Create beautiful blog pages and human-first blog posts

vevy.ai automates keyword research, topic clustering, and blog post generation

Built for shopify stores

Create beautiful blog pages and human-first blog posts

vevy.ai automates keyword research, topic clustering, and blog post generation

Built for shopify stores

Create beautiful blog pages and human-first blog posts

vevy.ai automates keyword research, topic clustering, and blog post generation

Increase traffic, engage, and convert

Copyright © 2026 vevy.ai. All Rights Reserved.

Copyright © 2026 vevy.ai. All Rights Reserved.

Increase traffic, engage, and convert

Copyright © 2026 vevy.ai. All Rights Reserved.