The breadcrumb schema is a structured vocabulary, based on the Schema.org format and encoded according to the JSON-LD standard, that lets search engines understand a website’s navigation hierarchy. In practice, it describes the path the user followed to reach a given page, starting from the home page and ending at the current page, and makes it unambiguously readable for automated indexing systems.
This type of markup falls under structured data and can produce a rich result where the navigation path appears in place of the URL. However, Google has reduced the presence of breadcrumbs in results, especially on desktop, so the display should be checked in real searches. The markup remains useful as an explicit description of the site hierarchy.
Where the term breadcrumb comes from
The term breadcrumb comes from the fairy tale of Hansel and Gretel, in which the two siblings leave bread crumbs to find their way home. On the web, it refers to the horizontal navigation bar that shows the user’s position within the site structure. The breadcrumb schema is the translation of this visual element into a machine-readable format.
The reference vocabulary is Schema.org, an initiative born from the collaboration of major search engines to define a shared set of types and properties. The main type used for breadcrumbs is BreadcrumbList, which contains an ordered sequence of elements called ListItem. Each ListItem represents a level of the hierarchy and includes at least the position and name of the element, plus the URL of the corresponding page.
The structure of BreadcrumbList markup
BreadcrumbList markup is inserted into the page’s HTML code, generally within the head element or in the body, in a JSON-LD block. The structure consists of a main object with the itemListElement property, which contains an array of ListItem objects. Each ListItem has a position property, a numeric value indicating the order, and a name or item property that specifies the label and URL of the level.
Search engines read this markup and can use it to show, in place of the URL, a path like Home > Category > Subcategory > Page. The display is not guaranteed and varies by device and over time.
Visible breadcrumb and structured data: what changes
The visible breadcrumb is the graphical element the user sees on the page, often placed below the header or above the content title. The structured breadcrumb, on the other hand, is its representation in structured data format, invisible to the user but readable by search engines. The two versions should be consistent: the names and order of the levels must match, because the markup must describe what the user sees on the page.
The three types of breadcrumb and when to use them
There are mainly three types of breadcrumb, each with a specific function. The hierarchy-based breadcrumb shows the site structure, from the home page to the current page, and is the most common. The attribute-based breadcrumb indicates the path followed to filter or select specific attributes, such as a product’s color or size. The history-based breadcrumb shows the pages previously visited by the user, but it is generally not encoded with structured markup.
For the breadcrumb schema, the most used type is the hierarchical one, because it reflects the logical structure of the site and is easily interpreted by search engines. The attribute-based breadcrumb can be encoded, but it requires care to avoid generating overly long or redundant paths.
The path that follows the site hierarchy
The hierarchical breadcrumb represents the tree structure of the site. Each level corresponds to a category or section, and the last element is the current page. This type is particularly suitable for e-commerce sites, blogs, and content portals organized into categories and subcategories.
The path that reflects applied filters
The attribute-based breadcrumb shows the filtering path applied by the user. For example, in an online store, it might appear as Home > Shoes > Men > Size 42. This type of breadcrumb is useful for orienting the user, but its structured encoding must be handled carefully to avoid generating duplicate or inconsistent paths.
What improves in SEO with the breadcrumb schema
Implementation offers some benefits. It explicitly describes the site hierarchy to search engines and can produce the navigation path in results, with a possible effect on click-through rate. The visible breadcrumb, on the other hand, helps users orient themselves and move up a level.
The markup itself is not visible, does not create links, and does not transfer authority. The effects on visitors and on links depend on the visible breadcrumb on the page, which contains real links to higher levels and strengthens internal links.
Breadcrumb schema and other structured data: the differences
The breadcrumb schema is not the only type of structured data useful for SEO. There are other vocabularies that serve different but complementary functions. The following table compares the main types.
| Type of structured data | Main function | Impact on search results | Implementation complexity |
|---|---|---|---|
| BreadcrumbList | Show the navigation hierarchy | Replaces the URL with a readable path | Low |
| Article | Describe an article or editorial content | Describes the article; no guaranteed rich result | Medium |
| Product | Describe a product with price and availability | Shows price, ratings, and availability | High |
| FAQPage | Structure frequently asked questions and answers | Since 2023 only for authoritative government and health sites | Medium |
| Organization | Describe the organization or company | Provides brand information in results | Low |
The steps for valid and consistent markup
To implement the breadcrumb schema correctly, you need to follow a series of steps that ensure consistency and validity of the markup. The fundamental steps are listed below.
- Define the hierarchical structure of the site and identify the levels that make up the navigation path.
- Choose the encoding format, preferably JSON-LD, and insert it into the page code.
- Use the BreadcrumbList type with the itemListElement property to list the levels.
- Assign each ListItem a progressive numeric position, a readable name, and the corresponding URL.
- Verify that the visible breadcrumb and the structured one are consistent with each other.
- Validate the markup with the official search engine tools to identify any errors.
- Monitor the results in the SERPs to verify the correct display of the navigation path.
- Update the markup whenever the site structure is modified.
Frequently asked questions about the breadcrumb schema
What is the breadcrumb schema in simple words?
The breadcrumb schema is code that describes to search engines the navigation path of a page, from the home page to the current page, in a format they can read and use to improve search results.
What is the difference between visible breadcrumb and breadcrumb schema?
The visible breadcrumb is the graphical element the user sees on the page, while the breadcrumb schema is its representation in structured data, invisible to the user but readable by search engines.
Is the breadcrumb schema mandatory for SEO?
No, it is not mandatory. It describes the site hierarchy to search engines and can produce the path in results, which Google does not guarantee.
Which format is used to implement the breadcrumb schema?
The most used format is JSON-LD, recommended by major search engines, but you can also use microdata or RDFa, as long as the markup is valid and consistent.
Can the breadcrumb schema be applied to any type of site?
Yes, the breadcrumb schema can be applied to any site that has a hierarchical navigation structure, including blogs, e-commerce, news portals, and corporate sites.
How do you check if the breadcrumb schema is correct?
You check it using the official validation tools provided by search engines, which check the syntax and consistency of the markup and report any errors or warnings.
From glossary to projectDo search engines understand what your site is about?Implementing structured data and Schema markup helps search engines and AI systems interpret content.Discover structured data
Related entries:
