Shopify Traffic But No Sales? Check Who Is Actually Visiting
Sessions are up and orders are not. Before you rebuild the product page again, work out how much of that traffic is people. Here is how to check, and the boring causes to rule out first.
On this page
TL;DR: If sessions are healthy and orders are not, work through the ordinary causes first, because most of the time it is the offer, the audience, the shipping cost or the mobile experience. But if your sessions climbed without your marketing changing, some of that "traffic" may not be people. Bots land in your session count, never buy, and quietly drag your conversion rate down, which sends you optimising a product page that was fine all along. Check what is actually reaching your store, free, in about fifteen seconds.
This is one of the most common things a store owner searches, and most of the answers you find are the same checklist of conversion tips. Those tips are usually right. So let us do them properly first, and then cover the thing almost nobody checks.
Start with the boring explanations
Be honest with yourself about these before blaming anything technical. In most stores, one of them is the answer.
The traffic is the wrong audience. Cheap clicks are cheap for a reason. Interest-based social traffic browses, search traffic buys. If your sessions jumped after you started a broad awareness campaign, you bought attention, not intent.
The offer is not competitive. Open an incognito window, search for your main product, and buy it from whoever comes up first. If a rival is cheaper, ships faster, or simply looks more trustworthy, you have your answer and no amount of button colour will fix it.
Shipping cost is a surprise. The single most common abandonment reason, year after year. If the first time someone sees the delivery charge is at checkout, expect to lose a large share of them right there.
Mobile is slow or awkward. Most storefront traffic is mobile. Load your own store on 4G, not office wifi. Anything over about three seconds bleeds customers, and Shopify's own speed report understates what a real phone on a real network experiences.
Trust is missing. No reviews, no clear returns policy, no contact details, a generic theme with stock photos. Shoppers read these signals in seconds.
You are looking at too small a sample. At a 2% conversion rate, 200 sessions is expected to produce four orders. Zero orders out of 200 is not a crisis, it is normal variance. Do not redesign anything on a week of data.
If one of those fits, fix it and stop reading. If you have been through all six and the numbers still make no sense, keep going.
The thing almost nobody checks
Your conversion rate is a fraction. Orders on top, sessions underneath. Every conversation about conversion rate optimisation focuses on the top of that fraction. Almost nobody audits the bottom.
Not all sessions are people. Shopify filters some known crawlers, but plenty of automated traffic still lands in your session count: price-monitoring bots, catalog scrapers, SEO tools, AI crawlers, security scanners, and the growing category of scrapers that drive a real browser engine specifically so they look like a person. That last group is the problem, because a real browser engine loads your JavaScript, fires your analytics, and gets counted exactly like a shopper.
Those sessions will never buy. They sit in the denominator forever, and the effect is not small.
One of our merchants, a jewellery store, is the clearest example we have. When we looked at their logs, 77% of all traffic to their store came from a single source: one operation running off rented servers in Singapore, which had made 82,064 requests to their product pages, around the clock, with no overnight dip.
The interesting part is not the scraping. It is what their dashboard looked like while it happened. Shopify Analytics reports country, not network. So the whole thing appeared as ordinary traffic from Singapore, and their reported conversion rate was understated by roughly threefold. Every decision made off that number, about ad spend, about the product page, about whether the store was working, was made against a figure that was wrong.
How to tell whether your traffic is human
You do not need a tool to start. Open your analytics and look for these.
- Does the traffic sleep? Real shoppers follow a daily rhythm, busy in the evening, quiet at 4am. A flat line across 24 hours is a machine. This is the single strongest signal and it takes ten seconds to check.
- Did one country appear without a campaign? A sudden block of sessions from a country you do not ship to, market in, or have customers in, with no campaign behind it.
- Is time on page near zero? Automated clients grab the page and leave. Sessions clustered near zero seconds are not reading anything.
- Are add-to-carts missing entirely? Real traffic produces a trickle of carts even when it does not convert. Thousands of sessions with almost no cart activity is a strong tell.
- Are the same few product URLs hit repeatedly? Price monitoring targets your best sellers on a schedule. Look for the same handful of pages, from the same source, at a suspiciously regular interval.
- What network are they on? This is the definitive one, and the one Shopify does not show you. Real shoppers connect from home broadband and mobile carriers: Comcast, Vodafone, Jio, Orange. Automated traffic connects from hosting providers: AWS, Alibaba Cloud, Tencent, Hetzner, OVH. Nobody browses for boots from a rented server.
Point six is why this is hard to diagnose in Shopify alone. The admin shows you country and device. The network is where the answer lives, and you need something reading each request to see it. Our guide on spotting and stopping bot traffic goes deeper, and what an ASN block is explains why the network number is the right thing to act on.
Check your store in fifteen seconds
Before you install anything, you can see part of the picture from the outside. Our free store scan shows you what your store hands to anyone who asks: whether your full product list downloads in one request, how many product pages are published, and whether anything is currently checking who walks in. No signup, and it tells you plainly which findings are worth acting on and which are not.
That gives you the exposure side. The traffic side needs measurement over time, which is what Cordon does once it is running: every visit, the country, the network behind it, and whether it was a person or a machine.
What to expect if you clean it up
Set expectations properly, because this gets oversold.
Blocking bots does not create orders. Not one. Anyone promising a conversion lift from a blocking app is selling you something. What changes is that the number becomes true.
That still matters more than it sounds:
- Your conversion rate becomes real, so you stop rebuilding a product page that was converting fine to actual humans all along.
- Your ad decisions improve. If bot traffic is concentrated on particular landing pages, it makes some campaigns look worse than they are and others better.
- Your costs drop wherever you pay per visitor, which includes plenty of Shopify apps.
- Your competitors stop getting a live feed of your prices, which is a separate problem the same traffic often represents. See how to stop competitors scraping your Shopify prices.
And to be straight about the likely outcome: for most stores with traffic and no sales, this is not the main cause. The offer, the audience and the shipping cost usually are. But it takes fifteen seconds to rule out, and when it is the cause, it is invisible in every report Shopify gives you, which is exactly why it goes unnoticed for months.
Run the free scan and rule it out.