GC Design SystemComponents
GC Design System Start to use Page templates overviewBasic page Components overviewAlertBreadcrumbsButtonCardCheckboxesContainerDate inputDate modifiedDetailsError messageError summaryFieldsetFile uploaderFooterGridHeaderHeadingIconInputLanguage toggleLinkNoticePaginationRadiosScreenreader-onlySearchSelectSide navigationSignatureStepperTableTextTextareaTheme and topic menuTop navigation CSS Shortcuts overview Reset styles Responsive layoutState Box sizingContainer sizingDisplayOverflowPositionVisibility FontFont familyFont sizeFont styleFont weightLine heightLink colourLink sizeLink text decorationList styleText alignText colourText overflowText transformWord break MarginPadding Align contentAlign itemsAlign selfFlexFlex directionFlex growFlex shrinkFlex wrapGapGrid columnsGrid rowsJustify contentJustify itemsJustify selfOrderPlace contentPlace itemsPlace self Background colourBorder colourBorder radiusBorder styleBorder width Icon namesIcon sizeImage CursorPointer eventsTransition Styles overviewDesign tokensColourSpacingTypography Contact usGet InvolvedFind a demo

Breadcrumbs
<gcds-breadcrumbs>

Also called: breadcrumb trail. Breadcrumbs is a path to the current page from each preceding level of the site's hierarchy.
  • Required on Canada.ca

Breadcrumbs component preview

On this page

Coding and accessibility for breadcrumbs

  • Maintain the Canada.ca link as the default first breadcrumbs link for most websites and pages.
  • Opt to replace the Canada.ca link with the homepage link on transactional pages and stand alone websites or products. To remove the Canada.ca link at the head of the breadcrumbs, set the hide-canada-link attribute to true.
Tip: For a process that does not have a traditional landing page, link to the starting page of the process.

Place breadcrumbs before the <main> element

Place breadcrumbs at the top of a page, before the <main> element. This way a skip-to-content link can work to let a person skip all navigation links, including breadcrumbs. Add a new breadcrumbs link to the breadcrumbs component by using the <gcds-breadcrumbs-item> component. Add it through the href property.

Examples

Explore the different ways you can configure the component. Each example shows a working implementation and ready-to-copy code.

In this section

Essential attributes

These attributes are needed for the component to function correctly. Use href to define the destination URL for a gcds-breadcrumbs-item. This attribute is required for the breadcrumb item to function as a link.
<gcds-breadcrumbs>
  <gcds-breadcrumbs-item href="#">
    Home page
  </gcds-breadcrumbs-item>
  <gcds-breadcrumbs-item href="#">
    Parent page link
  </gcds-breadcrumbs-item>
</gcds-breadcrumbs>

Optional attributes

These attributes allow you to customize or extend the component’s behaviour and presentation. Use hide-canada-link to show or hide the default canada.ca link in the breadcrumbs. By default, it’s set to false, which means the canada.ca link appears as the first breadcrumb item.
<gcds-breadcrumbs>
  <gcds-breadcrumbs-item href="#">
    Home page
  </gcds-breadcrumbs-item>
  <gcds-breadcrumbs-item href="#">
    Parent page link
  </gcds-breadcrumbs-item>
</gcds-breadcrumbs>
When set to true, the default canada.ca link is hidden, and only the breadcrumb items provided are displayed.
<gcds-breadcrumbs hide-canada-link>
  <gcds-breadcrumbs-item href="#">Home page</gcds-breadcrumbs-item>
  <gcds-breadcrumbs-item href="#">Parent page link</gcds-breadcrumbs-item>
</gcds-breadcrumbs>

Slots

The default slot allows you to inject custom content into the component’s primary content area, and named slots, into specific areas.

default

Use the default slot to add gcds-breadcrumbs-item subcomponents. Use the default slot of the breadcrumbs item to add the item’s text.
<gcds-breadcrumbs hide-canada-link>
<gcds-breadcrumbs-item href="#">Home page</gcds-breadcrumbs-item>
<gcds-breadcrumbs-item href="#">Parent page link</gcds-breadcrumbs-item>
</gcds-breadcrumbs>
Code builder Generate an instance of the component you need by selecting its code properties.
  • Explore by choosing different code values to generate the instance you want.
  • Get the code and pull it into your environment.
  • Add any copy you need to the component (like text for a label).
Note: The code builder uses English for all code elements, which follows standard practice. Home pageParent page link
Help us improve Have questions or a request? Give feedback on our contact form. Something's wrong? Raise it through GitHub with an account. You'll have access to the team's direct responses, progress made on your issue, and issues raised by others. Give feedback Report an issue on GitHub
2026-07-13