> For the complete documentation index, see [llms.txt](https://docs.zigpoll.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.zigpoll.com/guides/how-to-find-out-why-visitors-arent-buying.md).

# How to Find Out Why Visitors Aren't Buying

Analytics tells you *where* people drop off. It never tells you *why*. You can watch a thousand session recordings of visitors bouncing from your product page and still be guessing at the reason.

The fastest way to find out is to ask — at the two moments when the answer is still fresh: right as someone is about to leave, and right after someone has bought.

***

## The two surveys that matter

### Survey 1: Ask the people who are leaving (exit intent)

Catch visitors as their cursor heads for the close button.

1. Create a survey and add a **Single Choice** question: **"What's stopping you from buying today?"**
2. Give them the honest options — the ones you'd rather not hear:
   * Price is too high
   * Shipping cost or delivery time
   * I couldn't find what I was looking for
   * I need more information about the product
   * I'm just browsing
   * Something on the site wasn't working
3. Enable a dynamic **"Other"** answer so people can type a reason you didn't anticipate. These write-ins are where the surprises live.
4. Add a **Long Answer** follow-up with [Question Logic](/questions/question-logic.md) — when someone picks anything other than "just browsing," ask "What would have changed your mind?"
5. Set the delivery method to **exit intent**. See [Exit Intent Survey](/tutorials/exit-intent-survey.md) — including cart conditions to fire it only for visitors who matter — and [Exit Intent on Mobile](/tutorials/exit-intent-mobile.md), where there's no cursor to track.

{% hint style="warning" %}
Resist the urge to sanitize the answer options. If "price is too high" isn't on the list, you will never learn that price is the problem — respondents will just pick the closest available excuse.
{% endhint %}

### Survey 2: Ask the people who bought (post-purchase)

Counterintuitively, buyers are the better source. They navigated every obstacle on your site and *still* converted, which means they remember the obstacles clearly and are in a good enough mood to tell you.

1. Create a post-purchase survey with a **Single Choice** or **Long Answer** question: **"What almost stopped you from purchasing?"**
2. Deliver it on the post-purchase page or in an [order paid survey](/tutorials/order-paid-survey.md).

Every answer here is a conversion killer that survived. For every buyer who mentions it, assume there are others who hit the same wall and simply left.

{% hint style="info" %}
This question is one of the highest-leverage in ecommerce. One brand found that customers almost didn't buy because a colorway was missing — launching it turned into a six-figure product line.
{% endhint %}

***

## Targeting the right visitors

A blanket survey to all traffic produces mush. Narrow it with [Targeting Settings](/polls/targeting-settings.md):

* **Cart abandoners** — Visitors with items in the cart who are about to leave. Highest intent, most actionable answers. See [Abandoned Cart Survey](/tutorials/abandoned-cart-survey.md).
* **Product page bouncers** — People who viewed a product and are leaving without adding to cart. The blocker is usually information or price.
* **Repeat visitors who haven't bought** — They keep coming back but won't commit. Something specific is holding them, and they'll usually tell you.
* **Checkout abandoners** — The most expensive drop-off you have. On Shopify, use [Advanced Shopify Targeting](/tutorials/advanced-shopify-targeting.md) to reach them precisely.

***

## Reading the results

Sort your answers into three buckets, because each demands a different fix:

| Bucket                  | Example answers                                          | The fix                                                                                                       |
| ----------------------- | -------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- |
| **Friction**            | "Checkout was confusing," "the size chart wouldn't open" | Ship a fix. These are bugs and they're cheap to solve.                                                        |
| **Missing information** | "I couldn't tell if it would fit," "no returns info"     | A copy or merchandising problem. Also cheap.                                                                  |
| **Genuine objections**  | "Too expensive," "found it cheaper elsewhere"            | A pricing or positioning problem — see [How to Find Optimal Pricing](/guides/how-to-find-optimal-pricing.md). |

Start with friction and missing information. They're the cheapest to fix and they usually account for more lost revenue than price does.

Zigpoll's Z-GPT Insights will cluster your open-ended responses into themes automatically once you have volume, so you can see which bucket dominates without reading every response. Pipe high-signal answers into [Slack](/integrations/slack.md) with a Question Logic action so the team sees blockers the day they appear.

***

## Close the loop

* **Offer help in the moment.** Use Question Logic to redirect someone who says "I couldn't find what I was looking for" to a collection page or a support form, or to show a [Promo Code question](/tutorials/adding-discount-codes-to-your-survey.md) to someone who says the price is too high. A survey that solves the visitor's problem pays for itself immediately.
* **Re-run after you fix things.** The mix of reasons should shift. If "shipping cost" drops from 30% to 8% after you introduce free shipping over $50, you've measured the impact of that change on the objection itself, not just on the conversion rate.

***

## Related

{% content-ref url="/pages/9xBXm6PozK3sah7dBXuN" %}
[How to Find Optimal Pricing for Your Product](/guides/how-to-find-optimal-pricing.md)
{% endcontent-ref %}

{% content-ref url="/pages/uZzmwXRquTBAxLPBAgeA" %}
[How to Test Your Messaging and Positioning](/guides/how-to-test-your-messaging-and-positioning.md)
{% endcontent-ref %}

{% content-ref url="/pages/YjmbuRNE1gP4XkLRiICy" %}
[Top 4 Surveys to Start With](/polls/top-4-surveys-to-start-with.md)
{% endcontent-ref %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.zigpoll.com/guides/how-to-find-out-why-visitors-arent-buying.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
