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
- Install a structured data plugin, or open your CMS's search settings.
- Set the format to JSON-LD.
- Attach the markup to the page it describes.
- Validate it in the Rich Results Test.
- 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.
| Route | Where you set it | What it does |
|---|---|---|
| Plugin | A plugin built for structured data | Specifies the markup for you, no HTML editing |
| Search engine settings page | Inside your CMS, where one exists | Lets you specify structured data there |
| Injected JSON-LD | A script or embedded widget | Adds 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.
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.

