Breadcrumb Schema Generator

100% private — runs on your device, never uploaded. Works offline once loaded.

Build valid BreadcrumbList structured data (JSON-LD) so Google can show a breadcrumb trail in your search snippet. Add each level from home to the current page and copy the markup.

What breadcrumb structured data does

A breadcrumb trail shows a page's position within a site's hierarchy, for example Home › Blog › SEO › This Article. Adding BreadcrumbList structured data tells search engines exactly what that path is, which lets Google replace the raw URL in a search snippet with a clean, clickable breadcrumb trail.

That trail does more than look tidy. It communicates site structure to users before they click, reinforces topical relationships for crawlers, and can improve click-through by making the result look more organized and trustworthy. The markup is small, but it is one of the highest-value, lowest-risk pieces of structured data you can add.

How the positions and items work

A BreadcrumbList is an ordered list of ListItem objects. Each ListItem carries a position (a sequential integer starting at 1), a name (the visible label of that level), and usually an item (the canonical URL of that level). The order of the list must match the visual left-to-right order of the breadcrumb on the page.

This generator handles the numbering for you: it assigns position 1 to the first row, 2 to the next, and so on, skipping any rows where you leave the name blank. That eliminates the single most common breadcrumb error, out-of-order or missing positions, which causes validators to reject the markup.

  • position — auto-incremented from 1 in row order.
  • name — the label users see for that level.
  • item — the URL for that level; omit on the final row to leave the current page unlinked.

Best practices for accurate breadcrumbs

Structured data should mirror what visitors actually see. If your page renders a visible breadcrumb, the markup should match it exactly in both labels and order. Use canonical, absolute URLs (https://example.com/blog rather than /blog) so there is no ambiguity about which page each level points to.

Keep the trail shallow and truthful: start at the logical top of the hierarchy for that page and end at the current page. Do not invent levels that do not exist on the site, and do not point breadcrumb items at redirecting or non-canonical URLs, which can weaken how Google interprets the path.

Testing and common pitfalls

After pasting the JSON-LD, validate the page with Google's Rich Results Test and the Schema Markup Validator. The most frequent problems are non-sequential positions, a name that does not match the on-page breadcrumb, and item URLs that 404 or redirect. This tool prevents the numbering issue automatically, but you still need to make sure names and URLs are correct.

Remember that valid markup makes a page eligible for the breadcrumb display but does not force it. Google chooses when to show breadcrumbs, and it may occasionally derive its own trail from the URL structure if your markup and page disagree.

Frequently asked questions

Where should I place the breadcrumb JSON-LD?

Anywhere in the page's HTML, commonly in the <head> or before the closing </body> tag. Google reads JSON-LD regardless of where it appears in the document.

Should the URLs be absolute or relative?

Use absolute, canonical URLs including the scheme and domain, for example https://example.com/blog. Relative URLs can be misinterpreted and should be avoided in structured data.

Does the breadcrumb markup replace the visible breadcrumb on my page?

No. The JSON-LD is invisible metadata for search engines. You should still render a visible breadcrumb for users, and it should match the markup in labels and order.

Why is one of my rows missing from the output?

Rows with an empty name are skipped, and positions are recalculated so the remaining items stay sequential. Fill in a name for every level you want included.

Is there a limit to how many levels I can add?

There is no strict limit, but keep trails to the meaningful hierarchy of the page. Very deep breadcrumbs are harder to display and less useful to users.

Is my data uploaded anywhere?

No. Everything is generated in your browser as you type. Nothing you enter leaves your device.

Advertisement