AggregateRating schema checker for review snippets
AggregateRating schema checker: test JSON-LD against Google review snippet rules for ratingValue, counts, scale and item type. Free, runs in your browser.
Breadcrumb schema generator: build BreadcrumbList JSON-LD row by row, with position, name and URL checks from Google's docs. Free, runs in your browser.
Runs entirely in your browser. Nothing you enter is uploaded, logged or stored.
A breadcrumb trail is structured data about navigation rather than content. Google’s breadcrumb
documentation keeps the rules short: a BreadcrumbList whose itemListElement array holds
ListItem entries in order, at least two of them, each with a position, a name and a URL. This
generator turns rows you type into that JSON-LD and checks those rules as you go.
Every rule below comes from Google’s BreadcrumbList documentation.
ListItem entries to be eligible for
rich results. With fewer than two named rows, the tool warns that a trail needs a parent and the
current page.item property; fill it in and it is kept.Three things update on every keystroke. The JSON-LD block is the output to copy. The issues list shows each warning in amber, or a single green line when every item has a name and every item but the last has an absolute URL. The preview renders the trail with slashes between steps and marks the final step as the current page, so you can read it the way a visitor would.
A warning does not stop the JSON from being generated. A middle row with no URL, for example,
still appears in the output with an empty item value, which is exactly what the warning is there
to stop you shipping.
Three rows: “Home” at https://example.com, “Guides” at https://example.com/guides, and
“Canonical tags” with the URL left blank. The generator produces:
{
"@context": "https://schema.org",
"@type": "BreadcrumbList",
"itemListElement": [
{ "@type": "ListItem", "position": 1, "name": "Home", "item": "https://example.com" },
{ "@type": "ListItem", "position": 2, "name": "Guides", "item": "https://example.com/guides" },
{ "@type": "ListItem", "position": 3, "name": "Canonical tags" }
]
}
The issues list shows the green all-clear, and the preview reads Home / Guides / Canonical tags.
Change the second URL to /guides and a warning appears: “Guides“‘s URL must be absolute.
/guides are copied straight from templates and fail the
absolute URL check.item; any other gap is flagged
with the step’s name.One thing it cannot check is whether the trail matches the navigation on the page. Google’s guidance is to represent a typical user path, so build the trail per page or per template from the links a visitor can actually click, then confirm the live URL in Google’s Rich Results Test.
No. Google's documentation states that if the breadcrumb is the last item in the trail, item is not required. Leave the last row's URL blank here and the generator omits the item property for it.
Not necessarily. Google recommends breadcrumbs that represent a typical user path to the page instead of mirroring the URL structure.
At least two ListItem entries, per Google's documentation. The generator warns as soon as fewer than two rows have a name.
Yes. Google's documentation shows multiple trails for a page reachable by different paths. This tool builds one BreadcrumbList at a time, so generate each trail separately and include both.
The schema markup generator covers several page types from a fixed field form. This tool is built around what a breadcrumb trail is, a list whose length changes per page, with checks specific to BreadcrumbList's position and item rules.
AggregateRating schema checker: test JSON-LD against Google review snippet rules for ratingValue, counts, scale and item type. Free, runs in your browser.
Logo structured data generator: build Organization JSON-LD with logo, url, name and sameAs, and check Google's logo rules. Free, runs in your browser.
Course schema validator: paste Course JSON-LD and check name, description, provider and the 60 character display limit. Free, runs in your browser.
FAQ schema validator: check FAQPage JSON-LD so every Question has a name and acceptedAnswer text. Notes Google's FAQ rich result removal. Free, in-browser.