Asset 20 8 2
Does AI recommend your business? Run the free check →

Join 15,000 business owners, marketers and entrepreneurs. The Sunday newsletter you'll be annoyed only arrives once a week.

Article

How to Add Schema to WordPress (2026): The JSON-LD Route

On WordPress you usually can't edit the HTML directly, so add structured data through a plugin that lets you specify it, or through your search engine settings page if you have one. Write it as JSON-LD, put it on the page it describes, fill in every required property, then check it in the Rich Results Test.

The quick route to schema on a WordPress page

  1. Install a structured data plugin, or open your CMS's search settings.
  2. Set the format to JSON-LD.
  3. Attach the markup to the page it describes.
  4. Validate it in the Rich Results Test.
  5. Watch the Rich result status reports after launch.

Google's developer documentation recommends JSON-LD, and on WordPress that's the sensible pick because it sits in its own script tag, apart from your content. The format comparison is in Google's introduction to structured data.

The last two steps do different jobs. The Rich Results Test belongs to development, so run it before a page goes live. The status reports come afterwards, to catch anything that goes wrong once the page is live.

First time? Our plugin install walkthrough covers the steps.

Where each schema route lives on a WordPress site

Structured data can reach a WordPress page by three realistic routes.

RouteWhere you set itWhat it does
PluginA plugin built for structured dataSpecifies the markup for you, no HTML editing
Search engine settings pageInside your CMS, where one existsLets you specify structured data there
Injected JSON-LDA script or embedded widgetAdds markup dynamically, and Google can still read it

The plugin route

A plugin that lets you specify structured data is one of the two routes Google names when you can't edit the HTML. If you already run one of the WordPress SEO plugins, check whether it lets you specify structured data before adding another. One tool doing the job is easier to keep updated than two.

The settings page route

Some content management systems include a search engine settings page with room for structured data. If yours has one, try it first: the markup then lives inside a tool you already maintain.

The injected script route

Markup doesn't have to be in the page from the start. When a widget or snippet of JavaScript drops JSON-LD in dynamically, Google can still read it. That's handy to know if a page builder or third-party block adds its own.

The catch: rich results need visible content and every required property

Adding markup isn't the same as qualifying for enhanced results. Two rules decide it.

Rule one: an object missing any required property isn't eligible for enhanced display in Search, however tidy everything else looks. Rule two: you can only mark up what a reader can see. Marking up a review, an FAQ or a product detail that isn't on screen goes against Google's structured data guidelines.

That's why the content comes before the code. Get the thing you want described onto the page, then describe it.

Work with me

Want AI doing the heavy lifting in your marketing?

I build the systems that handle the boring 80 percent, so you get your week back. Done properly, with the human kept in.

What to check when your schema isn't showing

When the test flags problems, or a page that once showed enhancements quietly stops, run down this list.

  • Missing fields: leave out a single required property and that object loses eligibility.
  • Invisible items: every marked-up detail should appear on screen for the reader, not only in the code.
  • Blocked access: robots.txt, a noindex setting or any other access control stops Googlebot reaching the page, and its markup with it.
  • Wrong location: the markup should sit on the page it describes.
  • Later breakage: templating or serving issues can break markup that passed at launch, which is what the status reports are for.

For a fuller walkthrough of checking your markup, see our guide on testing schema markup.

Frequently asked questions

Can I put my business details on every page?

Only where the page is about your business. Google's policy is to place structured data on the page it describes, unless its documentation says otherwise.

Will my markup break if I change themes?

It can. Templating and serving issues are a known cause, so retest your key pages after any theme or template change.

Do I need a developer to add schema?

Not usually. A plugin or settings screen covers most needs, and JSON-LD added by a widget counts too.

Is it safe to run two schema plugins at once?

It's simpler to let one tool handle it, so there's a single place to manage your markup. Afterwards, put a page's address through Google's checker to see what it outputs.

Do Microdata and RDFa still work?

Yes. Google Search accepts both alongside JSON-LD, though its documentation names JSON-LD as the preferred choice.

Which schema types can I add to my pages?

Google's structured data documentation lists every type it handles, so look up the one that fits your content on that help page.

Published and maintained by the Lilach Bullock team, covering marketing, AI and business growth.
Your buyers are asking AI who to use. Does it say you?

See for free whether ChatGPT, Claude, Perplexity, Gemini and Google name you, and get the plan to become the answer.

Check my AI visibility →
Sundays only

Get the Sunday newsletter.

One email a week. AI experiments, marketing tactics, and the workflows Lilach is building right now in her own business.

Subscribe free

Let’s get your marketing running on AI.

Book a free 30-minute call

We figure out what you need, where AI fits in, and what working together would look like.

Book the call →

Or take the 30-second calculator

You’ll see the hours and the money quietly leaking out of your week, and the three workflows worth building first.

Take the calculator →

Or grab the free AI resource library

Prompt packs, templates, checklists, and swipe files. The exact tools I build for paying clients. Yours, free.

Get the library →
Keep reading

More from the blog.