What is Breadcrumb Structured Data? #
Breadcrumb structured data provides a trail of links showing the page’s position within the site hierarchy. This helps users understand where they are and navigate back step-by-step.
Google may display this breadcrumb trail in search results on desktop, improving clarity and user experience.
Key Points #
- Use BreadcrumbList schema to mark up breadcrumbs.
- Each breadcrumb item is a ListItem with:
- position (order in the trail)
- name (label shown to users)
- item (URL of that breadcrumb page, optional for the last item)
- position (order in the trail)
- Breadcrumbs should represent typical user navigation paths, not necessarily the exact URL structure.
- Include at least two ListItems to be eligible for rich results.
- The last breadcrumb item’s item property can be omitted; Google uses the current page URL then.
- Support for multiple breadcrumb trails on one page is allowed (JSON-LD array).
JSON-LD Example (Single Breadcrumb Trail) #
<script type=”application/ld+json”>
{
“@context”: “https://schema.org”,
“@type”: “BreadcrumbList”,
“itemListElement”: [{
“@type”: “ListItem”,
“position”: 1,
“name”: “Books”,
“item”: “https://example.com/books”
},{
“@type”: “ListItem”,
“position”: 2,
“name”: “Science Fiction”,
“item”: “https://example.com/books/sciencefiction”
},{
“@type”: “ListItem”,
“position”: 3,
“name”: “Award Winners”
}]
}
</script>
JSON-LD Example (Multiple Breadcrumb Trails) #
<script type=”application/ld+json”>
[
{
“@context”: “https://schema.org”,
“@type”: “BreadcrumbList”,
“itemListElement”: [{
“@type”: “ListItem”,
“position”: 1,
“name”: “Books”,
“item”: “https://example.com/books”
},{
“@type”: “ListItem”,
“position”: 2,
“name”: “Science Fiction”,
“item”: “https://example.com/books/sciencefiction”
},{
“@type”: “ListItem”,
“position”: 3,
“name”: “Award Winners”
}]
},
{
“@context”: “https://schema.org”,
“@type”: “BreadcrumbList”,
“itemListElement”: [{
“@type”: “ListItem”,
“position”: 1,
“name”: “Literature”,
“item”: “https://example.com/literature”
},{
“@type”: “ListItem”,
“position”: 2,
“name”: “Award Winners”
}]
}
]
</script>
Guidelines to Follow #
- Provide a logical and user-friendly breadcrumb path.
- At least two breadcrumb items (ListItems) required.
- Use real URLs for all breadcrumbs except possibly the last one.
- Don’t include your site’s root domain or current page as mandatory items.
- Avoid marking up irrelevant or spammy breadcrumb trails.
- Make sure URLs are crawlable by Google.
- Use JSON-LD (recommended) or Microdata/RDFa if preferred.
- Test your markup with Google’s Rich Results Test.
Monitoring & Troubleshooting #
- Use Google Search Console to monitor valid and invalid breadcrumb markup.
- Fix errors promptly based on Search Console feedback.
- Allow a few days/weeks for Google to re-crawl and reflect changes.
- Refer to Google’s General Structured Data Guidelines for additional best practices.
- If markup issues persist, check for possible manual actions or spammy markup.