Loading...
Loading...
Validation result
Validation checks the itemListElement array, each ListItem's position, name, and item URL, and confirms positions run sequentially from 1. The current page (last item) may omit its item URL.
Drop your BreadcrumbList structured data into the input box. Everything is parsed locally in your browser.
The tool checks the itemListElement array, each ListItem's position, name, and item fields, and confirms positions run sequentially from 1.
Review the listed errors and warnings, correct the markup, and re-validate until the breadcrumb is clean.
It parses your pasted JSON-LD and confirms the block is a valid BreadcrumbList: that an itemListElement array exists, that every entry is a ListItem with the required position and name, that each ListItem points to a URL via the item property (except an optional last item), and that positions run sequentially starting at 1. It also flags structural mistakes like duplicate positions, gaps, and items that are not ListItem objects.
Google reads the position values to order the breadcrumb trail, so they must start at 1 and increase by 1 with no gaps or repeats. If positions are out of order, missing, or duplicated, Google may ignore the breadcrumb or render it incorrectly. The validator detects non-sequential positions and tells you exactly which entry breaks the sequence.
No. Google allows the final ListItem (the current page) to omit the item property because users are already on that page. Earlier items, however, must include item with a valid URL so each level of the trail is linkable. The validator treats a missing item on the last entry as acceptable but warns when an intermediate item is missing its URL.
Errors are problems that will likely stop Google from showing the breadcrumb rich result — for example a missing itemListElement array, a ListItem with no name, or broken positions. Warnings are softer issues that may reduce quality or signal a mistake, such as the last item including an item URL when it does not need one, or using a bare string instead of a full ListItem object.
Yes. If you paste a JSON-LD object containing a @graph array, or an array of multiple schema blocks, the validator scans them and finds the BreadcrumbList node to check. If no BreadcrumbList is present, it tells you that none was detected so you know the markup on the page is missing the type entirely.
No. This validator runs entirely in your browser using client-side JavaScript. The JSON-LD you paste is parsed and checked locally and is never uploaded to our servers or any third party, so you can safely test markup from staging or internal pages.
Once the structure is clean, paste the same markup into Google's Rich Results Test to confirm eligibility for your live URL, and make sure the breadcrumb visible on the page matches the order in your JSON-LD. You can also run our Schema Completeness Scorer on the live page to see how your breadcrumb fits alongside your other structured data.