URL → breadcrumbs
Breadcrumb markup is what turns the ugly URL under your search result into a readable path — and Google needs a BreadcrumbList to show it. Paste a page URL and get all three pieces at once: the visible trail, accessible HTML, and the JSON-LD, with slugs turned into readable labels.
Trail
How to use
- Paste the URL of the page you are adding breadcrumbs to.
- Set a Home label — "Home" or your brand name reads better than the bare hostname in a search result.
- Leave Turn slugs into readable labels on:
getting-startedbecomes Getting Started, while all-caps acronyms likeAPIare left alone. - Tick Drop the last segment if you want the trail to stop at the parent section, which is the convention when the page title already appears as the heading.
- Copy the JSON-LD into a
<script type="application/ld+json">tag in the page head, and the HTML wherever the visible trail goes.
Getting it accepted as a rich result
Google's requirements are narrower than the schema allows. Every item must be an absolute URL on the same site, positions must start at 1 and increase by 1 with no gaps, and the trail must reflect a real hierarchy the user could navigate — inventing intermediate levels that return 404 gets the markup ignored, and inventing keyword-stuffed labels can be treated as spam.
Two details this tool handles that hand-written markup usually gets wrong. First, the last item: the current page is included as a ListItem with its own URL, and it is not a link in the visible HTML — it carries aria-current="page" instead, which is what screen readers need. Second, the visible trail and the JSON-LD must agree; if the markup says Docs › API and the page shows Documentation › Reference, the mismatch is a structured-data violation. Generating both from the same source is the point of doing it here.
Check the intermediate URLs before shipping. A URL like /blog/2026/07/post produces a trail through /blog/2026 and /blog/2026/07, and on many sites those archive pages do not exist. Either create them or use a hierarchy that matches reality.
FAQ
Should the current page be in the breadcrumb?
Google accepts it either way. Including it is more common and gives search engines the full path; the visible last item should not be a link. Tick Drop the last segment to leave it out.
Do I need both the HTML and the JSON-LD?
The JSON-LD is what search engines read; the HTML is what users see. You can also express breadcrumbs with microdata directly in the HTML instead, but JSON-LD is what Google recommends and it keeps the markup out of your templates.
My URLs use IDs, not slugs — /product/48213.
Then the generated label is the ID, which is not useful to anyone. Take the JSON-LD as a skeleton and replace the name values with real titles from your database; the positions and URLs are already correct.
How do query parameters affect the trail?
They are ignored — breadcrumbs describe hierarchy, and a filter or tracking parameter is not a level. If a parameter genuinely selects a category on your site, that is worth fixing in the URL structure rather than in the markup.