Hide prices and show a "Request a quote" button
Read time: 6 minutes. Who it's for: Merchants who want to hide retail prices on their Shopify storefront for wholesale and B2B buyers, and show a "Request a quote" button in their place.
⚠️ QuotWay's hide-price is a storefront visual hide - it controls what buyers see, but it does not remove the price from your page source, structured data, or Open Graph tags, so search engines can still read it. Search-engine-safe price hiding is planned for Professional and not yet shipped.
Hiding prices on Shopify means replacing the price on your storefront with a "Request a quote" button (or your own message), so wholesale and B2B buyers ask for pricing instead of seeing your public rate. With QuotWay you turn it on per plan, choose whether to remove the price or swap it for text, and target exactly which products and buyers it applies to. This article walks through setting it up - and tells you plainly what hide-price does and doesn't do for search engines.
What you'll get
When hide-price is on, the buyers you target see a "Request a quote" button where the price used to be, instead of your retail rate. The same targeting that decides who sees the quote button decides whose prices hide, so retail shoppers check out as normal while wholesale buyers get the quote path. You can also hide Shopify's native "Add to cart" and "Buy it now" buttons so requesting a quote is the only way forward.
⚠️ Hiding prices requires the Starter, Professional, or Enterprise plan. On the free Lite plan you can add the "Request a quote" button and hide the native "Add to cart" / "Buy it now" buttons, but the price itself stays visible.
Before you start
- QuotWay installed, with the app embed turned on. See App embed and activation.
- A Starter plan or above (the 14-day trial on any paid plan unlocks hide-price during the trial).
- At least one targeting rule, if you want prices to hide only for specific products or buyers rather than storewide. See Targeting rules.
How to turn on hide-price
These steps emit HowTo schema.
- Open the hide-price settings. In your QuotWay admin, go to Quote button → Pricing.
- Pick a hide mode. Choose how the price is replaced:
- Hide only - remove the price element so nothing shows in its place.
- Hide and show text - replace the price with your own message, for example "Request a quote for trade pricing" or "Contact us for pricing". The message is per-locale, so international buyers see it in their language.
- Set the replacement text (if you chose "Hide and show text"). Enter the message buyers see where the price was. Keep it short and action-led - it sits next to the "Request a quote" button.
- Choose where it applies. Set Apply on to the storefront surfaces you want covered:
- Product pages - hide the price on the product page itself.
- Collection pages - hide the price on product cards in collections.
- All pages - hide the price across product pages, collections, search, and home.
- Choose the targeting mode. Set Apply to to decide which products are affected:
- Quotable products only (recommended) - hide the price only on products that match your quote-button targeting, so price-hiding follows the same products and buyers as the button.
- All products on the selected pages - hide every price on the surfaces you chose, regardless of quote-button targeting.
- (Optional) Hide the native buttons. To make quoting the only path, also turn on hiding Shopify's native "Add to cart" / "Buy it now" buttons. This is available on every plan, including Lite.
- Save. The save bar confirms your changes. The price now hides on your storefront for the matching products and buyers.
Open your storefront as a guest (or as a targeted customer) to confirm the price is replaced and the "Request a quote" button shows.
Does this hide prices from Google?
No - not today. QuotWay's hide-price is a storefront visual hide. It controls what your buyers see in their browser; it does not remove the price from the page itself. After QuotWay hides a price, the real number is still in:
- The page source - the raw HTML your theme sends before any script runs. Search engines read this first.
- Structured data - the Product JSON-LD block (
<script type="application/ld+json">) that carriesoffers.price. - Open Graph and meta tags -
og:price:amount,product:price:amount, anditemprop="price".
QuotWay hides the visible price with CSS and JavaScript, which run after the page is served. Search engines index the HTML they're served before that happens, so a visually hidden price can still appear in search results and structured data. Do not treat the visual hide as a way to keep your trade pricing off Google - it isn't, for QuotWay or for any tool that hides the price client-side.
What it takes to truly keep a price out of search. Because Google crawls your store logged out, the reliable approach is to not server-render the price for guests in the first place - a theme-side gate that emits no price at all (no visible number, no JSON-LD price, no og:price) for logged-out visitors. When the price was never in the HTML a guest receives, there's nothing to index. That's a step that lives in your theme: an app can add markup to your theme, but it can't remove your theme's own price element or structured data.
Where QuotWay is headed. Search-engine-safe price hiding - a server-side gate that removes the price and its structured data from the source for guests, plus a price-leak checker that fetches your page as a guest and flags anything still exposed - is planned for the Professional plan and not yet shipped. Until then, QuotWay's hide-price is a visual hide only. If keeping prices out of search is a hard requirement for you right now, use a server-side theme gate (so guests are served price-free HTML) or set the gated pages to noindex.
Gotchas
- Themes vary - a price isn't hiding. QuotWay matches the price elements used by Dawn, Horizon, and most OS 2.0 themes out of the box. If your theme uses an unusual price markup and a price won't hide, add your theme's price custom CSS selector in Quote button → Pricing so QuotWay can target it.
- Prices flash before hiding. On slower connections the price can appear briefly before the script hides it. This is expected for a visual hide - the price is in the page source (see the section above), so it renders first and is hidden a moment later.
- Collection / card prices stay in the source. Hiding prices on collection cards is a visual hide only; themes render card prices server-side, so those prices remain in the page source even when hidden from view.
- A targeted buyer still sees the price. Check that the buyer matches a targeting rule and the Apply to mode covers them. With Quotable products only, a product the quote button doesn't target won't hide its price.
- You changed the message but buyers see the old text. Replacement text is cached briefly on the storefront. Reload after a short wait, and confirm you saved per the correct locale.
Related articles
- Quote button placement - where the "Request a quote" button shows on your storefront.
- Targeting rules - decide which products and buyers see hidden prices and the quote button.
- Plans, trial, and billing - which plan unlocks hide-price and what each tier includes.
Build notes (hide-prices)
- Hide-price accuracy is non-negotiable. Shipped = storefront visual hide (Starter+). The "Does this hide prices from Google?" section must stay honest: visual hide does NOT remove price from the page source, JSON-LD, or
ogtags; search-engine-safe hiding = planned for Professional, not shipped. Never present it as live. Source:docs/post-launch/HIDE-PRICE-SEO-PLAN.md. - Plan facts (match
copy/pricing.md): hide price = Starter+; hiding native Add to cart / Buy it now = all plans (incl. Lite); 14-day trial on paid plans unlocks hide-price during trial. Plan names Lite / Starter / Professional / Enterprise only. - Hide modes: "Hide only" vs "Hide and show text" (per-locale replacement text). Apply on: product / collection / all. Apply to (targeting mode): "Quotable products only" (default) vs "All products on the selected pages".
- Do-not-claim: never "hidden from Google / search engines" as shipped; no
noindextoggle as a shipped QuotWay feature (it's described as a theme-side option); no auto theme-code editing; no leak-checker as shipped (planned). No fabricated metrics or ratings. - AEO: H1 is the task; opening sentence answers "how do I hide prices on Shopify?"; the "Does this hide prices from Google?" section leads with the direct "No - not today" answer. Sentence-case headings; one H1.
- Schema: emit
HowTo(the enable-hide-price steps) +BreadcrumbList. Facts validated vsentitlements.server.ts/copy/pricing.md. - URLs: all
/docs/...; cross-refs relative in source, rewritten to/docs/<category>/<slug>at publish. Nohelp.quotway.com/docs.quotway.com. - Terminology: "quote", "buyer", "merchant", "targeting rules", "app embed / app block", "Lite/Starter/Professional/Enterprise". No banned clichés.
Still need a hand? The team is happy to help.