Global FMCG group · FMCG · direct-to-consumerThe quantity selector a bigger agency refused to build
A prospective enterprise client set a challenge before signing: build the homepage test another agency had declined as infeasible. We shipped it, and they became a client.
- The homepage featured five hero products, each with a single Add to Cart button that added exactly one unit.
- Shoppers buying in bulk had to add the same item repeatedly, or leave the homepage to find a quantity control on the product page.
- A large, well-known agency had already told the client the change could not be delivered through an A/B testing platform.
Letting shoppers pick 5 or 10 units directly on the homepage will remove the repeat-add friction, raising units per order and average order value.
- Inspected the site's network traffic and cart API to learn how each of the five products was added, and found each mapped to a unique product ID.
- Built a quantity-selector UI, injected through the experimentation platform, that passed the selected quantity and the correct product ID to the cart endpoint.
- Handled the cart's response so the mini-cart and totals updated exactly as they would after a native add.
- QA-validated across Chrome, Safari, Firefox, Edge and iOS before launch.
Working without the codebase
Everything had to be reverse-engineered from DevTools: request shape, headers, and how the site expected quantity to be expressed.
Five products, five IDs
A single generic handler would have added the wrong item. The variant kept a product-to-ID map and validated it against the live DOM on every click.
Delivered the test the competing agency had declined. On the strength of that delivery, the group signed on as a client of the agency.
More experiments
View all →SA tiles & bathroom retailer · Two tests that only worked on a cold cache
A bathroom-set selector and a 'complete your bathroom' panel both showed the same symptom: visible on the first load, gone on the next page and on Back. The bug was in how the experiments were activated, not in the variants.
The hard part. The testing tool's own caching changed the timing. Once its script was cached, it ran before the product form existed, so the activation condition failed and real visitors were silently under-bucketed.
Global outdoor-gear brand · A condensed mega-nav rebuilt from the accessibility tree
The client's own split-URL header test had a broken cookie and four configuration bugs. Rather than depend on it, I built the condensed navigation as a self-contained variant that reads its data from what the server already renders.
The hard part. The mega-panel content only shipped on the client's variant page. The control had nothing to build from, except a screen-reader-only navigation tree present in both arms.