How to monitor competitor prices and discounts

Search this question and you get a page of subscription product-page crawlers. They do a real job, but they all share one flaw: they tell you a competitor's price changed after it changed. The discount almost always appears in the rival's ad creative first, because the offer has to be advertised to work, and ad libraries are free to read. This guide covers how to monitor both layers properly, which one leads, and what 50,671 analysed UK ads tell us about how deep competitors actually cut.

The two layers of competitor pricing, and why only one is a leading indicator

"Competitor price monitoring" collapses two different jobs into one phrase:

The gap matters because of sequencing. A promotion needs demand to exist. Media gets booked, creative gets built and the ads go live at or before the moment the price changes, so the ad library carries the offer at least as early as the product page, and often earlier. More usefully, the ads carry the parts of the offer that never touch a product page at all:

Use both, in the right order. Ads tell you a move is coming and what it means. A page crawler confirms the exact number on the SKUs you care about. If you can only afford one, start with the free layer: it's the one that gives you warning.

Where to read competitor prices for free

Every major platform runs a public, no-login ad archive, and prices and codes appear in the creative and copy:

If you haven't used these before, our guide to seeing competitors' ads for free walks through each interface. This guide is about pricing specifically; for the wider mechanics of spotting and logging a sale as it launches, see tracking competitor promotions, which covers offer cadence and the recording workflow in more depth.

What to record from each ad

A pricing log is only useful if the fields are consistent. We capture these on every ad, and they're the same five you should write down by hand:

FieldExampleWhy it matters
Price shown"£24.99", "from £179"The actual number the rival is willing to advertise
Discount depth20%, 50%Comparable across brands; the headline aggression measure
Offer type% off, free trial, finance, bundleReveals whether they're cutting margin or restructuring the deal
Promo codeFIRST15, FLASHNaming conventions leak the campaign calendar (see below)
Price positioningvalue, mid, premiumWhere they're claiming to sit, which is often not where their price sits

How deep do competitors actually discount? Real numbers

This is where generic pricing advice runs out, because it has no data. Across the 50,671 UK ads we've captured and analysed so far (158 brands, Google, Meta and TikTok), 16,954 — 33.5% — carry an offer of some kind. Of those, 6,403 have a discount recorded that we can measure as a percentage. The distribution is not smooth:

Discount depthAds
20% off1,307
25% off809
50% off773
15% off658
30% off549
10% off490
60% off467
40% off296

Two practical reads. First, discounting clusters on round psychological anchors: 20, 25 and 50 alone account for 2,889 of the 6,403 measurable offers. If you're setting a discount, 22% buys you nothing that 20% doesn't, and reads as a worse deal than 25%. Second, the mean recorded depth is 32.5%, and 1,738 ads sit at 50% or deeper. If your category's rivals are routinely advertising half off, a 10% counter is not a response.

Read all of that as directional rather than exact. 84% of the discount percentages we hold appear verbatim in the creative's copy or the on-image text we transcribe; the other 16% are our model's reading of the brand's prevailing offer rather than a number printed on the ad. That's reliable enough to compare sectors and spot escalation, and not reliable enough to quote a single rival's exact discount without opening the creative yourself. Whether an ad carries an offer at all is read directly off the ad and is the firmer number.

The offer-type mix: most "discounting" isn't a discount

Cutting the headline price is only one lever, and competitors reach for others first. Across the same corpus:

Offer typeAdsWhat it protects
Percentage off5,930Nothing — straight margin give-away
Finance / spread cost2,736Headline price intact, affordability improved
Free trial2,387Price intact, risk removed
Free shipping2,172Price intact, cheaper than a % cut
Amount off2,043Caps the give-away in cash terms
Gift with purchase860Costs wholesale, perceived at retail
Bundle757Raises basket value while appearing cheaper
BOGO69Rarely used in UK paid media

Finance, free trials and free shipping together outnumber percentage-off ads. This is the single most actionable pattern in the dataset: the strongest advertisers protect the headline number and attack the perceived cost instead. A product-page crawler watching the price field sees none of it, because the price field doesn't move.

Price positioning predicts how a rival will defend itself

We also classify where each ad claims to sit. Of 48,841 classified ads: value 22,551, mid 18,773, premium 4,031, budget 3,294 and luxury 192. Crossed against discount behaviour, the result is counter-intuitive:

PositioningAds% carrying a measurable discountMean depth
Value22,55118.3%35.1%
Budget3,29414.6%25.9%
Luxury19210.9%22.1%
Premium4,0318.5%24.9%
Mid18,7737.6%29.3%

Value-positioned brands discount most often and most deeply: they've trained their audience on price, so price is the only lever left. Premium and luxury brands discount rarely, and when they do they stay shallow, protecting the reference price. Note the luxury row rests on only 192 ads, so treat it as indicative rather than firm. The lesson for your own monitoring: a premium rival running 25% off is a far bigger signal than a value rival running 40% off, which is just Tuesday. Depth alone is meaningless without the positioning context.

Promo codes leak the campaign calendar

We currently track 871 qualified ads carrying a promo code across 38 brands. Codes are the most under-read pricing signal available, because the naming is rarely random. CBNEW (111 ads) is explicitly an acquisition code, new customers only, which is exactly the offer that never appears on a product page. FIRST15 (45 ads) states both the audience and the depth in six characters. FLASH (78 ads) and FLASH22 (25) mark short-burst discounting, and the numeric suffix implies a series you can expect to repeat. Codes with date stamps — we see things like SNWAUG26 and RACE0926 — hand you the rival's promotional calendar directly.

Why the numbers above don't sum tidily. Not every offer has a measurable percentage: a "free delivery" or finance ad carries an offer with no depth to extract, and some creatives show a price with no discount at all. We report the denominator for each figure rather than implying full coverage. A discount we can't measure is recorded as absent, not as zero.

Worked examples from pages we publish

The method is easier to see on real brands. These are live teasers of what each is running:

Note how differently the four behave. Any monitoring setup that only watches for "% off" would see carwow as dormant and misread Charlotte Tilbury's restraint as weakness.

A monitoring routine that survives contact with a real week

  1. Pick five rivals, not fifteen. Coverage you review beats coverage you collect and ignore.
  2. Weekly, same slot. Open each brand in the Meta Ad Library and Google Ads Transparency Center, filtered to the UK.
  3. Log the five fields. Price shown, depth, offer type, promo code, positioning. One row per new creative; skip anything you logged last week.
  4. Record first-seen dates. Depth matters less than the date a new offer entered the market. That date is your lead time.
  5. Review monthly, not weekly. Look for depth creeping up, offer type shifting from % off to finance or bundles (margin pressure), and codes repeating on a cycle.
  6. Keep a page crawler for the SKUs that matter. The ads tell you what's coming; the crawler confirms the exact number on your twenty most contested products.

Budget roughly 45 minutes a week for five brands. The honest limit: manual review catches offers but not reach, and the libraries don't publish spend, so you can't tell a £500 test from a £50,000 push. Don't infer budget from ad count — our note on estimating competitor ad spend explains why that inference breaks.

The short version

Price-page crawlers answer "what does it cost now". Ad libraries answer "what is my competitor about to do, to whom, and how committed are they" — earlier, and for free. Watch depth against positioning rather than in isolation, treat finance and free-shipping offers as discounting by another name, and read promo codes as a published calendar. Then point a crawler at the handful of SKUs where the exact number actually changes your decision.

We maintain this as structured data because manual review stops scaling past about five brands. AdRival captures a brand's ads across Google, Meta, TikTok and LinkedIn, and qualifies every Google, Meta and TikTok creative we capture against 25 dimensions — price shown, discount depth, offer type, promo code and positioning among them — so a change in a rival's pricing posture shows up as a row in a report rather than something you hope you noticed. Brand reports are £99 one-off; a weekly tracker with promo alerts is £99 a month. The brand pages linked above are live samples, free to read.

See this data for any brand we cover

AdRival captures ads for 159 UK brands from Google, Meta, TikTok and LinkedIn, and AI-qualifies the Google, Meta and TikTok creatives for offer, hook and urgency — 51,583 qualified so far, each benchmarked against its sector.

Browse live ad libraries

More guides: Best Ad Spy Tools UK: 15 Compared Honestly · Competitor Ad Alerts: A Routine That Works · Competitor Ad Analysis: A 50,000-Ad Framework · Competitor Ad Report Template (With Real Numbers) · How to Estimate Competitor Ad Spend in the UK · Facebook Ad Hook Examples From 13,600 UK Ads · Fake Urgency Marketing: 50,000 UK Ads Measured · How to Track Competitor Black Friday Ads · Black Friday Ad Examples (With Real Dates) · Competitor Ad Audit: Benchmarked Template · How to Track Competitor Christmas Ads in 2026 · How to Track Competitor Promotions and Discounts · When Do Black Friday Ads Start in the UK? · Which Platforms Are My Competitors Advertising On? · Pinterest Ad Library: What Exists and What Doesn't · Reddit Ad Library: What Exists and What Doesn't · Competitor Bidding on My Brand Name: What to Do · How to Export Meta Ad Library Data · How to Find Competitor Landing Pages · Google Ads Transparency Center Missing Ads? Fixes · How Long Should You Run an Ad? (143,006 UK Ads) · Check Competitor Ads Free: Google, Meta & TikTok · How Often Should You Refresh Ad Creative? UK Data · Facebook Ad Library Not Showing Ads? Real Causes · Instagram Ad Library: How to See Any Brand's Ads · Meta Ad Library Alternatives: The Honest UK Guide · How Many Ads Do Competitors Run? (221 UK Brands) · YouTube Ad Library: Where the Ads Actually Live · How to Find Competitors' Winning Ads (Real Data) · LinkedIn Ad Library: How It Works and Its Limits · TikTok Ad Library: How to Use It & What It Misses · How Accurate Are Ad Launch Dates? We Measured · Meta Ad Library: How to Use It and What It Hides · Google Ads Transparency Center: What It Hides · live ad libraries