You open a product page on your Shopify store and something about the breadcrumb looks off: a level is missing, the collection shown isn’t the one you expected, the trail falls back to Home > All Products > [Product name], or a crumb is still showing in your store’s base language on a translated storefront. None of these is a broken trail. Each one traces back to the category tree Breadcrumbs Uncomplicated builds from your Shopify Navigation menus, and to a specific, fixable gap in it.
Categories always come from menus: every entry in the tree is a menu item, never a collection the app went looking for on its own. So the gap is never “a category missing from the menu” so much as a product’s collection that isn’t a category at all, or a category that genuinely sits outside the menu the app is currently scoped to.
A crumb missing a level
The server-rendered trail is built by walking up through a product’s ancestor categories and looking up each one’s current menu link. A parent whose menu link can’t be found is simply skipped, which drops that level from the trail without breaking anything else in it. Two things produce that gap: the menu was edited since the app last rebuilt its snapshot of it (editing a menu in Online Store > Navigation doesn’t change the storefront by itself; the app still needs Refresh Categories afterwards), or the category genuinely lives outside the menu your Top-level category setting currently points at. The Free plan can do the same thing from a different angle: only the first 10 collection-linked categories make it onto your storefront snapshot, so a category past that cap has no ancestors to show even though it exists; the admin’s Excluded categories card lists what didn’t make the cut.
The wrong collection, or one you didn’t expect
When a product belongs to more than one collection and its URL doesn’t say which one you’re browsing from, the app guesses using the Breadcrumb selection on product pages setting, which defaults to Most specific (smallest collection) breadcrumb. That guess first looks for one of the product’s collections that’s actually inside the category tree. Only when none of them are in the tree does it fall back to the product’s first or last collection, whichever the setting is tuned to, even when that collection was never added to any menu - an automated “Sale” or “New arrivals” collection is the common case. That’s a real collection, rendered as a real crumb; it’s just not a category, so it shows up with no ancestors and no relation to the menu structure you expect.
All Products where a collection should be
Sometimes there’s no collection to hint at, full stop: the product has no collections of its own, or Breadcrumb selection on product pages is set to Show generic breadcrumb. Either way the storefront falls back to the generic All Products crumb, linking to /collections/all by default. This is a different gap from the two above - there’s nothing wrong with your menus here, the product simply isn’t attached to any collection the app could point at.
A crumb in the wrong language
Finding a menu link doesn’t just decide whether a level appears - it also decides where its title comes from. On the server, the title is read straight from Shopify’s live menu, translated for whichever storefront language the shopper is viewing. When the app falls back to finishing the trail in the browser instead, the final crumb starts from the collection’s own title and is then overwritten with whatever title the app’s category snapshot holds, which is your store’s base language rather than Shopify’s per-language menu translation; the breadcrumb’s structured data for search engines is also added afterwards by a script rather than shipped in the page’s HTML, which is a less reliable way for a crawler to pick it up. That’s the real cost of a menu link the app can’t find: translations and server-rendered structured data, almost never the collection crumb itself.
Closing the gap
- Click Refresh Categories after any change to a menu in Online Store > Navigation. The trail renders from a snapshot of your menus, not the live menus, so an edit does nothing on the storefront until that snapshot is rebuilt.
- Check Top-level category in Settings. If a collection’s category belongs to a menu outside the one it’s currently scoped to, either add it into the menu Top-level category points at, or widen the setting to one that already covers it.
- On the Free plan, open the Excluded categories card to see what’s sitting past the 10-category cap, and upgrade if those categories need to show up too.
- Then check the Category Advisor. It lists structural menu issues with a specific next step for each, and it’s worth clearing those before judging whether a trail is fixed.
Summary
A breadcrumb that’s missing a level, shows a collection you didn’t expect, says All Products, or shows an untranslated crumb is a gap in the category tree the app builds from your menus, not a broken trail. Work out which kind of gap it is - a stale snapshot, a category outside Top-level category, a collection that was never a category, or the Free plan’s cap - close it, and run Refresh Categories. The full, translated, server-rendered trail comes back as soon as the app can walk a path to it on the server.