We managed Google Ads for a Dutch online reseller of niche bike accessories — child seats, racks, the long-tail of category SKUs that don’t get attention in big-box bike retail. A long-running e-commerce account where the available leverage wasn’t a hero campaign or a clever bid strategy. It was unglamorous feed work, granular Shopping structure, and a willingness to keep the experimental cadence going for twenty-four months straight. The result: a blended 10.71x ROAS across the engagement, €638K of revenue on €59.6K of spend, with cost-per-conversion descending from a €9.82 peak to a €5.82 trough.
The lines tell the trajectory. Blue conversion-value (revenue) climbing while yellow cost-per-conversion drops from a €9.82 peak to a €5.82 trough. The biggest single move visible in the Biggest changes panel: +€10,702 redirected into a Smart Search DSA campaign that the feed-restructure had just made productive, +€7,028 added to Performance Max once the catalogue could feed it cleanly.
What we did: three habits, repeated for two years
For a long-tail bike-accessories catalogue, the Shopping feed is the bottleneck before anything else. Title patterns that include category and use-case, brand and product-type attributes set cleanly, custom labels distinguishing high-margin SKUs from clearance — none of which the inherited setup was doing consistently. Feed work is unglamorous and pays back compounding interest. We treated it that way.
Cost per conversion bottomed at €5.82 — possible only because the catalogue's feed structure let Shopping's auction algorithm bid against the right products at the right time, instead of averaging across an unstructured pile.
The engagement ran on a weekly reallocation rhythm. Product groups and ad groups that returned above the account-average ROAS got more budget; ones that didn’t got pulled. Not a single dramatic optimisation.
Visible in the Biggest changes panel: +€10,702 redirected into a Smart Search DSA campaign that the feed restructure had made measurable. The DSA + feed combination filled in the keyword long-tail that manual Search structures always leave on the table.
Twenty-four months of small honest reallocations that compounded into the trajectory the chart shows.
Once Performance Max became available, we layered it in cautiously: starting on the SKUs the feed was strongest on, expanding only after the conversion data proved it. PMax got +€7,028 of budget over the period once the catalogue was clean enough to feed it usefully. Bid strategies, audience signals, asset variations — each tested as a discrete change, kept what worked, killed what didn’t.
Two years of that cadence is the entire interesting thing about this account. The hero number on the screenshot — €638K revenue at 10.71x ROAS — is what compounding small-honest-decisions looks like when nobody resets the experiment cadence halfway through.
A weekly test cadence: one variable at a time.
By the numbers
The blended figures across the engagement: €638K conversion value, €59.6K total spend, 10.71x average ROAS, €7.04 average cost per conversion. The trajectory shows the journey: a ROAS that exited closer to 13.57x by the end, on a cost-per-sale that touched €5.82 at the trough.
Cost per conversion, peak to trough. Peak early in the engagement to stabilised trough.
The interesting accounts aren’t won in week one. They’re held for twenty-four months while the experiment cadence keeps running.
Boring, predictable, attributable. That’s what good PPC looks like.
Every engagement starts with a 30-minute audit — free, no slides, just a screen-share through your account.
Book the audit →