DEV Community

Cover image for How to Build Schema Markup for AEO: A Step-by-Step Guide
Suraj Vishwakarma for Texavor

Posted on • Originally published at texavor.com

How to Build Schema Markup for AEO: A Step-by-Step Guide

TL;DR

Schema markup is the essential component for Answer Engine Optimization(AEO). A perfect schema markup helps chatbots and generative engines like ChatGPT, Gemini, Perplexity, Claude, and others to understand your website accurately. This schema markup is also used by traditional search engines such as Google and Bing. In this way, using schema markup, we can optimize our website for both SEO and AEO.

In this guide, we are going to look into the following:

  • What is Schema Markup?
  • What are the types of Schema Markup necessary for AEO?
  • Step-by-Step Guide to Building Schema Markup
  • Whare are the Best Practices for Schema Markup in AEO?
  • How to choose the right schema type for your content?

So, let's get started.

Understanding Schema Markup and Its Role in AEO

Schema markup (also known as structured data) is a piece of code that is added to your website's page that helps search engines and answer engines to understand the meaning of the page. Schema markup does not increase the rank for a traditional website, but it helps answer engine/search engines to understand the purpose and content of the webpage accurately. Schema markup uses a standardized pattern defined by schema.org. Schema markup consists of different properties, such as @type, name, and subjectOf, which describe an entity and its relationships. Having schema markup strengthens the authority and trust signals for the answer engines.

Schema markup implementation can improve the citation of a website by 45%. It also helps search engines to cite your product/website accurately for the user query. Accurate information will increase the chance of conversion when they visit the website. Perplexity especially relies on the entity graphs, not just URLs.

Types of Schema Markup for AEO

Schema markup can have multiple types based on the purpose. Here are some of the major types of schema markup:

  • Organization Schema: Establishing your business/website with the correct name, logo, contact info, social profile, and corporate details.
  • LocalBusiness Schema: This is particularly for the businesses that has physical store. This can include entities such as hours of operation, address, phone, service areas, and any relevant location-specific information.
  • Product Schema: This is for when you have a physical product that can be associated with an entity, such as pricing, availability, reviews, SKUs, and any ongoing offers.
  • FAQ Schema: This is a structured Q&A format that contains commonly asked questions regarding the page or article.
  • HowTo Schema: It is used for pages that require step-by-step instructions that AI can cite as a guide.
  • Article & Author Schema: It establishes a connection between the content and the author. This strengthens the E-E-A-T(Experience, Expertise, Authoritativeness, and Trustworthiness) signals.

Among these, we are going to focus primarily on the FAQ, HowTo, and Article & Author schema. These schemas are the most important to the Answer engine for citation.

How to Choose the right schema type for your content

Choosing the correct schema type isn't about adding more markup but accurately describing what the content is so search engine and answer engine tools can understand, trust, and cite it accurately. Below is the table define which type of Schema you can choose to describe each page.

Page purpose Primary schema
Blog or technical post Article / TechArticle
Step-by-step guide HowTo
Q&A content FAQPage
SaaS / tool page SoftwareApplication
Product or pricing page Product
Company info Organization
Author bio Person

Step-by-Step Guide to Building Schema Markup

Let's look into the details step-by-step to set up the Markup on your webpage. We are also going to look at "How to set up Markup schema in Nextjs?"

Step 1: Identify the Content Type and Goals

First, identify what the content of the page represents. It can be representing aritcle, a product, a blog, an FAQ, a tool, and other. Then decide the goal, whether it is for rich content, AI Visibility, or information.

Step 2: Choose the Appropriate Schema Type

After identifying the type of content, we can now match it to the correct schema type. As we discussed previously different schema types that you can choose to most accurately represent your schema type.

You can also use a tool such as:

  • Google's Structured Data Markup Helper
  • Visual Schema builders or schema generator

to identify the schema.

Step 3: Generate and Validate the Schema

Schema markup has two main formats:

  • JSON-LD: It is JavaScript Object Notation for Linked Data(JSON-LD). It is implemented as a separate script tag, making it easier to manage, update, and scale

  • Microdata: It is directly embedded into HTML elements using attributes such as itemscope, itemtype, and itemprop. It makes code less readable and difficult to maintain.

Here is a key difference between them.

Feature Microdata JSON-LD
Location Inside HTML tags Separate <script>
Readability Low High
Maintenance Hard Easy
React / Next.js ❌ Poor ✅ Excellent
Google recommendation
AEO / AI tools ❌ Weak ✅ Strong

As you can see, AEO/AI tools prefer JSON-LD format; we are going to use that format when creating our schema markup onward in this article.

Below is the example schema markup in JSON-LD format for different types of schema that you understand and implement in your website, as per your page.

TechArticle Schema

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "TechArticle",
  "headline": "How to Implement Schema Markup for AEO",
  "description": "A step-by-step guide to creating and validating schema markup for AI-driven search engines.",
  "author": {
    "@type": "Person",
    "name": "John Doe"
  },
  "publisher": {
    "@type": "Organization",
    "name": "Example SaaS",
    "logo": {
      "@type": "ImageObject",
      "url": "https://example.com/logo.png"
    }
  },
  "datePublished": "2025-01-10",
  "dateModified": "2025-01-15",
  "mainEntityOfPage": {
    "@type": "WebPage",
    "@id": "https://example.com/schema-markup-guide"
  }
}
</script>
Enter fullscreen mode Exit fullscreen mode

This lets AI tools understand:

  • What the content is
  • Who wrote it
  • Who published it
  • Where it lives

FAQ Schema

Use only if FAQs are visible on the page.

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [
    {
      "@type": "Question",
      "name": "What is schema markup?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Schema markup is structured data that helps search engines and AI tools understand webpage content."
      }
    },
    {
      "@type": "Question",
      "name": "Does schema help with AI search results?",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "Yes, schema improves content extraction and citation in AI-powered answer engines like ChatGPT and Perplexity."
      }
    }
  ]
}
</script>
Enter fullscreen mode Exit fullscreen mode

You can use Texavor's Free FAQ Schema Generator that can help you in creating FAQ schema through QnA and also with URL that can pull FAQs from website and articles to create the schema.

HowTo Schema

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "HowTo",
  "name": "How to Add Schema Markup to a Website",
  "description": "A step-by-step guide to creating and implementing schema markup using JSON-LD.",
  "totalTime": "PT30M",
  "supply": [
    {
      "@type": "HowToSupply",
      "name": "Text editor"
    }
  ],
  "tool": [
    {
      "@type": "HowToTool",
      "name": "Schema.org Validator"
    },
    {
      "@type": "HowToTool",
      "name": "Google Rich Results Test"
    }
  ],
  "step": [
    {
      "@type": "HowToStep",
      "name": "Identify the content type",
      "text": "Determine whether the page is an article, product, FAQ, or guide before creating schema."
    },
    {
      "@type": "HowToStep",
      "name": "Create JSON-LD schema",
      "text": "Write schema markup in JSON-LD format using the appropriate Schema.org type."
    },
    {
      "@type": "HowToStep",
      "name": "Validate the schema",
      "text": "Test the markup using Schema.org Validator and Google Rich Results Test."
    },
    {
      "@type": "HowToStep",
      "name": "Implement on the website",
      "text": "Embed the validated schema into the HTML or CMS of your website."
    }
  ]
}
</script>
Enter fullscreen mode Exit fullscreen mode

This tells AI about what the instruction is for, the name, description, tool, and steps to follow.

Here are some of the common mistakes to avoid when writing schema:

  • Using the FAQ Schema without having a visual FAQ section
  • Mismatch between the content and the schema
  • Forgeting publisher and author for Article/TechArticle Schema\
  • Adding multiple primary schema types

You can validate the schema through the following:

You can also use the above tools for creating schema visually.

Step 4: Implement the Schema on your website

You can now embed the validated schema into the <head> or <body> of your HTML. If you are using any CMS like Wordpress they provide ways to add code snippets into the Head section of the HTML.

For NextJS, you can follow a JSON-LD implementation. Below is the code for the NextJS implementation. You can create the schema in the page.tsx file of any route.

export default async function Page({ params }) {
  const { id } = await params
  const product = await getProduct(id)

  const jsonLd = {
    '@context': 'https://schema.org',
    '@type': 'Product',
    name: product.name,
    image: product.image,
    description: product.description,
  }

  return (
    <section>
      {/* Add JSON-LD to your page */}
      <script
        type="application/ld+json"
        dangerouslySetInnerHTML={{
          __html: JSON.stringify(jsonLd).replace(/</g, '\\u003c'),
        }}
      />
      {/* ... */}
    </section>
  )
}
Enter fullscreen mode Exit fullscreen mode

Step 5: Test, Monitor, and Optimize

After successful deployment, you can test the schema through with URL to verify correct schema implementation. You should monitor the schema for enhancements, errors, and updates.

Best Practices for Schema Markup in AEO

Here are some of the best practices that you should follow for better AEO schema markup:

  • Accurate and Up-to-Date: Make sure the schema markup is accurate to the content. You should also keep updating the schema as per changes in the content. This increases the understanding and trust in answer engines.
  • Structure Content for Answer Extraction: Focus on user intent for the schema choice and selection for AEO. You should optimize the schema with search queries.
  • Avoid Common Mistakes: We have already discussed the common mistakes for schema markup. Try to minimize the mistakes as much as possible.
  • Avoid Schema Overload: More Schema does not result in better citations. Keep it clean, minimal, and accurate to the content.

Conclusion

By implementing schema markup effectively, it is more likely that your content will be cited by Answer Engines. Use the tools and steps outlined in this guide to stay ahead in the evolving landscape of Answer Engine Optimization.

Thanks for reading the article.

Top comments (0)