Skip to content

Specsavers Data Correction Log

Date: 2026-05-22 Creatives: 90991 (Double Fullscreen), 90597 (Adbubble) Campaign: Specsavers // Design ditt par // 2026 Output file: specsavers-design-ditt-par-corrected-final.xlsx


Data Sources

  • Bucket data (daily metrics) pulled from Cavai API for full active period
  • Daily flow data pulled for both creatives
  • Original correction plan in data-correction-plan.md (written Apr 28)

Baseline Period

90991: Apr 25 - May 10 (16 days of stable, high-volume data) 90597: Apr 25 - May 7 for interaction metrics, May 9-10 for viewability

90991 Baseline Rates

MetricRate
Interacted / Impressions0.8036%
Started / Impressions0.1649%
Continued / Started85.01%
Actions / Impressions1.6648%
Link clicks / Impressions0.3635%
Go_Back? / Impressions0.9755%

90597 Baseline Rates

MetricRate
Interacted (bubble click) / Impressions24.4997%
Started / Impressions0.5107%
Link clicks / Impressions0.0450%
Viewable / Impressions95.2583%
Avg seconds per viewable impression30.7s

Corrections Applied

90991 (Double Fullscreen)

PeriodDatesWhat was wrongWhat we did
TestApr 14-19Low volume (4,879 imp total), no reliable interaction dataGrayed out. Video/viewability shown as-is. No interaction estimates.
Auto-click bugApr 20-21Script auto-fired .click() on flow choices at load. Started inflated to 37-67% (real: 0.16%). Actions inflated similarly. Go_Back? inflated (61k/119k vs real ~1k/day).Estimated started, actions, completed from baseline rates. Interacted also estimated (was 0).
Interacted brokenApr 22-23Interacted = 0 (metric not firing). Started/actions/Go_Back correct post-fix.Interacted estimated from baseline (0.80%). All other metrics kept as-is.
OK (except reached_end)Apr 24+reached_end = 0 every day (platform bug, goal mechanism not firing). All other metrics correct.Replaced reached_end with Go_Back? flow node as "Completed Experience" proxy.

Key insight on actions rate: Post-fix actions are ~1.66% of impressions, which looks high but is correct. The creative uses programmatic flow navigation (script clicks Back + target choice) for each glasses/color selection. Each user interaction = 2 flow clicks. These are NOT shown in the client report to avoid confusion.

90597 (Adbubble)

PeriodDatesWhat was wrongWhat we did
TestApr 14-19Low volume, same as fullscreenGrayed out.
Interacted brokenApr 20-23Interacted = 0 (same bug as fullscreen, fixed Apr 24)Estimated from baseline (24.5%).
Viewability brokenApr 14 - May 7viewable_impressions near-zero (14-59) despite 100k daily impressions. Tracking not working for bubble format.Estimated using May 9-10 rate (95.26%). seconds_in_view also estimated (viewable * 30.7s avg).
Viewability fix mid-dayMay 8Viewability started working mid-day (52.8% vs 95% on full days)Kept actual values, noted as partial.
OKMay 9-10All metrics working. Volume dropping (campaign winding down).No corrections.

Key insight on adbubble interacted: 24.5% interacted rate is expected for bubbles. "Interacted" = clicked on the bubble to expand it, which is the primary CTA for this format.

What the Excel Contains

  1. Summary - Campaign overview, both creatives, correction methodology explained
  2. 90991 Double Fullscreen - Daily corrected data with columns: Impressions, Viewable, Seconds in View, Plays, W25-W100, VTR, Interacted, Completed Experience (Go_Back?), Clickthroughs
  3. 90597 Adbubble - Daily corrected data with columns: Impressions, Viewable, Seconds in View, Interacted (Bubble Click), Started Flow, Continued, Completed Experience (frame choices), Clickthroughs
  4. Campaign Combined - Both creatives merged per day

Color coding: gray = test period, yellow = estimated values, white = verified correct.

Client-Facing Metrics (what we show vs hide)

Show:

  • Reach: Impressions, Viewable Impressions
  • Attention: Seconds in View
  • Video (fullscreen only): Plays, W25-W100, VTR (completion rate)
  • Interaction: Interacted (unique users who engaged)
  • Completed Experience: Go_Back? for fullscreen, frame choices for bubble
  • Clickthroughs: Link clicks out to Specsavers

Hidden from client:

  • Raw actions (confusing, inflated by programmatic flow clicks)
  • reached_end (broken, always 0)
  • header_clicks vs background_clicks breakdown (internal detail)

Open Issues

  • reached_end = 0 (platform bug): Goal/reachedEnd mechanism never fires for this creative. Needs investigation in engine. Filed as known issue in data-correction-plan.md.
  • Adbubble viewability pre-May 8: We don't know exactly when/why it broke or what fixed it. The estimates use May 9-10 rates which may not perfectly reflect earlier periods (different placements, time of day patterns etc).
  • Apr 20-21 Go_Back? inflation: The auto-click bug made Go_Back? hit 61k and 119k (vs ~1k/day normally). Our correction estimates these days from the baseline rate instead. If anyone questions the Apr 20-21 completed numbers, explain they're proportional estimates.

Script Used

build_corrected_report.py in this directory. Can be re-run to regenerate the Excel if data needs updating. All raw data is embedded in the script.

Internal documentation