Average order value up 50.5%, returns-adjusted, in six months.

A UK-based Shopify retailer · Shopify Advanced · six-month CRO programme

Six months into the CRO programme, the store's average order is 50.5% larger than in the same six months a year earlier — £82.87 to £124.70, net of discounts and returns (Feb–Jul 2025 against Feb–Jul 2026). Items per order moved from roughly 9.8 to roughly 14.2 across the same windows, over 15,821 orders (as at 21 August 2026 — order counts move as cancellations land).

The per-order increase is measured. What produced it is a different question. Two facts belong up front: in February 2026 — the first month of the measurement window — the client widened its volume discount tiers; and the monthly series puts the step in basket size in December 2025, before the bundle-page rebuild this study describes had shipped. Both are examined below.

The comparison runs against Feb–Jul 2025 — before the CRO programme began in January 2026. It is not a clean baseline. I was already doing small ad-hoc dev work for the client through 2025, so the comparison window contains some of my own earlier work.

What actually changed

This was a storefront rebuild, executed as a sequence — not an isolated test programme. No single change below produced the result; they are not separable.

WhenWhat shipped
Mar 2025Volume discount table on standard product pages (ad-hoc period, pre-retainer)
Nov 2025Announcement bar promoting bundles; cart and checkout changes, including volume-discount messaging in cart (retainer begins)
Dec 2025Header navigation and mobile menu rebuild; new hero. The volume discount table appears on bundle product pages in this period (between 25 Nov and 27 Dec)
Jan 2026Whole-site mobile responsiveness pass; whole-site page-speed work; collection pages rebuilt with new features (CRO programme begins)
Feb 2026Bundle product pages rebuilt; standard product pages rebuilt
Mar 2026Top-category menu expansion, new sub-collection structure
Apr 2026About Us; FAQ rebuild; Careers pages
Jul 2026Full theme A/B test — it lost. The section below is about that.

The result, computed from the store's own order records (Feb–Jul, both years):

Where the growth concentrated (product-level, Jan–Jul window): a six-item bundle went from £11,965 to £268,009 (+2,140%) and an eight-item bundle from £22,643 to £250,987 (+1,008%) — the two biggest products in the store by revenue are now bundles; a year earlier both were marginal SKUs. The 24-item (+1,457%), 36-item (+493%) and 16-item (+160%) bundles moved the same direction, and optional add-on revenue scaled with it — the single largest add-on option grew +779%. Bundles didn't get a lift; they became the core of the business.

One disclosure that belongs in the body. In February 2026 — the first month of the measurement window — the client widened its volume discount tiers. The client made bulk buying cheaper, inside the window, explicitly to attract bulk orders. It is the single largest commercial change sitting alongside the storefront work.

Three things sit against it as a full explanation. Tiered volume pricing was not new — a volume discount table had been live on standard product pages since late March 2025; February changed the depth, not the existence. The realised discount rate fell over the same period, 15.0% → 13.8%, which is what you see when order volume climbs an existing ladder rather than every customer taking a deeper cut. And the storefront work was the part that put the tiers where the decision happens — the table on the product page, the messaging in the cart — which is a different job from setting them.

The offer and the storefront aren't separable here. Both are stated.

Earlier version of the selection interface: a heading, a products-chosen counter reading zero of six, and three collapsed groups. Each group shows only a required-quantity label and a zero count, with a radio control and an expand arrow. No thumbnails, no per-item detail, and no progress indicator.
Before the February 2026 rebuild
Rebuilt selection interface: a heading with a size-guide link, a zero-of-six counter and a progress bar. The first group is expanded into individual product rows, each with a thumbnail, a view-image link, and its colour and size options. A hint line prompts tapping a product to choose colours and sizes, two further groups sit collapsed below, and a footer shows the number of items still to choose above a disabled continue button.
After the rebuild

The month the baskets grew

The headline compares two six-month windows. Month by month, the movement inside them is not spread across the programme: items per order ran level through the autumn of 2025, stepped up in December 2025, and has been broadly level since. The bundle-page rebuild this study describes shipped in February 2026, two months after the step. Bundle orders had already risen to 39% of the month by January, alongside 32 new bundle products; the share settled back to the mid-twenties through the spring. Items per order held level across all of it.

December 2025 was not a bundle month. Bundle products were in 5.6% of the month's orders and accounted for 51 of its 12,796 units — 0.40%. Items per order excluding bundle products rose the same way in the same month, 9.76 to 13.04. The step happened in the part of the catalogue this study's storefront work was not about.

Three explanations I could not eliminate from the records available: a full-theme A/B test ran from 15 December 2025 to 1 January 2026, splitting traffic across two themes for most of the step month; new customers fell 71% in December 2025 — 699, against 2,440 in November — where the prior December's seasonal dip was 28%, shifting the order mix toward existing accounts; and a premises move and a change in advertising spend both fall somewhere in this period, with no date for either recoverable from the records I hold.

One explanation I could eliminate: no bundle product was created, and none was published, in October, November or December 2025. Zero. The store's new bundle products date from 3 January to 20 February 2026.

Before optimising anything: the measurement layer was broken

The first work of the CRO programme wasn't a test — it was an audit of the store's own numbers. It found them broken:

Through 2025, Shopify matched between 98.8% and 100.9% of orders to the session that produced them — twelve consecutive clean months. In January 2026 that fell to 65.9%, with no ramp: December closed at 100.9%, January opened at 65.9%. Across January to July, 28.8% of orders could not be attributed to any session.

The cause was a consent-management app installed at the start of January 2026. Visitors who never interact with the banner, and those who decline, carry an unset or denied analytics state. That state has two separate effects, and the store was seeing both at once. GA4 stops recording the purchase, which is why it captured only 66.4% of orders. And Shopify honours the state at checkout while its storefront step-counting does not — so the order is recorded but the visit that produced it never attaches to it.

The orders themselves were never at risk; those are recorded server-side, and every figure in this piece comes from them. What was lost was visibility — a third of orders missing from GA4 entirely, and a third with no traceable path back to the traffic that produced them. That second one is what ad platforms train their bidding on.

By July, attribution had recovered to 86.1% on its own. The recovery is partial, and the underlying fix is scoped rather than shipped.

Every conversion decision this store might have made on its own analytics — including judging this programme — would have rested on numbers missing a third of its orders and inflating its traffic threefold. Every figure here is computed from Shopify's order records instead.

The test that lost

In July 2026 I ran a full-theme A/B test — the rebuilt theme against a new candidate. The new theme lost.

I diagnosed it rather than shelving it. Every order and abandoned checkout in the test window was checked, plus session recordings. No custom functionality was broken. The loss traced to mobile checkout price presentation: customers could tap Checkout before the total had rendered, and an £8 optional add-on charge displayed above the base item price — so the full price landed as a surprise at the worst possible moment. Four fixes are specced; relaunch recommended.

That is what a working method looks like from the inside: a controlled test, a losing variant, a diagnosis specific enough to act on, and a store that never shipped the regression.

The cost side: returns went up

Returns rose from 5.5% to 11.5% of gross (Feb–Jul, by value), with a sharp step in April 2026 — 5.3% in February, 16.2% in April, still elevated at 11.9% in July. The product-page rebuilds shipped in February; returns lag purchase by weeks; the timing is consistent with the rebuild driving larger baskets and part of the gain coming back. That is a pattern, not a proven cause.

The consequence is already priced into every number above: the +50.5% AOV movement is net of returns. Bigger baskets brought more returns, and the figures survive with that cost counted.

The relationship

Nineteen months of working relationship; the last nine on an active retainer.

If you've run CRO before and it didn't work

The most common reason isn't the tests. It's that the numbers the tests were judged on were wrong, and nobody checked first.

This store's analytics were missing a third of its orders before a single test ran. That's not unusual. It's the first thing I look at, because everything downstream is built on it.

If you run a Shopify store and you're not certain your numbers are clean, that's the conversation.

Book the audit