
Case haircare24: 100% promotion coverage in e-commerce
How haircare24 achieves 100% coverage with self-running promotion automation and saves up to 36 hours of work a year.

Customers in the beauty market are price-sensitive and used to coupons, and competitors push prices down with weekend promotions. For haircare24, a specialist in salon-exclusive hair and body care products established in 2009, the requirement was clear: promotions must always be running. Reliably. Without manual effort. And without anyone forgetting to renew them in time.
The challenge: manual processes, platform limits and a high risk of error
haircare24 runs year-round coupon promotions for four premium brands. The promotions ran through Google Ads promotion assets and Google Merchant Center, two platforms with one shared restriction: promotions are limited to a maximum of six months. Anyone who wants to run strategic product data marketing here quickly hits the limits of manual work, because feeds and run times have to be monitored constantly and renewed by hand.

The result: twice a year, all promotions had to be set up again manually. Each round took 2 to 3 hours. On top of that, there are the Merchant Center editorial review and the functionality check, which can take up to 24 hours per promotion.
When haircare24 asked for the promotions to run only on weekends going forward, the workload rose from 2 to 3 hours every six months to 2 to 3 hours per month. The process was error-prone.
When promotions were eventually not renewed in time, the client was rightly dissatisfied. No active promotion means less visibility. Less visibility means less revenue.
The goal: automate everything.
The answer to manual error is not a better checklist. It is a system that no longer needs a checklist.
The goal was a rolling promotion engine that runs itself: platform-compliant, scalable and without human intervention.
The approach: four steps to full automation
Step 1: Define a rolling promotion system
The year was divided into three periods of four months each, so that every promotion is renewed in time before Google’s expiration date. Because of this split, users see the “Expires in xxx days” notice three times a year, and the shorter run times create a sense of urgency.
At the same time, two of the promotion periods are always active in parallel: the current one and the next. For weekend promotions, even three. That creates enough of a buffer to absorb Google’s internal review delays without a gap opening up.
A unique ID logic was defined for each promotion: [promotion code]_[year]_[period]. This makes all IDs permanently unique and non-repeatable, as Google requires.

Step 2: Google Sheet with automatic date calculation
A Google Sheet with IF formulas uses the current month or calendar week to calculate automatically which promotion period is active right now and which one comes next. The start and end dates of each promotion are derived dynamically from this.
No manual date maintenance. The sheet always knows what applies.

Step 3: Build the merchant promotion feed
Using a custom CSV template in Channable, the data was consolidated with “Group Items” and “Split Items” rules so that every promotion ID appears in the feed once and correctly structured.
One critical point: the date formats had to take time of day and daylight saving time into account, a detail that is often overlooked in manual setups and leads to incorrect activation periods.


Step 4: Tag products dynamically with the right promotion ID
Using master rules in Channable, the promotion IDs were derived directly from the supplemental feed and assigned to the right products. The logic ensures that the IDs in the promotion feed and the product feed always match, automatically with every feed update.

The result: promotions that manage themselves
Fully automated with no manual intervention
The system runs entirely on its own. Promotions rotate by themselves, stay approved throughout and are ready to activate at any time without anyone having to step in. The human risk factor has been eliminated completely.
100% promotion coverage with no gaps
Since implementation, there has not been a single unwanted interruption. No expired promotion, no forgotten renewal, no complaints. The system makes sure there is always an active promotion running.
Up to 36 hours saved per year
What began as extra work with the weekend setup was eliminated entirely by automation. The previous workload of up to 36 hours per year disappears completely. The system scales with every additional brand or promotion, while the workload stays constant at zero.
From reactive to proactive
The system thinks ahead. Thanks to the rolling periods, the next promotion is already approved before the current one expires. As a positive side effect, the shorter run times make the “Expires in…” date feel more urgent to users, a subtle but effective conversion booster.
Conclusion: feed management solves platform problems with logic.
Google offers no native solution for continuously running promotions, either in Merchant Center or in Google Ads. haircare24 solved this problem not with a workaround but with a structured system that makes consistent use of the platform rules.
Feed management is more than moving data. It is the ability to overcome platform restrictions with clean logic, and that is exactly what separates a well-built system from one that merely reacts. If you wait for a ready-made solution, you lose time. If you build the logic yourself, you win it back.
Want to know whether a similar system could work for your shop? Get in touch with us and we’ll take a look at it together.



















