The Client
A colour cosmetics brand — face, eyes, and lips — competing in a category where trends move fast and a product can go from unknown to sold-out in weeks. It sold across major beauty marketplaces and its own D2C channel.
Client details are anonymised. Figures are representative of the engagement.
The Problem: Always Reacting a Month Too Late
The brand kept finding out about competitor launches the same way its customers did — once they were already everywhere.
A rival would drop a new shade range or a new formula. By the time the brand's team noticed — through social buzz, a sales dip, or a colleague mentioning it — the product had a month's head start, a bank of reviews, and search momentum the brand could no longer easily contest. The brand's response, when it came, was always to a race that was already half over.
The team's trend-spotting was manual and accidental: someone scrolling, someone noticing, someone forwarding a link. There was no system, so detection depended on luck, and luck ran a month behind.
The category lead's summary: by the time we see a competitor's launch, it's not news — it's a leaderboard we're already losing.
Why Manual Trend-Spotting Could Not Keep Up
In a fast-moving category, the value of knowing about a launch decays by the week.
Detection was accidental, so it was late. With no system enumerating what competitors listed, the brand relied on someone happening to notice. Noticing lags listing by weeks, and in colour cosmetics, weeks are the whole window.
Social buzz is a lagging indicator. By the time a product is generating visible social conversation, it has already found its early audience. The brand was treating a lagging signal as its early-warning system, which guaranteed it responded late.
The launch window is short and unforgiving. A brand that spots a competitor's new range in its first week can respond while shade ranges and search positions are still contestable. A brand that spots it in week five is responding to an established product with reviews, ranking, and momentum. Same information, radically different value depending on when it arrives.
The Solution: Systematic New Launch Detection
Product Data Scrape built makeup new launch detection across the brand's competitive set — a standing feed that surfaced new SKUs as they were listed.
- Defined the watch set. The competitors and the categories to monitor were fixed, so the feed watched the shelves that mattered.
- Continuous enumeration. The competitive set's full listed assortment was enumerated repeatedly, and each pass was compared against the last, so any SKU that had not existed before was flagged the moment it appeared.
- New-SKU flagging with first-seen timestamps. Every newly detected product carried the date it was first observed, its attributes, its launch price, and its initial positioning — a launch record, captured at launch.
- Early-velocity signals. For each new SKU, early indicators — review accumulation rate, ranking movement, whether it went out of stock — were tracked, so the brand could tell within days which launches were gaining traction and which were not.
- Alerting. New competitor launches in priority categories pushed an alert to the category team the week they listed, not the month they trended.
Sample Data: The New-Launch Feed
An illustrative new-SKU detection record.
| Field |
Value |
| First observed |
2026-07-08 |
| Competitor |
Rival Brand C |
| Product |
Matte liquid lipstick, 12-shade range |
| Launch price |
649 |
| Category |
Lips |
| Days since first seen |
6 |
| Early review velocity |
Rising fast |
| Stock signal |
2 shades already low |
| Ranking movement |
Climbing on "matte liquid lipstick" |
| Traction verdict |
High — respond now |
Illustrative.
The structured record:
{
"new_sku_id": "RIVALC-LIP-MATTE-0708",
"first_observed": "2026-07-08",
"competitor": "Rival Brand C",
"product_type": "liquid_lipstick_matte",
"variant_count": 12,
"launch_price": 649,
"category": "lips",
"early_signals": {
"days_tracked": 6,
"review_velocity": "high",
"shades_low_stock": ["brick_red", "mauve_nude"],
"ranking_trend": "climbing",
"traction_verdict": "high"
},
"recommended_action": "respond_now"
}
The value was not just detecting the launch — it was detecting it on day six with a traction verdict, while there was still time to act. Two of the twelve shades were already running low, which told the brand this was not a launch to watch and see; it was a launch to answer immediately.
What the Brand Did
Responded inside the window. With launches surfaced in their first week, the brand's merchandising and marketing could respond while shade ranges and search positions were still contestable — matching a gap, pushing a competing product, or adjusting a campaign — instead of arriving a month late.
Triaged by traction, not by noise. Because each launch carried early-velocity signals, the team spent its attention on the launches actually gaining traction and ignored the ones that weren't, rather than reacting to everything or nothing.
Fed launches into its own planning. Recurring competitor launch patterns — which categories rivals refreshed, how often, at what price points — became an input to the brand's own launch calendar and pricing.
Caught the shade gaps. New competitor ranges frequently revealed specific shades or finishes trending that the brand did not offer, turning launch detection into an assortment input as well.
The Results (Two Quarters)
| Metric |
Before |
After Two Quarters |
| Median time to detect a competitor launch |
~4 weeks |
Within 1 week |
| Competitor launches responded to within the window |
Rare |
Majority of high-traction ones |
| Launches triaged as low-traction (correctly ignored) |
— |
Filtered out early |
| Share-of-search defended on contested new terms |
Low |
Materially higher |
| Revenue from timely competitive responses, indexed |
100 |
138 |
Figures are representative of the engagement outcome.
The category lead's follow-up: we stopped finding out from our own sales dip. We started finding out the week it launched — and that's the only week that matters.
The Lesson
In a fast-moving category, competitive intelligence is worth almost nothing if it arrives late, and a great deal if it arrives on time. The same fact — "a rival launched a matte liquid lipstick range" — is actionable in week one and merely painful in week five. The difference is entirely in the timing, and timing is exactly what accidental, manual trend-spotting cannot deliver.
Systematic launch detection did not make the brand more creative or better-funded. It closed the gap between when a competitor acted and when the brand knew — from a month to a week — and in colour cosmetics, that gap is the whole game.
Work With Product Data Scrape
Product Data Scrape delivers makeup new launch detection across your competitive set: continuous assortment enumeration, new-SKU flagging with first-seen timestamps, early-velocity signals, and alerting in the launch week — as JSON, CSV, API, or a standing feed into your systems.
Ask us to watch your competitors' shelves — we will tell you the week they drop something new, not the month it trends.
Product Data Scrape — turning marketplace complexity into decision-ready data.