Open your Shopify orders, filter to the last ninety days, and count how many contain exactly one line. On most stores that group is larger than every other group combined. You paid full price to acquire each of those customers, and they left with one thing.
Single item orders on Shopify are rarely a sign that your products do not belong together. They are usually a sign that nobody was shown the second item at a moment they could act on it. That distinction matters, because the two problems have different fixes and most stores guess wrong.
This is a diagnostic, in order: measure the distribution first, then work down the causes from most likely to least.
How many of your orders are single-item, and how do you actually measure it?
Average order value is the wrong tool here. It blends two independent things: how many items people take, and how much each costs. A store can raise AOV by putting prices up and never move basket size. Split them apart first.
The process:
- In your admin, go to Orders and export the last ninety days as CSV. The export writes one row per line item, with the order name repeated down the rows.
- Count the rows per order name. That gives you a line-item count for every order.
- Build a distribution, not an average: the percentage of orders with one line, two, three, and four or more. The shape is the finding. An average of 1.4 hides whether that is most orders at one and a few at five, or everything sitting at one and two.
- Repeat step 3 split by traffic source. If you are not passing clean source data, fix that first with a proper UTM setup. Every diagnosis below depends on slicing this number.
- Repeat once more, split by the first product in the order. One hero product usually produces most single-line orders.
Two notes. A quantity of three of one variant is still one line item, and behaves like a single-item order here. And there is no credible cross-store benchmark, so compare against your own store last quarter.
Is it your catalogue, or is it the journey you send people down?
Every cause splits into one of two families. This fork decides which half of the article applies to you.
Do this test first. Take your five best sellers. For each, write down what a reasonable person would buy alongside it. Not what you wish they would buy. What finishes the job the first product started.
- If you cannot name a companion for most of them, it is a catalogue problem. Your products are alternatives rather than partners. A store selling twelve variations of one jacket has a catalogue where any two items compete, and no merchandising makes a shopper take both.
- If you named a companion easily for four out of five, it is a journey problem. The pairing exists in your head and in the shopper's need, but never appears on screen where they can act on it. This is the far more common case.
- A third possibility: the ladder is missing. Your catalogue pairs fine, but everything sits in one price band, so the second item is a serious decision rather than an addition. That gets its own section below.
Catalogue problems are slow and involve buying stock. Journey problems can be fixed this week. Work through the journey first, because it is cheaper to rule out.
Do your ad campaigns land shoppers on a page with no next step?
Look at the split you built in step 4. If paid social sits well above your other sources on single-line share, you have found your biggest cause, and it is structural rather than anyone's mistake.
A performance ad works by narrowing intent. It shows one product, makes one promise, and sends the click to that product page. The shopper arrives already decided. They buy the thing in the ad and leave, because deciding was the whole job. The campaign is working as designed. The design just ends one item too early.
- Check what the ad promised. An ad selling a specific item to a specific problem should land on that item's page. An ad selling the brand or a category should land on a collection. If yours lands on a single product, you are throwing away the broader intent you paid for.
- Give the campaign its own companion offer. The best second item for cold paid traffic is rarely the one that works for returning email traffic. Cold shoppers take what removes doubt about the first purchase. Returning shoppers take what extends it.
- Do not fix this by widening the ad. Broad creative usually costs you the conversion rate you were buying. Fix the destination instead.
Does your product page simply end at add-to-cart?
If the single-line share is high and roughly even across every source, the cause is not upstream. It is the page.
The product page is the only place where a shopper has full context and full attention. If its last useful element is the add-to-cart button, you hand that attention back for nothing. Four failures, in the order I see them:
- Related products that are alternatives, not companions. The default recommendation block shows four items from the same collection. Four near-identical jackets under a jacket is a comparison exercise. It makes the shopper less certain, and produces a zero-item order as often as a two-item one.
- The add-on sits below the reviews. Anything under a long review block on mobile is not part of the buying decision. The companion offer belongs beside the price and the button.
- No stated reason for the pairing. "Customers also bought" is a shrug. "You will need these filters after about six weeks" is an argument. The second converts because it tells the shopper something they did not know.
- The set exists but is not on the page. Plenty of stores build a proper product bundle and leave it as a separate product in a collection nobody browses. If the set is only reachable from the menu, it does not exist.
Is your cart a receipt, or a place where a decision can still happen?
Most Shopify carts, drawer or page, are receipts. They list what is in there, show a subtotal, and offer a checkout button. That is the last moment the shopper is still in a buying frame, and most stores use it for confirmation.
The cart is a genuine second chance, and where you can do real damage, so the rules are tighter than on the product page.
- One offer, never a grid. A shopper at the cart is trying to finish. Present a single relevant addition with a price and one tap to accept. A carousel of six reopens the whole decision and sends completion down.
- Adding must not cost them their place. If accepting triggers a page reload, a re-render that loses scroll position, or a redirect back to a product page, you have traded a completed order for a maybe.
- Never let the addition land as a surprise at checkout. Extra costs appearing during checkout are the leading documented reason for abandonment, at 40% Baymard. Anything inflating the total after commitment works against you. If your abandonment rate is high too, fix that first: a bigger basket that never checks out is worth nothing.
Are your price gaps making a second item feel like a second decision?
This is the cause that survives every merchandising fix, and the hardest to accept, because it is about the catalogue, not the store.
If every product you sell sits in one price band, adding a second item roughly doubles the spend. That is not an addition. It is a new purchase, needing the same deliberation as the first, at the moment the shopper thought they were finished. No placement or copy overcomes that arithmetic.
- Missing bottom rung. If nothing sits at roughly a tenth to a quarter of your hero price, the second item is structurally hard. Consumables, accessories and refills exist to fill that rung.
- Bundles priced at the exact sum of the parts. If the set costs the same as buying the items one at a time, you have removed the only reason to treat it as one decision. It does not need a deep discount, just to be visibly more than addition.
- Too many rungs. The opposite failure. Nine price points across a small catalogue turns every choice into a comparison. Three clear tiers beat nine muddled ones.
Which fix belongs to which cause?
| What the data shows | Most likely cause | The fix | Verify by |
|---|---|---|---|
| Paid social far above other sources | Narrow ad intent, single-product landing | Campaign-specific companion offer, or a collection landing page | Re-split by source in two weeks |
| Single-line share even across all sources | Product page ends at add-to-cart | Companion offer beside the price, with a stated reason | Distribution by first product in the order |
| One hero product owns most single-line orders | That product has no visible partner | Build and place a set around it | Same split, that product only |
| Cart abandonment high as well | Cart is doing too much, or costs surprise late | Fix abandonment first, then add one in-place offer | Completion rate before basket size |
| Every product in one price band | No bottom rung on the ladder | Stock or create a genuine low-ticket companion | Share of orders with an item under a quarter of hero price |
| Cannot name a companion for most products | Catalogue is alternatives, not partners | Merchandising will not fix this. It is a buying decision | Repeat the five-product test next quarter |
Work the rows top down. The first three are cheap and reversible. The last one is not.
Where does Edge Bundles fit in raising items per order?
Edge Bundles is our app, and it addresses two rows of that table: the product page that ends at add-to-cart, and the hero product with no visible partner. It builds fixed sets, mix-and-match selections and add-on offers, and puts them on the product page and in the cart rather than in a collection nobody visits. It has a free plan.
What it does not do. It will not fix a narrow ad. It will not fix a catalogue with no low-ticket item, because the arithmetic above holds however the offer is presented. And it will not rescue a store where checkout abandonment is the real leak. Those are the three most common reasons a bundle app gets installed, produces nothing, and gets uninstalled a month later.
Edge Bundles is also new, so it does not have the review history Bundler.app has built across 2,537 reviews Shopify App Store. If a long public track record matters before you install anything on a store doing real volume, that is reasonable. I would rather you install the mature option than the new one for the wrong reason.
Measure the distribution first. Install second.
Questions people ask next
Does a single-item order mean one unit or one line item?
One line item. A shopper who buys three of the same variant still produces one line, and that order behaves like a single-item order in every way that matters for your merchandising. Count distinct lines when you are diagnosing the journey. Count units separately when you are forecasting stock, because the two numbers answer different questions and mixing them hides the problem.
Is a high single-item rate always something to fix?
No. If you sell one expensive durable product, mattresses or bikes or a single subscription box, a one-line order is the correct outcome and chasing a second item wastes attention. The rate is only a problem when your catalogue contains items that genuinely belong together and the data says shoppers are still leaving with one.
Should I fix the ad or the product page first?
The product page, almost always. It is cheaper to change, it affects every traffic source at once, and it gives you a clean baseline before you start moving ad spend around. Rebuild the page, wait two weeks, then re-measure the distribution by source. If one campaign is still an outlier after that, the problem really is the campaign.
Will pushing for a second item hurt my checkout completion rate?
It can, if the second item arrives as a surprise cost. Baymard documents extra costs during checkout as the leading abandonment reason at 40%, so anything that inflates the total after the shopper has committed is dangerous. Add the offer before checkout, show the full price of the addition up front, and never bundle a shipping change into it.
SourceHow long should I wait before judging a fix?
Long enough to collect a few hundred orders, and never less than two weeks. Items per order moves slowly and is noisy at low volume, so a three-day read will tell you nothing you can trust. Freeze your ad mix during the test as well, because a change in traffic source will move the number on its own.
Anurag Chandra
Founder, Edgecoms
Anurag runs Edgecoms, a studio of Shopify apps. He spends most of his week inside merchant stores working out why a number is lower than it should be.
Connect on LinkedInRead this on your assistant
Opens with a summary request for this page already written.