When the breadcrumb Google actually shows in search results doesn’t match either your BreadcrumbList markup or your visible on-page breadcrumb, the underlying cause is almost always that Google is favoring its own inferred hierarchy, built from URL structure, internal linking, and canonicalization signals, over what your markup and visual breadcrumb are asserting, because those signals disagree with each other or with what Google can independently verify. Diagnosing this means checking each of those contributing signals systematically rather than assuming the markup itself is simply broken.
Validate schema per-template, not just on one sample page
The most common practical mistake in diagnosing this is checking BreadcrumbList validity on a single page (often the homepage or one hand-picked example) and assuming it’s representative of the whole site. Large sites typically generate breadcrumb markup from templates, and different templates (product pages, category pages, blog posts, landing pages) can have inconsistent or even contradictory breadcrumb implementations despite looking similar on the surface. Audit a representative sample across every distinct template type, not just one page, since the deviation you’re seeing in SERPs may only affect one specific template family while looking fine elsewhere.
Check for canonicalization issues merging pages with different breadcrumb paths
If two or more pages with different intended breadcrumb paths are being canonicalized to the same URL, whether through explicit canonical tags, parameter handling, or Google’s own independent canonicalization judgment, Google only has one page’s worth of breadcrumb signal to actually display, and it may be drawing from a page other than the one the user is searching for or the one you intended. This is a genuinely common, underdiagnosed cause of “wrong” breadcrumb display: the breadcrumb isn’t actually incorrect for the page Google has selected as canonical, it’s correct for a different page in a canonical cluster that the user’s search matched to.
Check URL structure and internal linking consistency against the breadcrumb path
Since Google synthesizes hierarchy from multiple signals rather than treating BreadcrumbList markup as authoritative on its own, a breadcrumb path that contradicts your URL’s path segments or your internal linking pattern is competing against those other signals, not simply being read and displayed. If your markup says one hierarchy while your URL structure and internal links imply a different one, Google may resolve that conflict in favor of the more consistent, corroborated signal rather than the markup.
Use URL Inspection to see Google’s actual rendered and understood view
Rather than relying only on the Rich Results Test (which validates syntax, not Google’s actual selected hierarchy for that specific URL), use URL Inspection in Search Console to check how Google is currently processing that specific page, including whether it matches the canonical URL you expect and whether structured data was successfully parsed for that exact URL as indexed.
What not to assume
Avoid concluding there’s a specific “override threshold” where markup gets ignored past some quantifiable degree of disagreement. No such published threshold exists; the resolution process is a multi-signal synthesis without a disclosed formula, and inventing a specific triggering condition would be asserting detail Google hasn’t provided.
A worked example showing the canonicalization cause specifically
Suppose a site has both /products/widget?color=blue and /products/widget?color=red as accessible URLs, each with its own BreadcrumbList markup asserting an identical, correct breadcrumb path. Google’s own canonicalization judgment, evaluating the two nearly-identical pages, selects one as canonical (say, the blue variant) and consolidates ranking and display signals onto it. A user searching for the red variant’s specific content might still match the query to the canonical blue URL in Google’s index, and any breadcrumb Google displays will reflect the canonical page it actually selected and indexed, which may look like a “wrong” breadcrumb for what the user was searching for even though the markup on the blue page itself was entirely correct. Diagnosing this correctly means checking Search Console’s URL Inspection tool for the specific URL to see which version Google has actually selected as canonical, rather than assuming the displayed breadcrumb is simply misreading valid markup.
Why fixing the root signal conflict matters more than adjusting the markup alone
A common but incomplete response to this diagnosis is simply tweaking the BreadcrumbList markup repeatedly, adjusting labels or nesting, in hopes that a different specific markup value will “win.” If the actual cause is a canonicalization conflict or a genuine mismatch between URL structure and the intended hierarchy, changing the markup value alone doesn’t resolve the underlying disagreement between signals, it just changes what the losing signal says. The more durable fix addresses the root inconsistency directly: correcting canonical tag configuration so the intended page is reliably selected, or restructuring URLs and internal links to genuinely match the hierarchy the markup describes, rather than repeatedly adjusting the markup value while leaving the contradicting signals it competes against unchanged.
A note on how long a fix takes to show up in search results
After correcting the underlying signal conflict, whether a canonicalization rule, a template markup bug, or a URL/navigation inconsistency, the displayed breadcrumb in actual search results won’t update instantly. Google needs to recrawl the affected pages and reprocess the corrected signals, and there’s no published guaranteed timeline for that reprocessing specifically for breadcrumb display. Use URL Inspection’s request-indexing option after a fix to encourage faster reprocessing, but allow a reasonable window before concluding the fix didn’t work, judging a structural fix as unsuccessful after only a day or two risks abandoning a correct diagnosis prematurely.
Practical implication
Work through this as a workflow: validate markup across all templates (not one sample), check for canonicalization merging distinct breadcrumb paths, verify URL structure and internal linking agree with the intended hierarchy, and use URL Inspection to see Google’s actual current understanding of the specific affected URL. In most diagnosed cases, the fix is resolving an inconsistency between these signals (correcting a template-specific markup bug, fixing a canonicalization rule, or aligning URL structure with intended hierarchy) rather than assuming Google is simply ignoring valid, consistent markup without cause.