You can hide product prices on Shopify in two ways: edit your theme’s Liquid code, or use an app that controls price visibility with rules. Theme code can work for one simple, store-wide condition. An app is safer when prices need to change by product, collection, customer, login status, or sales workflow.
The important part is not merely making the number disappear. You need to hide it everywhere the product appears, give the shopper a clear next step, and make sure the rule still works after a theme update.
Can you hide a product price without deleting it?
Yes. The price can stay on the product in Shopify Admin while your storefront decides whether to display it.
That distinction matters. Deleting or replacing the product price can interfere with reporting, feeds, draft orders, and future sales. Hiding it at the storefront layer keeps the real price attached to the product while controlling what a particular visitor sees.
Common reasons to do this include:
- Wholesale prices available only to approved buyers
- Custom or made-to-order products that need scoping first
- Trade catalogs where customers must log in to see pricing
- High-ticket products sold through an enquiry or quotation process
- Products whose price changes with dimensions, quantities, or specifications
Method 1: Hide the price in your Shopify theme
A developer can wrap your theme’s price output in a Liquid condition. Shopify’s customer Liquid object is available when a shopper is logged in and returns nil when they are not, so it can support a basic logged-in/guest rule.
A simplified example looks like this:
{% if customer %}
{% render 'price', product: product %}
{% else %}
<a href="/pages/contact">Request a price</a>
{% endif %}
Do not paste that into your live theme blindly. Themes use different section names, snippets, product-card components, and arguments. Treat it as an illustration of the logic, not universal copy-and-paste code.
1. Duplicate your theme first
Go to Online Store → Themes, open the actions menu for your current theme, and duplicate it. Make changes to the copy so you have a clean rollback if anything goes wrong.
2. Find every place that renders a price
The main product template is only the start. Your theme may render prices in:
- Product pages
- Collection grids
- Search results
- Predictive search
- Featured-product sections
- Related-product recommendations
- Quick-view drawers
- Cart drawers and recently viewed widgets
Many themes use a shared price snippet, which makes the change easier. Others render price markup in several separate components. Search the theme code for price, money, and calls to price-related snippets, then trace where each one appears.
3. Add a condition and a useful replacement
A blank gap looks broken. Replace the hidden price with an instruction such as Request a Quote, Price on Request, Call for Price, or Log in to See Price.
Choose wording that tells the buyer what happens next. “Contact us” is vague. “Request a Quote” makes the action and expected response much clearer.
4. Test the rule across the storefront
Test while logged out, logged in, on mobile, and with at least one product that should still show a normal price. Check every surface listed above—not just the product page.
This is where manual theme edits often fail. A merchant hides the main product price, then discovers that the same price is still visible in search or a recommended-products block.
Method 2: Hide prices with rules instead of code
An app is the more practical option when price visibility is not one universal yes/no rule.
For example, you might want to:
- Hide prices only for products with a particular tag
- Apply the rule to a collection or vendor
- Show prices to logged-in wholesale customers but not guests
- Replace both the price and Add to Cart button
- Send the shopper into a product-aware quote form
- Use different rules for different parts of the catalog
DA:Request a Quote, Hide Price handles those rules without requiring theme-code changes. It can show Request a Quote, Call for Price, Price on Request, or Login to See Price, then carry the buyer into an RFQ form instead of leaving them at a dead end.
Theme code vs. an app
| Use theme code when… | Use an app when… |
|---|---|
| The rule is simple and unlikely to change | Rules differ by product, collection, vendor, or customer |
| You have a developer who understands your theme | A merchant team needs to manage rules without code |
| You only need to change the display | You need a quote form and sales workflow too |
| You are prepared to retest after theme updates | You want rules managed outside brittle theme snippets |
Theme code is not automatically wrong, and an app is not automatically necessary. The right choice depends on how many conditions you need and who will maintain them.
Do not hide Add to Cart by accident—or forget to hide it
Price and purchase controls are separate decisions.
If a shopper cannot see a price but can still add the item to the cart, the experience may be confusing. On the other hand, some stores intentionally hide the price while allowing approved customers to continue purchasing.
Write the intended behavior down before implementation:
- Who should see the price?
- Who should see Add to Cart?
- What should everyone else see?
- Where should the replacement action lead?
- What information does the sales team need from that shopper?
That small exercise prevents contradictory storefront rules.
A final price-leakage checklist
Before publishing, check:
- Main product page
- Collection and search cards
- Predictive search
- Featured and recommended products
- Quick view and cart drawer
- Desktop and mobile
- Logged-in and logged-out states
- Products that should remain normally purchasable
- The replacement button or message
- The quote or contact flow after the click
The goal is not simply “no price.” The goal is a deliberate buying journey: the right customer sees the right information, and everyone else gets a clear way to ask for it.
If that journey needs product and customer rules rather than one hard-coded condition, install DA:Request a Quote, Hide Price and manage the workflow without editing every price component in your theme.