Skip to main content

Strikethrough (Compare-at) Prices Not Showing on Collection Pages

Updated today

1) Short Explanation of the Issue

If discounted products correctly show strikethrough pricing on the product page, but not on collection pages, the issue is usually caused by your Shopify theme’s default pricing logic.

Most Shopify themes render collection pricing using built-in rules that:

  • Only show Compare-at price if specific conditions are met

  • Ignore dynamic storefront display logic

  • Override custom discount visualizations

  • Cache collection card pricing separately

This is typically a theme-level limitation — not a campaign calculation problem.


2) Quick Check (Checklist)

Before proceeding, confirm:

  • The campaign is Active

  • The product is included in the campaign

  • The discount appears correctly at checkout

  • The product page shows correct sale formatting

  • The product has a valid Compare-at price

  • The collection page is refreshed in Incognito mode

  • No other price app is modifying collection cards

If product page works but collection page doesn’t, the issue is almost always theme rendering logic.


3) Step-by-Step Solution


Step 1 — Confirm Compare-at price logic in Shopify

  1. Go to Shopify Admin → Products.

  2. Open the affected product.

  3. Confirm:

    • Compare-at price is higher than the actual selling price.

  4. Save the product.

  5. Refresh collection page.

Some themes only display strikethrough when:
compare_at_price > price


Step 2 — Test if the theme supports collection sale badges

  1. Go to Online Store → Themes.

  2. Click Customize.

  3. Open a Collection template.

  4. Check if product cards have:

    • “Show sale badge”

    • “Show compare-at price”

    • “Enable sale pricing”

Enable them if available.

Save changes and retest.


Step 3 — Inspect how the theme renders collection pricing

Most themes use a file similar to:

  • card-product.liquid

  • product-grid-item.liquid

  • price.liquid

Inside these files, pricing is often controlled by logic like:

{% if product.compare_at_price > product.price %}

If your discount system does not modify Shopify’s base product price, the theme may not detect it as “on sale.”

This is expected behavior for many modern themes.


Step 4 — Check for price app conflicts

If you use:

  • Currency converters

  • Dynamic pricing apps

  • Bundle apps

  • Custom JS pricing scripts

They may override collection card rendering.

Temporarily disable other pricing apps and retest.


Step 5 — Clear storefront caching

Collection pages are often cached more aggressively.

Test using:

  • Incognito window

  • Hard refresh (Ctrl+Shift+R / Cmd+Shift+R)

  • Different device

  • Different browser

If the product page updates but collection page does not, caching is likely involved.


Step 6 — Understand theme limitation (Important)

Many Shopify themes:

  • Only show compare-at pricing based on Shopify’s native product price fields.

  • Do not dynamically reflect app-based price presentation changes on collection cards.

In such cases:

The discount works.
Checkout is correct.
Product page may be correct.
Collection card rendering is theme-restricted.

This is not a pricing calculation issue.



4) When Should You Contact Support?

Contact support if:

  • The discount does NOT apply at checkout

  • Product page also does NOT show sale pricing

  • Compare-at price is properly set but neither page reflects it

  • You suspect JavaScript conflicts

  • You need guidance modifying theme pricing logic

When contacting support, include:

  1. Store URL

  2. Theme name and version

  3. Product URL

  4. Collection URL

  5. Screenshot of product pricing settings

  6. Screenshot of campaign settings

This allows faster technical diagnosis.

Did this answer your question?