. Use a generator at schema.org or Merkle's schema-generator to create the block."},{"@type":"HowToStep","position":7,"name":"Validate every page type with Rich Results Test","text":"For each page type (homepage, blog post, FAQ page, product page), run the URL through Google's Rich Results Test . It will show every schema block found and report any errors. Fix all errors before assuming your schema is working."}],"datePublished":"2026-04-27","dateModified":"2026-04-27"}
All How-To Guides
WordPress10 min·7 steps

How to Add Schema Markup to WordPress (2026 Step-by-Step Guide)

WordPress has the easiest schema-markup ecosystem of any platform. The major SEO plugins (Yoast, Rank Math, Schema Pro) all auto-generate JSON-LD for the most important page types: Organization, Article, BreadcrumbList, FAQPage, HowTo, Product. You can also paste custom JSON-LD blocks via header-injection plugins. Most sites should pick one plugin and skip the manual path entirely.

What you'll need before you start

  • A WordPress site you can administer (wordpress.org or wordpress.com Business+)
  • An SEO plugin installed (Yoast, Rank Math, or SEOPress) OR ability to use a code-injection plugin
  • Roughly 10 minutes for the plugin route, longer if you're hand-writing JSON-LD

How to add schema markup on WordPress: Step-by-step

  1. 1

    Install Rank Math (recommended) or Yoast SEO

    Both Rank Math and Yoast auto-generate solid JSON-LD without configuration. Rank Math tends to win comparison tests for built-in schema types and customization. Yoast SEO is more conservative but has the longest track record. Either works. Install: PluginsAdd New Plugin → search for the plugin → Install NowActivate. Skip Schema Pro unless you have specific needs (it's a paid product).

  2. 2

    Configure Organization schema for your site

    This is the site-wide schema block. In Rank Math: Rank MathTitles & MetaLocal SEO → set Person or Company, then fill business name, logo, social profiles. In Yoast: Yoast SEOSettingsSite representation. Both plugins emit Organization schema in the homepage <head> automatically.

  3. 3

    Set the default content type per post type

    In Rank Math: Titles & Meta → click each post type → set Schema Type (Article for blog posts, Product for products, NewsArticle for news, etc.). In Yoast: page-level Schema settings under each post's editor sidebar. Most sites should set blog posts to BlogPosting or Article and pages to WebPage.

  4. 4

    Add FAQ schema to FAQ pages

    In the WordPress editor, both Rank Math and Yoast offer FAQ blocks (in Rank Math: insert a Rank Math FAQ Block; in Yoast: insert a Yoast FAQ Block). Each Q&A pair you add automatically becomes a FAQ schema entry in the page's JSON-LD. Use this on any page with genuine question/answer content - product pages, support pages, the FAQ page itself.

  5. 5

    Add HowTo schema to step-by-step content

    For procedural content (recipes, tutorials, guides like this one), use the HowTo block. Rank Math has a Rank Math HowTo Block; Yoast has a HowTo Block. Each numbered step becomes part of the JSON-LD HowToStep array. Pair this with realistic totalTime and supply fields for richer extraction by AI assistants.

  6. 6

    (Optional) Add custom JSON-LD blocks

    For schema types your plugin doesn't cover (e.g., LocalBusiness with detailed opening hours, Course, Recipe with nutritionInformation, JobPosting), paste raw JSON-LD via a header-injection plugin like Insert Headers and Footers or WPCode. Wrap your JSON object in <script type="application/ld+json">...</script>. Use a generator at schema.org or Merkle's schema-generator to create the block.

  7. 7

    Validate every page type with Rich Results Test

    For each page type (homepage, blog post, FAQ page, product page), run the URL through Google's Rich Results Test. It will show every schema block found and report any errors. Fix all errors before assuming your schema is working.

How to verify your setup is working

The Rich Results Test confirms each block is parseable. After Google has crawled your site, the Enhancements reports in Search Console show counts of valid pages and any errors detected by Google's crawl - typically populated within 1-2 weeks of deploying schema. URL Inspection in GSC on any specific URL shows the structured data Google extracted from the latest crawl.

Common issues and fixes

Rank Math and Yoast both fire schema and I'm getting duplicate errors

Don't run two SEO plugins at once. Pick one - run only Rank Math OR only Yoast - and disable the other. They both inject their own Organization, Article, and BreadcrumbList schema; running both creates duplicate @id values which Google flags as errors.

My logo URL is wrong in the Organization schema

Most plugins read the logo from your site identity in WordPress Customizer (AppearanceCustomizeSite Identity). Update the logo there and the change will reflect in schema after the next page render. Schema-specific logo URLs override this in some plugins - check Rank Math's Local SEO settings or Yoast's Site representation page.

FAQ schema markup isn't displaying in Google search anymore

In August 2023 Google reduced FAQ rich result eligibility to a small set of authoritative sites (mostly government and large healthcare). The schema is still valid and AI assistants still extract it for citations - but Google search results almost never display FAQ rich snippets now. Keep the schema for AI extractors; don't expect Google rich results.

Frequently asked questions

Do I need a plugin to add schema markup to WordPress?

Practically yes - manual JSON-LD is doable but tedious to keep in sync as content changes. Rank Math and Yoast both auto-generate the most important schema types (Organization, Article, BreadcrumbList, FAQ, HowTo) for free. The manual path makes sense only for unusual schema types these plugins don't cover.

Is Rank Math or Yoast better for schema markup?

Rank Math has more built-in schema types in the free tier and a more flexible schema editor. Yoast has the longer track record and is more conservative (less likely to break with WordPress updates). For new sites, Rank Math has the edge on schema specifically. Both are solid choices.

How do I add Product schema to WooCommerce in WordPress?

WooCommerce emits basic Product schema automatically (name, image, description). For full Product schema with offers, aggregateRating, reviews, and brand, install Rank Math (free tier includes WooCommerce schema) or Yoast WooCommerce SEO (paid add-on). Both auto-populate fields from the product editor and review data.

Can I add schema markup to WordPress.com?

On Business plan and above, yes - you can install plugins like Rank Math or Yoast. On Free, Personal, or Premium plans, plugins aren't allowed; you'd be stuck with whatever schema WordPress.com's themes emit by default (which is minimal). Upgrade to Business as the cheapest path to proper schema markup.

What schema markup does Google use most for AI Overviews?

Article, FAQPage, HowTo, Product, Recipe, and Organization show up most often in AI Overview citations. AI assistants (ChatGPT, Perplexity, Gemini, Claude) all parse these as primary sources for factual extraction. Specifically: HowTo with proper HowToStep arrays gets cited heavily for procedural queries, and FAQPage with verbatim PAA-style questions gets pulled into AI answers regularly.

How do I check if schema markup is working on my WordPress site?

Three checks. (1) Run individual URLs through Google's Rich Results Test. (2) Use URL Inspection in Search Console on the same URL - it shows what Google's actual crawler parsed. (3) Look at Search ConsoleEnhancements after a week to see aggregate health across your site.

Once you're set up, MeasureBoard turns the data into action

MeasureBoard connects to your analytics, search, and SEO tooling and generates AI-powered weekly reports, GEO readiness scores, and a dedicated AI analyst that answers questions in plain English. Free to start, connects in 30 seconds.

Get Started Free