Guide Structured data · 2 of 8

Duplicate Schema Markup in WordPress: Find and Fix Conflicts

Find duplicate schema markup in WordPress, trace plugin and theme conflicts, and test a focused fix without removing useful structured data from your pages.

Updated 5 min read Fact-checked by Dex · 6 claims, 0 open

Key takeaways

  • Several Schema items can be valid; check the facts, not just the count.
  • Trace conflicting output to its plugin, theme, or custom code.
  • Give each item a clear owner and test one change at a time.
  • Verify the live page with dedicated tests and a broader quality review.

To fix duplicate schema markup in WordPress, check the items on the page. Find the source of each conflicting record. It may be a plugin, a theme, or custom code. Remove unwanted output at its source. Then test the live page again.

Do not delete markup simply because a tool finds several items. A page can describe an article, its publisher, and its breadcrumbs. Check whether two records give different facts about the same thing.

This guide focuses on finding and correcting that conflict. For the broader concepts and setup choices, start with our structured data SEO guide.

When Is Repeated Schema Actually a Problem?

Separate the number of script blocks from the facts they contain. Two blocks may describe different things or connect related facts. Google’s structured data guidelines allow multiple right items on a page. For repeated company entities, keep the business and publisher identity consistent so both sources describe the same business.

Look closer when two records of the same article disagree about its author or dates, or two publisher records give different business details. Check which description matches the page and the business’s approved facts.

Identical repetition is worth reviewing for upkeep, but repetition alone does not establish a Google penalty. Do not diagnose a ranking loss from a count of Schema items. Write down what is wrong first.

Why Does WordPress Output Duplicate Schema?

A site may have an SEO plugin, a separate Schema plugin, theme features, and code added to a template. More than one can be configured to describe the same article or breadcrumb trail.

A common trigger is a change in the site. A new plugin is installed, but an older template still adds its own markup. A replacement theme introduces a feature that an existing plugin already handles.

Start with a list of possible sources. Include custom snippets and code managed by a developer. The list tells you where to investigate; it does not prove which source produced a given item.

How to Find and Compare the Markup

  1. Choose an chosen public URL and save the first test result.
  2. Open Google’s Rich Results Test and check the detected items right to its supported features.
  3. Use the Schema Markup Validator to check the Schema.org markup more broadly.
  4. Open the page source and search for application/ld+json to locate JSON-LD blocks. Also consider other markup formats.
  5. If the page adds content with JavaScript, check the rendered page as well as the first source.

For each suspected duplicate, record its type, identifier where present, page URL, and conflicting fields. Do not expect every item to appear in every tool. The tools answer different questions. When the repeated item describes a post, check Article and BlogPosting fields against the live article.

Use a small comparison sheet instead of relying on screenshots alone:

Item Compare Evidence to keep
Article or BlogPosting Headline, author, dates, and page identity. Visible article and approved publishing record.
Organization Business name, URL, and identifiers. Current business facts.
BreadcrumbList Trail, positions, and destinations. Navigation and working public links.

Keep the test date and the exact URL with the record. A cached test or a different page version can make a later comparison misleading.

How to Identify the Plugin or Theme Responsible

Review the settings of the likely sources. Comments in the code may help you find the source. Confirm it with one controlled change. Do not blame the first plugin you know. Check what it adds to the page. If the mismatch concerns a byline, connect author profiles to their articles to find the correct profile source.

On a staging copy, save the current settings and change one right output option at a time. Refresh the test page and compare the markup. Record which item disappeared or changed.

If no setting controls the output, ask the developer to trace the code. It may be in the theme, a template, or a custom snippet. A plugin may have other jobs too. Switching it off can change more than Schema.

Check more than one page type before accepting the diagnosis. A setting that fixes an article may also affect service pages or product templates.

How to Fix Conflicts Without Removing Useful Markup

Choose a clear owner for each item. One system may handle article markup while another handles breadcrumbs. You do not need to force every valid item into one script block. For conflicting offers, choose and test Product and Offer data against the real catalog values.

Use supported settings or a reviewed code change to remove the unwanted output. Keep a record of what was changed and why. Avoid editing a parent theme file just to hide a symptom that could return after an update.

Then compare the remaining facts with the visible page. Removing one source does not make the other source correct. Fix an outdated author, image, or business detail where that facts is maintained.

If the site uses caching, clear the chosen caches after the change. Test the public response again. A saved setting is not proof of a live fix. Check what visitors and search tools receive.

Example: Two Breadcrumb Sources on One Blog Post

Imagine a fictional consulting site. Its visible breadcrumb is Home → Guides → Hiring a Consultant. A theme outputs that trail, while a second part still points to an old Resources address that no longer works. For the intended navigation path, build and test a breadcrumb trail before comparing the two outputs.

The reviewer saves both outputs and confirms the broken destination. On staging, the developer changes only the second part’s breadcrumb output. The valid trail remains, and the unwanted record disappears.

The team then checks another guide and a service page. The team approves the change only after the checks pass. Useful markup and links must still work. This is a teaching example, not a measured customer result.

Two different trails can also be intentional. Google’s breadcrumb documentation includes multiple-trail examples. Judge the paths and their purpose, rather than declaring every second BreadcrumbList invalid.

What Should You Check After the Fix?

Run the same tests on the live URL. Compare the remaining items with the first record, confirm the conflicting facts are resolved, and check that useful markup has not disappeared. If Google still reports the issue, fix and validate Search Console schema issues using the live version you just released.

Review the page itself too: headings, navigation, important links, images, and forms. Our CMS publishing checklist can help with this release check.

A clean test does not guarantee a rich result or a ranking increase. Google looks beyond a code check. Use the test to verify the setup, and use search evidence to review later performance.

Add the ownership decision to the site’s upkeep notes. Recheck a sample after changing plugins, themes, or CMS templates. That helps prevent a later update from restoring the output you removed.

Where DEX Fits Into the Page Review

DEX Health analyzes page quality and SEO, including on the free plan. Use it to review the live page alongside the dedicated structured data tests. Give each issue a clear fix and an owner.

The Schema conflict still needs to be traced to the part producing it. A general page score is not proof that every item is correct, and a content workflow does not replace a developer’s review of plugin or theme output.

Once the technical fix is verified, keep the page’s content and business facts current. Start your free SEO plan with DEX to connect ongoing content work with page-quality review.

FAQ

Can I use more than one Schema plugin?

Multiple tools can have different jobs. Check which items each produces and whether their facts agree. Avoid assigning the same output to several tools without a clear reason.

Why is old markup still visible after I changed a setting?

Check whether another component still produces it and whether a cache serves an older response. Compare the public output after the change rather than relying only on the editor settings.

Can valid markup still fail to appear as a rich result?

Yes. Google does not guarantee a rich result for correctly marked-up content. Technical validity is one part of the review, alongside the relevant content and feature guidelines.

Sources

  1. General structured data guidelines · Google

Dex SEO is an AI SEO agent for small businesses. Every article here is planned from search data, drafted by Dex, fact-checked against the sources it cites, and reviewed by the team before it is published.

How this article was made: planned and drafted by Dex from search data, fact-checked by Dex (6 claims checked), then approved by the Dex SEO team.

Next in this cluster

Keep going

All topics