Appearance
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
| Metric | Rate |
|---|---|
| Interacted / Impressions | 0.8036% |
| Started / Impressions | 0.1649% |
| Continued / Started | 85.01% |
| Actions / Impressions | 1.6648% |
| Link clicks / Impressions | 0.3635% |
| Go_Back? / Impressions | 0.9755% |
90597 Baseline Rates
| Metric | Rate |
|---|---|
| Interacted (bubble click) / Impressions | 24.4997% |
| Started / Impressions | 0.5107% |
| Link clicks / Impressions | 0.0450% |
| Viewable / Impressions | 95.2583% |
| Avg seconds per viewable impression | 30.7s |
Corrections Applied
90991 (Double Fullscreen)
| Period | Dates | What was wrong | What we did |
|---|---|---|---|
| Test | Apr 14-19 | Low volume (4,879 imp total), no reliable interaction data | Grayed out. Video/viewability shown as-is. No interaction estimates. |
| Auto-click bug | Apr 20-21 | Script 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 broken | Apr 22-23 | Interacted = 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)
| Period | Dates | What was wrong | What we did |
|---|---|---|---|
| Test | Apr 14-19 | Low volume, same as fullscreen | Grayed out. |
| Interacted broken | Apr 20-23 | Interacted = 0 (same bug as fullscreen, fixed Apr 24) | Estimated from baseline (24.5%). |
| Viewability broken | Apr 14 - May 7 | viewable_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-day | May 8 | Viewability started working mid-day (52.8% vs 95% on full days) | Kept actual values, noted as partial. |
| OK | May 9-10 | All 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
- Summary - Campaign overview, both creatives, correction methodology explained
- 90991 Double Fullscreen - Daily corrected data with columns: Impressions, Viewable, Seconds in View, Plays, W25-W100, VTR, Interacted, Completed Experience (Go_Back?), Clickthroughs
- 90597 Adbubble - Daily corrected data with columns: Impressions, Viewable, Seconds in View, Interacted (Bubble Click), Started Flow, Continued, Completed Experience (frame choices), Clickthroughs
- 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.