Geodocs.dev

Recipe FAQ Pairs Schema for AI Search

ShareLinkedIn

Open this article in your favorite AI assistant for deeper analysis, summaries, or follow-up questions.

Pairing Recipe and FAQPage JSON-LD on the same page lets AI engines treat the page as both a structured recipe and a Q&A surface. Per Google Search Central, the recipe is marked up at the page root and the FAQPage is published as a sibling block in a single @graph array — not nested inside the recipe.

TL;DR

Publish two top-level JSON-LD nodes on the same recipe page: a Recipe node (with name, recipeIngredient, recipeInstructions, nutrition, aggregateRating) and a FAQPage node whose mainEntity is an array of three to eight cooking-related Question/Answer pairs. Use a single @graph to bind them. Validate with the Google Rich Results Test before publishing.

Specification overview

Google Search Central documents Recipe and FAQPage as separate structured-data types, each with its own eligibility rules (Google Search Central, 2026). Both are valid on a single URL, but the relationship between them must be expressed correctly:

  • Recipe lives at the page root and describes the recipe entity itself.
  • FAQPage lives at the page root as a sibling and exposes question/answer pairs about the recipe (substitutions, timing, equipment, allergens).
  • The FAQPage mainEntity array must contain Question items, each with one Answer in acceptedAnswer (Google Search Central, 2026).
  • Do not nest FAQPage inside Recipe. Recipe has no property that legally accepts a FAQPage, and validators silently drop the nested node.

Required fields

Recipe node

FieldRequired by GoogleNotes
@typeyesMust be "Recipe"
nameyesTitle of the recipe
imageyesAt least one high-resolution image URL; per Google's June 2025 update, the image property directly affects rich-result eligibility (Search Engine Journal, 2025)
recipeIngredientyesArray of strings, one per ingredient line
recipeInstructionsyesArray of HowToStep (preferred) or strings
authorrecommendedPerson or Organization with name
datePublishedrecommendedISO 8601 date
descriptionrecommendedOne- to two-sentence plain text
prepTime, cookTime, totalTimerecommendedISO 8601 durations (PT15M, PT1H)
recipeYieldrecommendedServings or output quantity
nutritionrecommendedNutritionInformation with calories etc.
aggregateRatingrecommendedDrives star ratings in rich results
recipeCategory, recipeCuisinerecommendedImproves AI-engine query routing

FAQPage node

FieldRequired by GoogleNotes
@typeyesMust be "FAQPage"
mainEntityyesArray of Question items, minimum one valid item
mainEntity[].@typeyes"Question"
mainEntity[].nameyesPlain-text question, no HTML
mainEntity[].acceptedAnsweryesSingle Answer per question
mainEntity[].acceptedAnswer.@typeyes"Answer"
mainEntity[].acceptedAnswer.textyesFull answer text; HTML allowed but should be lightweight

Q&A pair patterns for cooking content

AI engines extract the following question types most often from recipe pages. Aim for three to eight Q&A pairs per page, written so the first sentence of each answer is independently citable.

  1. Substitutions — "Can I substitute almond flour for all-purpose flour in this recipe?"
  2. Timing variations — "How do I adjust the cook time at high altitude?"
  3. Equipment alternatives — "Can I make this without a stand mixer?"
  4. Storage and reheating — "How long does this keep in the refrigerator?"
  5. Dietary modifications — "How do I make this gluten-free?"
  6. Allergen disclosures — "Does this recipe contain nuts or dairy?"
  7. Doubling and scaling — "Can I double the recipe in the same pan?"
  8. Make-ahead — "Can I prepare this the night before?"

Write answers in two to four sentences and lead with the direct answer (yes/no, the substitution, the storage window). AI Overviews preferentially extract the first 30 to 50 words.

Full JSON-LD example

The following compiles cleanly through the Google Rich Results Test as of 2026-05.

{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "Recipe",
      "@id": "https://example.com/recipes/almond-flour-pancakes#recipe",
      "name": "Almond Flour Pancakes",
      "image": [
        "https://example.com/img/almond-flour-pancakes-1x1.jpg",
        "https://example.com/img/almond-flour-pancakes-4x3.jpg",
        "https://example.com/img/almond-flour-pancakes-16x9.jpg"
      ],
      "author": { "@type": "Person", "name": "Maria Lin" },
      "datePublished": "2026-05-03",
      "description": "Light, gluten-free pancakes made with almond flour and Greek yogurt.",
      "recipeCuisine": "American",
      "recipeCategory": "Breakfast",
      "keywords": "almond flour, gluten-free, pancakes",
      "prepTime": "PT10M",
      "cookTime": "PT15M",
      "totalTime": "PT25M",
      "recipeYield": "8 pancakes",
      "recipeIngredient": [
        "1 1/2 cups almond flour",
        "2 large eggs",
        "1/2 cup Greek yogurt",
        "1 tbsp maple syrup",
        "1/2 tsp baking powder",
        "1/4 tsp fine sea salt"
      ],
      "recipeInstructions": [
        { "@type": "HowToStep", "name": "Mix", "text": "Whisk eggs, yogurt, and maple syrup until smooth." },
        { "@type": "HowToStep", "name": "Combine", "text": "Fold in almond flour, baking powder, and salt." },
        { "@type": "HowToStep", "name": "Cook", "text": "Cook 1/4 cup batter per pancake on medium-low heat for 2-3 minutes per side." }
      ],
      "nutrition": {
        "@type": "NutritionInformation",
        "calories": "180 kcal",
        "servingSize": "1 pancake"
      },
      "aggregateRating": {
        "@type": "AggregateRating",
        "ratingValue": "4.8",
        "reviewCount": "212"
      }
    },
    {
      "@type": "FAQPage",
      "@id": "https://example.com/recipes/almond-flour-pancakes#faq",
      "mainEntity": [
        {
          "@type": "Question",
          "name": "Can I substitute coconut flour for almond flour?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "Not at a 1:1 ratio. Coconut flour absorbs roughly four times more liquid than almond flour, so you would use about 1/3 cup coconut flour and add an extra egg and 1/4 cup yogurt."
          }
        },
        {
          "@type": "Question",
          "name": "How long do almond flour pancakes keep?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "Three to four days refrigerated in an airtight container, or up to two months frozen between sheets of parchment."
          }
        },
        {
          "@type": "Question",
          "name": "Are these pancakes gluten-free?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "Yes. Almond flour, Greek yogurt, eggs, baking powder, and maple syrup are all naturally gluten-free, though check baking powder labels for cross-contamination warnings."
          }
        },
        {
          "@type": "Question",
          "name": "Can I make the batter the night before?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "Yes, refrigerate overnight in a covered bowl. Stir before cooking; the batter thickens as the almond flour hydrates."
          }
        }
      ]
    }
  ]
}

Validation checklist

Before publishing:

  1. Run the page through the Google Rich Results Test. Confirm both Recipe and FAQPage are detected as separate items.
  2. Confirm every Question.name is plain text and matches the visible question on the page.
  3. Confirm every acceptedAnswer.text matches the visible answer on the page.
  4. Confirm Recipe.image returns at least one resolvable image (4:3, 16:9, and 1:1 aspect ratios are recommended by Google).
  5. Confirm recipeInstructions items are HowToStep objects, not a single concatenated string — step-level extraction is what AI Overviews surface.

Common implementation mistakes

  • Nesting FAQPage inside Recipe. Recipe has no property that accepts a FAQPage, so validators silently discard the nested node and the page loses FAQ rich-result eligibility.
  • Marking up FAQs that are not visible on the page. Google explicitly disqualifies hidden Q&A from rich results; AI engines also penalize cloaked content.
  • Single concatenated recipeInstructions string. Step-level HowToStep markup is what AI engines extract for guided experiences.
  • Stale aggregateRating. Reviews must be visibly published on the same URL; mismatched counts fail validation.
  • Missing image property. Per Google's June 2025 update to recipe documentation, image directly affects which thumbnail is chosen for rich results (Search Engine Journal, 2025).

FAQ

Q: Can I nest FAQPage inside Recipe?

No. Recipe has no property that legally accepts a FAQPage, so validators discard the nested node and the page loses FAQ rich-result eligibility. Always publish Recipe and FAQPage as sibling top-level entries inside a single @graph array.

Q: How many Q&A pairs should I include?

Three to eight pairs per recipe page. Fewer than three rarely produces enough surface area for AI extraction; more than eight typically dilutes the question quality and leads to redundant pairs that AI engines deduplicate.

Google has narrowed FAQ rich-result eligibility since 2023, primarily to government and health sites for the rich-snippet treatment, but FAQPage markup remains valuable for AI Overviews extraction and for engines such as Perplexity and ChatGPT search, which use the structured data even when no visual rich result is rendered.

Q: Can I reuse the same FAQ pairs across many recipes?

Partially. Generic pairs ("is this gluten-free?") are fine to template, but answers must be specific to each recipe — substitution ratios, storage windows, and allergen disclosures change per dish. Verbatim duplicate Q&A across many URLs gets deduplicated by AI engines and weakens citation share.

Q: Where in the HTML should the JSON-LD live?

Inside a