Publish a range and keep the quote form. On made to measure or configurable products, a stated starting price gets you onto the buyer’s shortlist and into AI generated comparisons, while a bare request a quote button reads as missing data to both.
A language model reading contact us for pricing does not conclude that the product is expensive. It concludes that there is no price, and answers with a competitor’s.
There is a decision every merchant selling made to measure product eventually has to make, and most of them make it by default. The product cannot carry a fixed price, because the correct number depends on measurements, freight, materials, or volume that the customer has not told you yet. So the page says request a quote, and the decision is treated as settled.
It is not settled. Somewhere between the fixed price catalogue and the fully bespoke quote sits a third option that plenty of businesses use and almost nobody talks about: publish a range, name the factors that move it, and keep the quote form exactly where it is. The range does not replace the conversation. It decides whether the conversation happens.
Whether you are quoting $800 blinds or $40,000 commercial equipment, the mechanism is the same. A buyer comparing three suppliers is running an elimination process, and so is the assistant they increasingly ask to run it for them. What follows is how to decide what number to publish, how to derive it from data you already have, and how to build the form that catches the buyer once the number has done its job.
A page that says contact us for pricing does not communicate premium positioning to a buyer or to a language model, it communicates the absence of a number, and both fill the gap from somewhere else. The buyer fills it with an assumption, usually an unflattering one. The assistant fills it with a competitor’s published figure or an estimate of its own.
The behavioural shift underneath this is not speculative. Roughly half of software buyers now begin their research inside an AI chatbot, and price is among the first things they ask about. The same pattern is arriving in considered physical goods. The buyer who once opened four tabs now asks one question and reads one answer, and the vendors who appear in that answer are the ones whose numbers were readable.
Readable is doing a lot of work in that sentence. Gating a price behind a form makes it invisible, which most merchants understand. What catches people out is that a price assembled client side by a JavaScript component, hidden behind a region selector, or published as a PDF rate card is invisible for the same reason, because most crawlers read the raw document your server sends rather than the page a browser eventually renders. A merchant can believe their pricing is public and still be absent from every comparison.
The fix is unglamorous. Plain text in the HTML, the same numbers repeated consistently across the product page and any pricing FAQ, and no dependency on a script running first. Our fuller treatment of structuring pages so AI systems can quote them covers the same discipline applied to specifications and policies, and the pricing case is the highest stakes version of it.
The most instructive examples come from businesses with no checkout at all, several of which publish price ranges despite having nothing a customer can buy online. If a business whose only conversion event is a consultation still shows numbers, the argument that a Shopify merchant cannot is worth re-examining.
EKCO’s Edinburgh double glazing page is a clean illustration. The business has been trading since 1999 across kitchens, bathrooms, doors and windows, works out of a showroom in Uphall, and converts through a design consultation. There is no cart anywhere on the site. The page still states that a single window replacement typically runs £400 to £900, and that full house double glazing runs £5,000 to £15,000 depending on specification.
What makes it work is not the range on its own. Directly alongside it sits the list of what moves the number: material, with uPVC cheapest and timber or aluminium higher, design complexity, installation difficulty in listed or period properties, and glazing upgrades such as acoustic or triple glazed units. That pairing is the actual unit of work. A range published without its factors invites a buyer to arrive at the call asking why their quote came in at £11,000. A range published with its factors lets the buyer place themselves inside it before anyone picks up the phone.
The transferable version is a sentence and a short list on the product page. Here is the typical range, here are the four things that decide where in it you land, here is where to tell us which ones apply to you. At $30K months that is a paragraph you write once. At $3M months it becomes a dynamic block driven by product metafields, but the content is identical.
Derive your range from your own closed quote history rather than a competitor’s page, using roughly the 10th and 90th percentile of your last fifty completed jobs with genuine outliers excluded. The 10th percentile becomes your from price. The 90th becomes the top of the published range. Anything past that is a project rather than a product and belongs in a separate conversation.
Fifty is the working minimum because smaller samples let one unusual job distort the whole band. If you have not closed fifty, publish a from price only and add the upper bound once you have. Under $500K a spreadsheet export of your quote records is genuinely enough. Above that, Shopify’s draft orders give you the same history in a queryable form, since every quote you have sent through the admin is already a record with a final value attached.
The trap is the from price that only two customers in three years actually paid. A number technically true and practically fictional is worse than no number, because the buyer arrives anchored to it and every quote after that feels like a bait and switch. If your genuine floor is $2,400 and your median is $6,800, publishing from $1,900 buys you a click and loses you the close. Publish the honest floor and let the range do the qualifying.
Run the same exercise per product family rather than across the catalogue. A blended range that averages your simplest configuration against your most complex describes nothing you sell and will be wrong for every buyer who reads it.
A quote form earns its place only when the correct price depends on information the customer holds and you do not, and every other use of it is a buy button that somebody was afraid to build. The test is direct: if you could fulfil the order today at a published price with known freight and no approval chain, put a price and a button on it.
Timing is the other input. Products in the $500 to $1,000 band typically close in three to seven days, while purchases above $3,000 commonly take two to four weeks across multiple sessions. A form is a reasonable conversion event across a three week decision. It is an obstacle across a three day one.
Benchmark the resulting conversion rate against your category rather than the site average, because the spread is enormous. The Dynamic Yield twelve month benchmark republished by Shopify in early 2026 puts luxury and jewelry at 0.94% and home and furniture at 1.41% against 6.22% for food and beverage. A merchant who panics at 1.3% and rebuilds a funnel that was performing normally for its category has spent a quarter fixing nothing. The broader case for treating high-ticket buyers differently is covered in our piece on where the low-ticket conversion playbook breaks above $500.
Keep the quote form to the fields you actually need to price the job, place it inline at the point where the specification ends, and leave the budget question for the phone call. Every field past the minimum is a decision the buyer has to make while still uncertain, and uncertainty is the state most of them are in.
The budget dropdown is the specific field to remove. It reads as a screening device, and practitioner testing on high-ticket quote forms finds it loses the undecided buyer, who is frequently the best one in the pipeline. Ask about timing instead, which tells you almost as much about the job and costs nothing socially. Ask about budget on the call, where you can explain why you want to know.
Placement matters as much as field count. Nobody navigates to a quote page, they land on a product from a search, so the form belongs inline directly below the specification rather than behind a modal that costs one more decision to open. Wording the button as an action beats wording it as a noun, and a phrase naming what the buyer actually wants, such as get a delivered price, outperforms contact us.
Then respond fast, because a high-ticket buyer is almost always enquiring with several suppliers at once. An automated confirmation instantly, a human reply with a name on it inside the hour, and the actual number inside one business day is the standard that wins a race nobody told you was running. Shopify’s own guidance on selling high-consideration products treats request a quote as a secondary call to action alongside a primary one rather than a replacement for it, which is the same conclusion this article reaches from the pricing side.
None of this works if the surrounding copy has not justified the number. Our guide to what product page copy has to do to support a high price covers the materials, origin, and specification detail that makes a range look considered rather than arbitrary.
When a buyer asks an assistant to compare options in your category, the shortlist is assembled from whatever data the assistant can read, and a product with no readable price is usually not on it. This is the part of the shift that does not show up in analytics, because the buyer who was filtered out never arrives and never appears in a bounce rate.
The mechanics are the same ones that govern every other kind of AI visibility. The number has to exist in the HTML rather than in a script or an image. It has to be consistent across the product page, any comparison page, and the FAQ, because contradictory figures across a site are a reason for a model to discard all of them. And it helps considerably if the page also answers the obvious follow up questions in plain language: what is included, what is not, and what moves the number. Our wider treatment of how Shopify stores get recommended by AI search covers the product data and collection page side of the same problem.
The failure mode I watched most often during the Shopify years was the merchant who installed a hide price app because it felt premium, saw enquiry volume rise, and declared it a win without ever checking what happened to closed revenue. Enquiries are easy to generate by withholding information. The buyer who fills the form to find out the price is not qualified, they are curious, and the sales time spent on them comes out of the same budget as everything else.
The honest constraint on all of this is that the published number has to be true. A range you would not stand behind on a call is worse than silence, because it converts a stranger into a disappointed prospect at your own expense. Publish the floor you actually charge, name the four things that move it, and let the form do the rest.
Show a range rather than a fixed price, and keep the quote form. A custom or made to measure product cannot carry a single accurate number, but it can carry an honest band with the factors that decide where a buyer lands inside it. That gives a shopper enough to self qualify before contacting you and gives AI assistants something readable to include in a comparison. The alternative, a bare request a quote button, does not read as premium to either audience. It reads as an absent number, which gets filled in by a competitor’s published figure or by an estimate you had no say in.
Publishing a range costs far less negotiating room than most merchants assume, because the range itself sets the expectation rather than anchoring to the bottom of it. Buyers arriving at a call having already read that the band runs from $2,400 to $9,000 are pre-qualified for the middle of it. The real risk is not the range, it is a dishonest floor: a from price that only a handful of customers have ever paid anchors the buyer to a number you cannot deliver, and the quote that follows feels like a bait and switch. Publish the floor you genuinely charge and the range does the qualifying work for you.
Use a quote form only when the correct price depends on information the customer holds and you do not. That means measurements taken on site, freight that varies by address or access, materials chosen after a consultation, volume that materially changes unit cost, or an approval chain involving a landlord, architect, or procurement team. If you could fulfil the order today at a published price with known shipping and no approvals, the form is a buy button somebody was afraid to build, and it is costing you the buyers who wanted to purchase without a conversation. Timing helps decide too: forms suit multi week decisions, not three day ones.
AI assistants generally treat a missing price as missing data rather than as a signal of premium positioning, and they answer using whatever number they can find elsewhere. That might be a competitor’s published figure, an old forum thread, a review site summary, or an estimate generated from category norms. The practical consequence is that a merchant with no readable price loses control of the number attached to their brand in the comparison. Prices assembled by JavaScript, hidden behind a region selector, or published in a PDF are affected the same way, because most crawlers read the raw HTML your server returns rather than the rendered page.
Benchmark against your category, not the site-wide average, because the spread between categories is roughly six-fold. The Dynamic Yield twelve month benchmark republished by Shopify in early 2026 puts luxury and jewelry near 0.94% and home and furniture near 1.41%, against 6.22% for food and beverage. A high-ticket store running 1.3% is performing normally for its category, and rebuilding that funnel usually costs a quarter and fixes nothing. Judge high-ticket performance on revenue per session, quote-to-close rate, and time to decision instead, since purchases above $3,000 commonly take two to four weeks across several sessions.