Solving the Double Price Mystery: Why Your Shopify Store Shows Prices Twice & How to Fix It

Hey store owners!

Ever launched your beautiful Shopify store, only to find your product prices doing a weird double-take? You know, one price in your local currency, and then another right next to it, perhaps trying to convert? It's a surprisingly common head-scratcher, and it cropped up recently in a community thread started by CashBear, who was seeing duplicate prices on their Polamaneli store.

CashBear had a classic case: they'd installed a currency converter app (first BUCKS, then Beast Currency Converter), uninstalled one, disabled the other, but the phantom second price just wouldn't go away. It's frustrating, right? You think you've removed the culprit, but the problem persists. Let's dive into why this happens and, more importantly, how to fix it, drawing insights from some fantastic community experts like CartPolishDev, Maciej_Lektoro, and Shawn-Z.

Why Your Prices Are Playing Duet

The core issue, as pointed out by several experts in the thread, often comes down to how these third-party currency converter apps work. Many of them don't actually replace your theme's original price display; instead, they overlay or append a converted price. So, when the app is active, you see two prices. The real kicker is that even after uninstalling or disabling an app, it can leave behind bits of code in your theme files. This "residual code" then continues to inject that second price, even when the app itself is no longer active.

Maciej_Lektoro, after inspecting CashBear's product page, confirmed this. The original ZAR amount was plain text, while the converted amount was inside a specific HTML element: a with doubly-currency attributes. This is a tell-tale sign of an app appending its own price structure.

The Temptation of a Quick CSS Fix (and why it's often a trap)

When faced with a duplicate display, it's natural to think, "Can't I just hide one with CSS?" Moeed offered a common CSS snippet to try:


This code, when added to your theme.liquid file, targets and hides any element with class="money". CashBear actually tried this, and as Maciej_Lektoro wisely predicted, it hid the converted price, leaving only the original. This isn't the goal if you want to display accurate local currency pricing for your international customers! So, while CSS can hide things, it doesn't fix the underlying code conflict and can often hide the wrong information.

The Smarter, More Robust Solution: Shopify Markets

This was a huge takeaway from the community discussion, especially from CartPolishDev and Shawn-Z: if you're using Shopify Payments, you might not need a third-party currency converter app at all! Shopify's native Markets feature (often combined with your theme's built-in country/currency selector) is a game-changer.

Here's why Shopify Markets is superior:

  • Actual Local Currency Payment: Most third-party apps only display a converted price. When the customer goes to checkout, they're often still charged in your store's base currency (e.g., ZAR in CashBear's case). Shopify Markets, however, allows customers to actually pay in their local currency at checkout, leading to a much smoother and trustworthy shopping experience.
  • Reduced Code Bloat: By using native Shopify features, you avoid adding more app code to your theme, which can prevent speed issues, conflicts, and the dreaded duplicate price problem.

Cleaning Up the Mess: A Step-by-Step Approach

If you're stuck with double prices, here's how to tackle it, combining the best advice from the community:

Step 1: Always Work on a Duplicate Theme!

This is non-negotiable. Before making any changes to your code or app embeds, go to Online Store > Themes, find your live theme, click "Actions," and select "Duplicate." All your testing and editing should happen on this duplicate. Only publish it if you&re 100% sure everything is working perfectly.

Step 2: Check App Embeds for the Culprit

Even if an app is "disabled," its embed script might still be loading. On your duplicate theme:

  1. Go to Online Store > Themes.
  2. On your duplicated theme, click "Customize."
  3. In the editor, look for "App embeds" (usually on the left sidebar).
  4. Find your currency converter app (e.g., Beast Currency Converter) and ensure it's turned off.
  5. Preview a product page. If you only see one price now, that was it!

Step 3: Manual Code Cleanup (with Extreme Caution!)

If disabling the app embed doesn't fix it, residual code is likely the problem. This is where Maciej_Lektoro's and Shawn-Z's advice is crucial:

  1. On your duplicate theme, go to Online Store > Themes, click "Actions," then "Edit code."
  2. Search files like theme.liquid and any snippets related to pricing (e.g., price.liquid, product-price.liquid, etc.) for keywords like "doubly" or "money" (keeping in mind span.money is also used for legitimate prices). You might also search for the names of the apps you previously installed (e.g., "Beast", "BUCKS").
  3. This is important: Don't delete every line you find! Shopify notes that some apps need specific cleanup steps. Deleting the wrong lines can break your theme. Look for code blocks that are clearly injecting the second price. If you find something like data-doubly-currency attributes, those are strong indicators of old converter app code.
  4. After making any changes, save and immediately preview your duplicate theme to see if the issue is resolved and nothing else is broken.

Here's an example of the image from the thread, showing a visual of the duplicate price:

Step 4: When to Call the App Developer

If you're unsure about deleting code, or if the problem persists after these steps, the best course of action is to contact the developer of the currency converter app you were using. Provide them with your theme name/version, the specific price markup you're seeing (like the with doubly-currency attributes), and explain that "hiding .money removes the converted price, leaving the original." This gives them specific information to trace the issue without more trial-and-error on your part.

Ultimately, solving the double price mystery on Shopify often comes down to understanding how apps integrate with your theme and being diligent about cleaning up any residual code. Leveraging Shopify's native Markets feature for multi-currency is often the cleanest and most effective solution, especially if you're on Shopify Payments. Always test thoroughly on a duplicate theme, and don't hesitate to lean on app developers or the incredibly helpful Shopify community when you hit a snag!

Share:

Use cases

Explore use cases

Agencies, store owners, enterprise — find the migration path that fits.

Explore use cases