Troubleshooting Upsells
Purpose
Fix “upsell not showing”, “discount not applying”, “after checkout not working”, “analytics shows 0”, and surface/block issues.
⭐ Why This Matters
Upsells fail most often because the offer is active but invisible or blocked by:
- Missing blocks on surfaces
- Wrong After Checkout app selected in Shopify
- Rules/eligibility preventing display
- Market/discount conflicts
SEO intent coverage: “post purchase upsell not showing Shopify”, “Shopify thank you page upsell not appearing”, “after checkout upsell app not working”.
⚙️ How Upsells Work (Quick Model)
An upsell appears only when all are true:
- The upsell module is enabled (Upsells → Settings — global master switch)
- Surface selected (Thank You / Order Status / After Checkout / Checkout*Plus)
- Block exists on that surface (where applicable)
- Offer is Active + in priority
- Targeting rules match (conditions, markets, segments)
- Product is available + allowed
- Order is eligible (edit window / fulfillment state)
✅ Decision Tree Diagnosis
Step 1 — Which surface is failing?
Pick one:
A) Thank You / Order Status not showing
- Block missing or added to wrong template
B) After Checkout not showing
- Shopify allows only one app to control After Checkout
- AE must be selected in Shopify checkout settings
C) Checkout upsell not showing
- Checkout upsells are Shopify Plus only
D) Free-shipping bar shows the wrong amount
- Wrong threshold mode (global tiers vs custom vs selected-item)
- Missing per-market override for the customer's country (countryCode/threshold/message)
- Hard-coded numbers instead of {{amount_remaining}} / {{threshold}} tokens
E) Email upsell not tracking opens/clicks
- Snippet pasted without the platform's email/order merge tags
- PDP redirect missing the Email upsell app embed + Email upsell banner block
- Wrong platform selected, so merge-tag syntax doesn't match your ESP
Step 2 — Confirm Offer activation + priority
- Offer is Active
- Surface is selected
- Priority is correct (if multiple offers)
Step 3 — Check targeting + market rules
- Conditions match test order (order total, tags, segment)
- Market included (or blank for global)
Step 4 — Verify product eligibility
Product is active, available, in stock
Not restricted (gift card/subscription/bundle conflicts)
🧪 Real merchant scenarios
Scenario A — “Offer is active but invisible”
Cause: Block missing on surface.
Fix: Add Upsell Block on correct surface template.
Scenario B — “After Checkout shows warning ‘only one app…’”
Cause: Another app controls After Checkout.
Fix: Switch After Checkout app to Account Editor.
Scenario C — “Discount didn’t apply”
Cause: Conflicting Shopify automatic discounts or currency rounding.
Fix: Remove overlap; test on a fresh order; confirm Discount % > 0.
Scenario D — “Analytics shows 0 revenue”
Cause: No views (offer never displayed) OR offer displayed but not accepted.
Fix: First confirm views exist; then test targeting and surface setup.
Scenario E — "Email upsell sends but shows 0 opens/clicks"
Cause: Merge tags stripped from the snippet, or the Email upsell app embed + banner block aren't enabled.
Fix: Re-paste the snippet from Get email snippet into a raw HTML block, keep the email/order merge tags, and enable the Email upsell app embed and Email upsell banner block for PDP redirects.
Scenario F — "Free-shipping bar shows the wrong threshold in some countries"
Cause: No per-market override matches the customer's country, so the bar falls back to the default threshold/message.
Fix: Add a per-market override (countryCode + threshold + message) for that country, and confirm the threshold mode (global tiers / custom / selected item) is what you intend.
❓ FAQs
Q: Can I show upsells on all surfaces?
Yes, but optimize per surface. Don’t copy the same offer everywhere.
Q: Do upsells create a new order?
No. Items are added to the same Shopify order.
Q: Why do some customers see it and others don’t?
Targeting rules (segments, markets, conditions) and inventory checks.
⚠️ Common issues & fixes
Issue | Likely cause | Fix |
|---|---|---|
Nothing shows on any surface | Upsell module disabled (master switch off) | Enable it in Upsells → Settings |
Upsell not showing | Block missing / wrong surface | Add block and test |
After Checkout not showing | AE not selected in Shopify checkout | Select AE as After Checkout app |
Checkout upsell missing | Not Shopify Plus | Use After checkout / Thank-you / Order status instead |
Discount not applying | Conflicting discounts | Remove overlap; retest |
Revenue is 0 | No views or no acceptance | Confirm views first |
Email upsell shows 0 opens/clicks | Merge tags stripped / app embed off | Re-paste snippet with merge tags; enable Email upsell app embed + banner block |
Free-shipping bar wrong amount | Wrong mode or missing market override | Set threshold mode; add per-market override (countryCode/threshold/message) |
Can't add more products | 10-product cap reached | Remove a product or split into a second offer |
🔗 Related Guides
→ Creating Upsell Offers (End-to-End Setup)
→ Targeting Rules, Pricing & Market Conditions
→ A/B Testing & Upsell Analytics
Updated on: 15/06/2026
Thank you!
