Free Tool

Breadcrumb Schema Generator — Create BreadcrumbList JSON-LD

Generate valid BreadcrumbList JSON-LD for any page hierarchy. Add your breadcrumb levels, preview the trail, copy the code, and paste it into your page head.

Instant generation Valid JSON-LD Schema.org compliant Live SERP preview

Breadcrumb Schema Generator

Add each breadcrumb level from left to right, starting with your homepage. Enter the page name and URL for each level. The last item is the current page — its URL is optional. The JSON-LD and SERP preview update live as you type.

SERP Breadcrumb Preview
Home
Generated JSON-LD
Paste inside <head>
Tips
  • First item is always the homepage with its full URL
  • Last item is the current page — URL is optional
  • Each intermediate level needs both a name and URL
  • Use absolute URLs including https://
  • Position numbers are assigned automatically in order

What Is a Breadcrumb Schema Generator?

A breadcrumb schema generator is a free tool that converts your page hierarchy into valid BreadcrumbList JSON-LD structured data. The generated code tells Google the navigation path to the current page, enabling the breadcrumb trail to appear directly in search results instead of the raw URL.

You add each breadcrumb level, name it, and provide the URL. The tool builds the correctly structured BreadcrumbList with auto-numbered positions, previews the SERP trail in real time, and outputs a complete <script type="application/ld+json"> block ready to paste into your page head.

Valid BreadcrumbList Output

Generates correctly structured BreadcrumbList JSON-LD with itemListElement containing ListItem objects, each with auto-assigned position, name, and item URL fields following the Schema.org specification.

Live SERP Preview

See how your breadcrumb trail will appear in Google search results as you type each level name. The preview mimics the Google SERP breadcrumb display so you can confirm the path looks correct before copying the code.

Unlimited Breadcrumb Levels

Add as many hierarchy levels as your page structure requires. Deep ecommerce pages may have five or more levels. Each level is automatically numbered in sequence and added to the itemListElement array in the correct order.

One-Click Copy

Copy the complete <script type="application/ld+json"> block to your clipboard in one click. Paste it directly into your HTML, CMS page editor, or theme file. The schema is immediately ready to validate with the Google Rich Results Test.

Why Breadcrumb Schema Matters for SEO

Breadcrumb schema is one of the simplest structured data types to implement and one of the most consistently displayed by Google. Its benefits span search result appearance, site architecture signals, and user experience.

Breadcrumb Trail in SERPs

Google replaces the raw URL in search results with the breadcrumb trail when valid BreadcrumbList schema is present. A path like "Home › Electronics › Headphones" is more readable than a URL slug, communicates page context at a glance, and typically improves click-through rates compared to URL-only listings.

Site Architecture Signal

Breadcrumb schema explicitly communicates your site's hierarchy to Google. It tells crawlers where a page sits within the category structure, which pages are parent categories, and how deep the page is from the homepage. This reinforces the topic relevance of each page and helps Google understand content organisation.

Critical for Ecommerce

Product pages on ecommerce sites benefit most from breadcrumb schema because their URLs are often complex or category-encoded. Showing "Home › Women › Shoes › Trainers" in search results is far more informative to shoppers than a URL, and it positions the product within a recognisable category context that builds confidence before the click.

Internal Link Context

Breadcrumb schema reinforces the internal link signals that already exist in your page's visible breadcrumb navigation. When both the HTML breadcrumb links and the structured data agree on the hierarchy, Google receives consistent architecture signals from multiple sources, strengthening the topical context of each page.

AI and Search Understanding

AI-powered search features use structured data to understand relationships between pages. Breadcrumb schema tells AI systems the navigational context of a page — whether it is a product within a category, a post within a blog section, or a service within a service area — improving how content is categorised and cited.

Consistent SERP Display

Breadcrumb schema is among the most reliably displayed structured data types by Google. Unlike FAQ or review rich results, breadcrumb display is not subject to significant eligibility restrictions. Most pages with valid BreadcrumbList schema see the breadcrumb trail displayed instead of the URL in search results.

How the Breadcrumb Schema Generator Works

Three steps from your page hierarchy to deployed structured data. Add your levels, preview the trail, copy the code, and validate.

1

Add Your Breadcrumb Levels

Start with your homepage name and URL. Add each intermediate level in order: category, subcategory, and finally the current page. Enter the page name and URL for each level. The last item is the current page — its URL is optional. The SERP preview and JSON-LD output update live with every keystroke.

2

Preview and Copy the Code

Check the SERP preview to confirm the breadcrumb trail reads correctly. When the hierarchy looks right, click Copy to copy the complete <script type="application/ld+json"> block. Position numbers are assigned automatically — no manual numbering needed.

3

Paste and Validate

Paste the code inside the <head> section of the specific page the breadcrumb describes. Then test the live URL with the Google Rich Results Test to confirm the BreadcrumbList schema is valid and all levels are detected correctly before publishing.

What the Breadcrumb Schema Generator Produces

The generated JSON-LD follows the Schema.org BreadcrumbList specification. Two nested object types are used: BreadcrumbList at the root level and ListItem for each individual breadcrumb level.

Field Status Value Purpose
BreadcrumbList (root object)
@context Required "https://schema.org" Declares the Schema.org vocabulary — required in every JSON-LD block
@type Required "BreadcrumbList" Identifies this structured data as a BreadcrumbList — the container for all breadcrumb levels
itemListElement Required Array of ListItem objects Contains the ordered list of all breadcrumb levels from homepage to current page
ListItem (one per breadcrumb level, nested inside itemListElement)
@type Required "ListItem" Identifies each entry in the itemListElement array as a ListItem
position Required Integer starting from 1 The numerical position of this level in the breadcrumb path. Must start at 1 and increment by 1 without gaps
name Required Page name text The display name for this breadcrumb level — must match the label visible in the page's breadcrumb navigation
item Recommended Absolute URL The URL for this breadcrumb level. Required for all levels except the last (current page). Must be an absolute URL including https://

BreadcrumbList Fields and Page Type Examples

Breadcrumb schema follows the same structure for every page type — only the levels and names change. Here is how the JSON-LD nests, followed by real examples of breadcrumb paths for the three most common page types.

// A 3-level product page breadcrumb <script type="application/ld+json"> { "@context": "https://schema.org", "@type": "BreadcrumbList", "itemListElement": [ { "@type": "ListItem", "position": 1, "name": "Home", "item": "https://example.com" }, { "@type": "ListItem", "position": 2, "name": "Electronics", "item": "https://example.com/electronics" }, { "@type": "ListItem", "position": 3, "name": "Wireless Headphones" // item URL optional for last (current) page } ] } </script>

The item URL field is required for all levels except the last. Omitting the URL on the final breadcrumb (the current page) is valid and recommended by Google — including it is also acceptable. All other levels must have a URL pointing to a crawlable, indexable page.

Ecommerce Product Page

Home › Women › Shoes › White Trainers

Four levels: homepage, department, subcategory, product. Each level above the product needs a URL pointing to the category page. The product page (last level) can omit the URL.

Blog Post

Home › Blog › SEO Tips › How to Write Meta Tags

Three or four levels: homepage, blog root, optional category, post title. The blog section URL and category archive URL must be crawlable pages in their own right.

Service Page

Home › Services › SEO Consulting

Three levels is typical for service businesses: homepage, services overview, individual service. The services overview page must be a real, accessible URL — not a redirect or anchor link.

Common Breadcrumb Schema Mistakes

These errors cause BreadcrumbList schema to fail validation or prevent the breadcrumb trail from appearing in search results.

Position Numbers Out of Order or Skipped

The position field must start at 1 and increase by exactly 1 for each level with no gaps. Positions like 1, 2, 4 — skipping 3 — or starting at 0 cause validation errors. Google expects a clean, gapless sequence. The tool assigns positions automatically in the order you add levels, so this error only occurs when schemas are written or edited by hand.

Missing URL on Intermediate Levels

Every breadcrumb level except the last (current page) must have a valid item URL. Omitting the URL from a middle-level item — a category or parent page — makes that level invalid. Google requires each intermediate breadcrumb to link to a real, crawlable page. The URL must be absolute, starting with https://, not a relative path.

Only One Breadcrumb Item

A BreadcrumbList with a single item — for example, just the homepage — has no trail to display and serves no SEO purpose. Google requires at least two items in the itemListElement array for the breadcrumb to be considered valid structured data. Every page that uses breadcrumb schema should represent a real navigational hierarchy of at least two levels.

Schema Does Not Match Visible Breadcrumb

If the breadcrumb names or hierarchy in the JSON-LD do not match the visible breadcrumb navigation HTML on the page, Google may ignore the schema or use the HTML breadcrumb instead. Both the structured data and the visible breadcrumb navigation must show the same hierarchy. Mismatches occur most often when schema is generated separately from the page template and not updated when the navigation changes.

Using Relative Instead of Absolute URLs

The item field in each ListItem must use a full absolute URL including the protocol and domain — for example https://example.com/category. Relative paths like /category or protocol-relative URLs like //example.com/category are not valid for structured data fields. Schema validators report these as errors and Google may discard the affected breadcrumb levels.

Adding Breadcrumb Schema to Every Page Identically

Breadcrumb schema must be unique to each page's actual position in the hierarchy. A product page and its parent category page need different schemas with different levels and positions. Adding the same breadcrumb schema block to every page on the site — for example by hardcoding it in a global template without dynamic level generation — produces incorrect hierarchy data across most pages and can trigger structured data errors in Search Console.

How to Add Breadcrumb Schema to Your Website

After generating and copying the JSON-LD code, use the method that matches your platform. For best results, generate the schema dynamically so each page's breadcrumb path is unique to its position in the site hierarchy.

Plain HTML

  1. Open the HTML file for the specific page in your editor
  2. Locate the closing </head> tag
  3. Paste the JSON-LD <script> block immediately before </head>
  4. For multi-page sites, create a unique schema for each page reflecting its actual breadcrumb path
  5. Test the live URL in the Google Rich Results Test to confirm the BreadcrumbList is detected

WordPress and WooCommerce

  1. Most SEO plugins (Yoast SEO, Rank Math, AIOSEO) generate breadcrumb schema automatically when breadcrumbs are enabled — check the plugin settings to confirm this is active
  2. In Yoast: go to SEO, Search Appearance, Breadcrumbs tab, and enable breadcrumbs
  3. In Rank Math: go to General Settings, Breadcrumbs, and enable structured data output
  4. For WooCommerce, the same SEO plugins generate product breadcrumb schema using the product's category hierarchy automatically
  5. For manual JSON-LD, add a Custom HTML block to the page or use Insert Headers and Footers scoped to specific post types

Shopify

  1. Many Shopify themes include breadcrumb schema automatically — check your theme documentation or view the page source and search for "BreadcrumbList"
  2. If schema is missing or incomplete, go to Online Store, Themes, Edit Code
  3. Open the relevant template file (for example product.liquid or collection.liquid)
  4. Paste the JSON-LD block before the closing </head> tag, or use Liquid variables to generate the breadcrumb path dynamically from the product's collection hierarchy
  5. Test a live product or collection URL in the Google Rich Results Test to confirm breadcrumb detection

Laravel / Custom PHP

  1. Open the Blade template for the page type (for example product.blade.php or category.blade.php)
  2. Use @push('head') to inject the JSON-LD block into the layout's <head> section
  3. In your main layout, place @stack('head') before the closing </head> tag
  4. Build the breadcrumb array dynamically in the controller from the page's category ancestry and pass it to the view, then output using json_encode()
  5. Verify the rendered HTML source shows unique breadcrumb data per page and validate with the Google Rich Results Test

After adding breadcrumb schema, use the Link Checker to confirm all URLs referenced in the schema are live and crawlable. Broken breadcrumb URLs produce validation warnings and reduce the reliability of the hierarchy signal. For broader structured data health, the Sitemap Checker can confirm all pages referenced in your breadcrumb hierarchy are included in your sitemap and accessible to Googlebot.

Related Schema and SEO Tools

Use these tools alongside the Breadcrumb Schema Generator to build complete structured data coverage and technically sound page architecture across your site.

Generate Breadcrumb Schema Free, Right Now

Add your breadcrumb levels, preview the trail, copy the valid JSON-LD code, and paste it into your page head. Validate before publishing.

Breadcrumb Schema Generator: Frequently Asked Questions

A breadcrumb schema generator is a free tool that converts your page hierarchy into valid BreadcrumbList JSON-LD structured data. You add each breadcrumb level, entering the page name and URL for each step from the homepage to the current page. The tool builds correctly structured JSON-LD with auto-assigned position numbers, previews the breadcrumb trail as it appears in Google search results, and outputs a complete script tag ready to paste into your page head.

BreadcrumbList schema is a type of structured data defined by Schema.org that marks up a webpage's navigation path in machine-readable JSON-LD format. It uses a BreadcrumbList root object containing an itemListElement array of ListItem objects, each with a position number, a name for the breadcrumb label, and an item URL for the page it links to. Google uses BreadcrumbList schema to display the breadcrumb trail in search results instead of the raw URL, making listings more readable and informative to users.

Yes, in multiple ways. The most visible benefit is that Google replaces the raw URL in search results with the breadcrumb trail, which is more readable and communicates page context at a glance. This typically improves click-through rates, particularly for ecommerce category and product pages where URLs are complex. Beyond the display benefit, breadcrumb schema provides explicit site architecture signals that help Google understand content hierarchy, reinforces topical relevance, and improves how AI-powered search features categorise and interpret your pages.

Including the URL on the last breadcrumb item (the current page) is optional. Google accepts both formats. Omitting the URL for the current page is common practice and is explicitly noted as valid in Google's breadcrumb structured data documentation. All other levels — every level above the current page — must include a URL pointing to a real, crawlable page. The current page's name is always required even if its URL is omitted.

Include as many levels as accurately represent the page's position in your site hierarchy — no more and no fewer. A two-level breadcrumb (Home › Page) is the minimum and is valid. Simple blog posts might have three levels (Home › Blog › Post). Deep ecommerce product pages may have four or five levels (Home › Category › Subcategory › Brand › Product). Do not invent levels that do not exist in your site navigation, and do not skip intermediate category levels that users see in the visible breadcrumb navigation on the page.

After adding the JSON-LD script tag to your page and publishing it, go to the Google Rich Results Test at search.google.com/test/rich-results and enter the live URL. The tool parses the structured data and reports whether the BreadcrumbList is valid, shows all detected breadcrumb levels in order, and lists any errors such as missing position numbers, invalid URLs, or items with fewer than two levels. After Googlebot crawls the updated page, you can monitor breadcrumb structured data coverage in Google Search Console under the Enhancements section for errors across all indexed pages.

Paste the generated JSON-LD block inside the <head> section of the specific page the breadcrumb describes. Each page needs a unique schema reflecting its own position in the hierarchy — do not use the same schema block across multiple pages with different positions. In WordPress, most SEO plugins generate breadcrumb schema automatically when breadcrumbs are enabled. In Shopify, add it to the product or collection liquid template. In HTML, paste before the closing head tag. In Laravel, use a push block in the page Blade template. Validate the live URL after adding to confirm the schema is correctly detected.