Multi-collection breadcrumbs
Complete guide for handling products in multiple collections with smart, dynamic breadcrumbs
How the app builds a breadcrumb path
The storefront uses the first available path below. If a rule cannot provide a valid path, it continues to the next one. You can see this exact list any time inside the app: open Product breadcrumbs and click Breadcrumb generating rules at the top of the page.
The 7 rules, in order
Each rule is tried in this exact order. As soon as one produces a valid collection or path, the app stops and uses it.
Rule 1 — Follow visitor path
When enabled, the breadcrumb can follow the valid collection the shopper used to reach this product. Select the status to change this setting. This is an on/off switch, not a path by itself. Turn it on in Settings → Smart behaviour — once it's on, Rule 2 takes over and starts reading the shopper's actual navigation.
✅ Off by default — existing stores keep their current breadcrumbs until you turn it on
🎯 Best for stores where the same product sits under several brands or categories (Volvo, Scania, Mercedes trucks; Winter Jackets + Men's Clothing, etc.)
📌 When it's off, breadcrumbs skip straight to Rule 3
Rule 2 — Collection from the storefront context
Uses the product's collection from a URL such as /collections/grills/products/product-handle, or a valid collection context remembered from the shopper's navigation. This rule is skipped when Follow visitor path is disabled or no valid context is available.
"Remembered from the shopper's navigation" covers a shopper who browsed a collection earlier in the same visit, even if they clicked through another page before landing on this product.
✅ Dynamic & context-aware — always matches how the shopper actually got here
🎯 Best experience for multi-brand and multi-category catalogs
🔗 Skipped for direct links (Google, ads, bookmarks) — those fall through to Rule 3
Rule 3 — Custom breadcrumbs
Uses the exact path saved for this product. Custom paths do not depend on the Category tree. Set one from Product breadcrumbs → select the product(s) → ⋯ → Assign custom path. Build any number of levels, and point each level at a collection, a page, or a label/URL you type yourself — the levels don't need to match a real collection at all.
✅ Full control over the exact wording and links shown
🎯 Ideal for temporary campaigns (a Black Friday path) or products that don't fit any collection cleanly
📌 Independent of the Category tree — reordering or renaming collections later won't change a custom path
Rule 4 — Product default collection
Uses the collection explicitly assigned as this product's preferred automatic path. Set one from Product breadcrumbs → select the product(s) → Assign default collection (or from the ⋯ menu). Pick any collection from the list — the Category tree column shows whether it's already in your tree or still unassigned.
✅ Consistent everywhere direct links and search results land
🎯 Best for SEO consistency — also the collection used in JSON-LD structured data
📌 Doesn't remove the product from its other collections, it only decides which one shows in the breadcrumb
Rule 5 — Deepest collection in the tree
Chooses the product's eligible collection with the most parent levels in the Category tree.
✅ Automatic — nothing to configure
🎯 Picks the most specific, most descriptive path available
📊 Depth is calculated automatically from your Category tree
Rule 6 — Category tree order
If eligible collections have the same depth, the collection shown first in the Category tree wins.
✅ Deterministic tie-break based on the order collections appear in the Category tree
🎯 Reorder collections in the tree any time to change which one wins a tie
Rule 7 — Shopify collection order
As the final tie-breaker, uses the first eligible collection in the order Shopify returns for this product. This is the only rule available on the Free plan — every product's breadcrumb comes from this rule unless you upgrade to Essential.
✅ Always available, on every plan
📊 No configuration needed
⬆️ Upgrade to Essential to unlock Rules 1–6 above
Understanding collection depth/level
The depth is how many levels deep a collection is in your hierarchy. The app automatically calculates this:
✅ More specific category = better user context
✅ More detailed breadcrumb path
✅ Better SEO with longer, descriptive paths
Home (Level 0 - Root)
│
├── Vehicles (Level 1)
│ │
│ ├── Trucks (Level 2)
│ │ │
│ │ ├── Volvo (Level 3) ← Depth = 3
│ │ ├── Scania (Level 3) ← Depth = 3
│ │ └── Mercedes (Level 3) ← Depth = 3
│ │
│ └── Cars (Level 2)
│ │
│ └── Sedans (Level 3) ← Depth = 3
│
└── Heavy Duty (Level 1)
│
└── Industrial (Level 2) ← Depth = 2Real example: multi-brand truck store
Let's walk through a complete example with a truck parts store:
Home
│
├── 🚛 Trucks
│ ├── Volvo Trucks (Level 2)
│ │ ├── Volvo Engines (Level 3)
│ │ ├── Volvo Parts (Level 3)
│ │ └── Volvo Accessories (Level 3)
│ │
│ ├── Scania Trucks (Level 2)
│ │ ├── Scania Engines (Level 3)
│ │ ├── Scania Parts (Level 3)
│ │ └── Scania Accessories (Level 3)
│ │
│ └── Mercedes Trucks (Level 2)
│ ├── Mercedes Engines (Level 3)
│ └── Mercedes Parts (Level 3)
│
├── 🔧 Parts
│ ├── Universal Parts (Level 2)
│ └── Engine Components (Level 2)
│
└── 🆕 New Arrivals (Level 1)Product example: "Turbocharger T5000"
This product belongs to 4 collections:
✅ Trucks > Volvo Trucks > Volvo Parts (Level 3)
✅ Trucks > Scania Trucks > Scania Parts (Level 3)
✅ Parts > Universal Parts (Level 2)
✅ New Arrivals (Level 1)
Scenario walkthrough
Scenario 1: Follow visitor path is on, customer browses the Volvo collection
Customer journey: 1. Follow visitor path is turned on in Settings → Smart behaviour 2. Customer clicks "Trucks" → "Volvo Trucks" → "Volvo Parts" 3. Customer clicks "Turbocharger T5000"
URL generated by Shopify:
/collections/volvo-parts/products/turbocharger-t5000
Breadcrumb displayed:
Home > Trucks > Volvo Trucks > Volvo Parts > Turbocharger T5000Scenario 2: same setup, customer browses the Scania collection
Customer journey: 1. Customer searches Google for "Scania turbocharger" 2. Lands on the Scania Parts collection page 3. Clicks "Turbocharger T5000"
URL generated by Shopify:
/collections/scania-parts/products/turbocharger-t5000
Breadcrumb displayed:
Home > Trucks > Scania Trucks > Scania Parts > Turbocharger T5000Scenario 3: customer arrives from Google with no collection context
Customer journey: 1. Customer searches Google for "turbocharger T5000" 2. Clicks the product directly from the search results 3. Lands on the product page with no collection in the URL and no remembered navigation
URL (direct product link):
/products/turbocharger-t5000
Breadcrumb displayed:
Home > Trucks > Volvo Trucks > Volvo Parts > Turbocharger T5000Scenario 4: you set a custom breadcrumb for a Black Friday promotion
Your action: for a two-week Black Friday promotion, you want this product to show a completely custom path — one that doesn't match any of its real collections. You build a custom path: Home > Black Friday > Engine Deals > Turbocharger T5000
Breadcrumb displayed (whenever Rules 1–2 don't apply):
Home > Black Friday > Engine Deals > Turbocharger T5000Scenario 5: you set a product default collection
Your action: for SEO purposes, you decide this product should normally show under "Universal Parts" in search results. Once the Black Friday promotion ends, you remove the custom path and set a default collection instead. You set default collection: Parts > Universal Parts
Breadcrumb displayed (whenever Rules 1–3 don't apply):
Home > Parts > Universal Parts > Turbocharger T5000How to set a default collection for a product
Follow these steps to manually set a default collection:
Step 1: Open the app and go to Product breadcrumbs
Step 2: Select one or more products using the checkboxes
Step 3: Click Assign default collection in the toolbar, or open the ⋯ menu and choose Assign default collection
Step 4: Search or scroll the list to find your collection — the Category tree column shows whether it's already in your tree or still unassigned
Step 5: Select the collection, then click Assign default collection to save
Step 6: Verify on the storefront — the breadcrumb should now show your default collection whenever Rules 1–3 don't apply
How to set a custom breadcrumb path
Use this when a product needs a path that doesn't match any of its real collections (a seasonal campaign, a bundle, a one-off landing path):
Step 1: Open the app and go to Product breadcrumbs
Step 2: Select the product(s), then open the ⋯ menu and choose Assign custom path
Step 3: Add a level for each step of the path — for each level, link to a collection, a page, or type a custom label and URL
Step 4: Reorder or delete levels as needed, then save
Step 5: Verify on the storefront — the breadcrumb should now show your exact custom path whenever Rules 1–2 don't apply
Real-world use cases
Use case 1: multi-brand store (Volvo, Scania, Mercedes)
Challenge: You sell truck parts for multiple brands. The same part (e.g., "Oil Filter OF-500") fits Volvo, Scania, and Mercedes trucks.
Product Collections: Volvo Parts (Level 3), Scania Parts (Level 3), Mercedes Parts (Level 3), Universal Parts (Level 2)
Follow visitor path is on. Customer browses Volvo → Breadcrumb: Home > Trucks > Volvo > Volvo Parts > Oil Filter
Customer browses Scania → Breadcrumb: Home > Trucks > Scania > Scania Parts > Oil Filter
Customer browses Mercedes → Breadcrumb: Home > Trucks > Mercedes > Mercedes Parts > Oil Filter
Customer from Google (no context) → Rule 5/6 picks the first Level 3 collection in the tree: Home > Trucks > Volvo > Volvo Parts > Oil Filter
Optional: set a default collection (Rule 4) to "Universal Parts" for consistent SEO when there's no visitor-path context
Use case 2: seasonal + category collections
Challenge: You have a "Winter Jacket" that belongs to both seasonal and category collections.
Product Collections: Men's Clothing > Jackets > Winter Jackets (Level 3), Winter Collection (Level 1), Sale Items (Level 1)
Customer browses Winter Jackets → Breadcrumb: Home > Men's Clothing > Jackets > Winter Jackets > Product
Customer browses Winter Collection → Breadcrumb: Home > Winter Collection > Product
Customer from Google (no context) → Rule 5 picks the deepest collection: Home > Men's Clothing > Jackets > Winter Jackets > Product
Recommendation: set a default collection (Rule 4) to "Men's Clothing > Jackets > Winter Jackets" for consistent SEO
Use case 3: new arrivals + regular categories
Challenge: New products are in both "New Arrivals" and their regular category.
Product Collections: Electronics > Smartphones > iPhone (Level 3), New Arrivals (Level 1), Featured Products (Level 1)
Customer browses the iPhone category → Breadcrumb: Home > Electronics > Smartphones > iPhone > Product
Customer browses New Arrivals → Breadcrumb: Home > New Arrivals > Product
Customer from Google (no context) → Rule 5 picks the deepest collection: Home > Electronics > Smartphones > iPhone > Product
Recommendation: don't set a default collection — let Rules 1–2 and 5–6 work automatically
Best practices & recommendations
When to use a default collection vs. a custom path
✅ Use a default collection (Rule 4) when:
The product belongs to 3+ collections and you want one consistent, real collection to win
You want consistent breadcrumbs in Google search results and JSON-LD structured data
You have a clear "primary" category for the product
SEO is a priority for this product
✅ Use a custom breadcrumb path (Rule 3) when:
The product needs a path that doesn't correspond to any real collection — a campaign, a bundle, a one-off landing page
You need full control over the exact wording of every level
The path should stay fixed even if you reorganize the Category tree later
❌ Don't set a default or custom path when
The product only belongs to 1-2 collections
You want fully dynamic breadcrumbs based on navigation (turn on Follow visitor path instead)
The product is equally important in all its collections
You're happy letting the automatic depth-based rules (5–7) choose
Collection hierarchy tips
✅ Best Practices:
Keep hierarchy depth between 2-4 levels (max 5)
Use descriptive collection names
Organize by most specific to least specific
Group related collections under parent collections
Use consistent naming conventions
❌ Avoid
Too deep hierarchies (6+ levels) - confuses customers
Too flat hierarchies (1 level) - loses context
Inconsistent naming patterns
Duplicate collection names at different levels
Quick reference guide
Decision tree: which path will show?
START: Customer views product page
│
├─ Follow visitor path is ON and there's a valid collection
│ context (URL or remembered navigation)?
│ ├─ YES → Show that collection ✅ (Rules 1–2)
│ └─ NO → Continue...
│
├─ Does this product have a Custom breadcrumb path saved?
│ ├─ YES → Show the custom path ✅ (Rule 3)
│ └─ NO → Continue...
│
├─ Does this product have a Product default collection set?
│ ├─ YES → Show that collection ✅ (Rule 4)
│ └─ NO → Continue...
│
├─ Find the DEEPEST eligible collection
│ ├─ Only one at that depth → Show it ✅ (Rule 5)
│ └─ Tie at the same depth → Continue...
│
├─ First collection at that depth in the Category tree ✅ (Rule 6)
│
└─ No Category tree position at all? → Use Shopify's own
collection order ✅ (Rule 7 — the only rule on the Free plan)Quick action guide
Want breadcrumbs that follow how customers actually browse? → Turn on Follow visitor path (Rules 1–2), and don't set a default or custom path
Need a path that doesn't match any real collection? → Use Custom breadcrumbs (Rule 3)
Want consistent SEO breadcrumbs regardless of navigation? → Set a default collection (Rule 4)
Product in many collections, no visitor tracking needed? → Set a default collection (Rule 4) to the most important one
Product in 1–2 collections? → No action needed, Rules 5–7 handle it automatically
Common questions
No! Setting a default collection only affects the breadcrumb display. The product remains in all its collections and can still be found when browsing any of them.
Yes! Each product can have its own default collection and its own custom path. This is perfect for stores with diverse product catalogs.
The app moves on to Rule 5 (deepest collection in the tree), tie-broken by Rule 6 (Category tree order) or Rule 7 (Shopify order) — unless Follow visitor path (Rules 1–2) already provided a path from the shopper's own navigation.
Custom breadcrumbs (Rule 3) let you build the entire path yourself, level by level, and it doesn't have to match any real collection. Product default collection (Rule 4) simply picks which one of the product's real collections to show — the rest of the path still comes from your Category tree.
Absolutely! The breadcrumb only affects the navigation path display. Products remain searchable and browseable in all their assigned collections.
The app automatically calculates depth based on your Category tree. You can see each collection's position when managing your tree in the app.
Rules 1–6 (visitor path, storefront context, custom breadcrumbs, default collection, deepest collection, Category tree order) require the Essential plan. The Free plan uses Rule 7 only — Shopify's own collection order.