Demo: fictional airlines, illustrative data.Back to the site
Campaign UpliftReleased· Released to you

Summer Sun Sale.

Did the Summer Sun Sale campaign lift consideration of Kitejet for a summer holiday flight?

Audience
UK adults 18 to 64 who have taken a short-haul leisure flight in the last two years
Fieldwork
26 May to 14 Jun 2026
Sample
300 per cell · detects ±10.5 pts
Primary KPI
Consideration, fixed at Gate 2
Step 7 of 7 · Released3 of 3 gates signed

Method lock

Locked before fieldwork.

The spec, survey version, primary KPI, sub-groups and analysis plan are hashed at Gate 2. If any of it changed afterwards, the hash would not match.

Locked 22 May, 11:05kj-summer-sale-survey-v1.2

SHA-256 820c723d07de80ee21f325d090b3e968dcc2d57f0955eae95e957ac276179d89

Show the locked plan
{
  "design": "Campaign Uplift",
  "audience": "UK adults 18 to 64 who have taken a short-haul leisure flight in the last two years",
  "perCell": 300,
  "cells": [
    "exposed",
    "control"
  ],
  "primaryKpi": "consideration",
  "secondaryKpis": [
    "awareness",
    "recall",
    "favourability",
    "intent",
    "message"
  ],
  "subgroups": [
    "age band",
    "Flies short-haul three times a year or more"
  ],
  "test": "two-proportion z (pooled), Wald 95% interval, Holm adjustment across sub-groups and creatives",
  "minimumDetectableLift": 0.105,
  "exclusions": [
    "decoy-ad over-claim",
    "attention check",
    "speeder (< one third of median time)",
    "duplicate or fraud flag",
    "exposure not confirmed by media data"
  ]
}

Human gates

Who signed what, and when.

  1. Gate 1 · Researcher approves spec and survey

    Signed by SpinProof Research Desk, lead researcher, 1 May, 15:20

  2. Gate 2 · Analysis plan locked and hashed

    Signed by SpinProof Research Desk, lead researcher, 22 May, 11:05

  3. Gate 3 · Researcher signs the report

    Signed by SpinProof Research Desk, second reviewer, 18 Jun, 16:40

Agent run log

Every action, with the model or code version used.

Agents draft, recruit, check and write. Deterministic code does the statistics. Real people give every answer.

  1. Intake agent28 Apr, 09:12

    Turned the booking into study spec v1: Campaign Uplift, audience, KPIs and cells.

    claude-sonnet-5-5 · intake prompt v1.4

  2. Intelligence agent28 Apr, 09:31

    Built the context brief: competitor ads from Meta Ad Library, share of search baseline, AI answer visibility baseline, news and social scan.

    claude-sonnet-5-5 · intel prompt v1.2

  3. Questionnaire agent28 Apr, 10:02

    Built the survey from the Campaign Uplift template, with decoy ad, attention checks and consent screen.

    claude-sonnet-5-5 · questionnaire prompt v2.0

  4. Lead researcher1 May, 15:20

    Gate 1 signed: spec and survey approved with two wording edits.

    SpinProof Research Desk

  5. Channels agent2 May, 10:15

    Set up recruitment: Meta ad sets with screener, QR codes for placements, panel quotas, SpinProof panel invites.

    claude-sonnet-5-5 · channels prompt v1.3

  6. Analysis agent22 May, 11:05

    Locked the analysis plan. SHA-256 820c723d07de…

    stats-engine 0.9.2, deterministic

  7. Lead researcher22 May, 11:06

    Gate 2 signed: plan locked before fieldwork.

    SpinProof Research Desk

  8. Fieldwork agent26 May, 08:00

    Fieldwork opened. Invites live on all channels; rewards queue active.

    claude-sonnet-5-5 · fieldwork prompt v1.1

  9. Verification agent27 May, 18:00

    Daily quality pass: fraud, speeders, attention and decoy checks run; exclusions logged with reasons.

    claude-sonnet-5-5 · verification prompt v1.6

  10. Verification agent31 May, 18:00

    Daily quality pass: fraud, speeders, attention and decoy checks run; exclusions logged with reasons.

    claude-sonnet-5-5 · verification prompt v1.6

  11. Verification agent4 Jun, 18:00

    Daily quality pass: fraud, speeders, attention and decoy checks run; exclusions logged with reasons.

    claude-sonnet-5-5 · verification prompt v1.6

  12. Verification agent8 Jun, 18:00

    Daily quality pass: fraud, speeders, attention and decoy checks run; exclusions logged with reasons.

    claude-sonnet-5-5 · verification prompt v1.6

  13. Verification agent12 Jun, 18:00

    Daily quality pass: fraud, speeders, attention and decoy checks run; exclusions logged with reasons.

    claude-sonnet-5-5 · verification prompt v1.6

  14. Verification agent14 Jun, 18:30

    81 completes excluded in total: decoy-ad over-claim 29, failed attention check 22, speeder 11, duplicate or fraud flag 7, exposure not confirmed 12.

    claude-sonnet-5-5 · verification prompt v1.6

  15. Fieldwork agent14 Jun, 20:00

    Quotas met in every cell. Fieldwork closed; rewards paid.

    claude-sonnet-5-5 · fieldwork prompt v1.1

  16. Analysis agent16 Jun, 09:00

    Ran the locked plan: every KPI, pre-registered sub-groups, Holm adjustment. No deviations from plan.

    stats-engine 0.9.2, deterministic

  17. Reporting agent16 Jun, 11:30

    Drafted the report from computed tables only. Every number linked to an analysis output.

    claude-sonnet-5-5 · reporting prompt v1.8

  18. Evidence agent16 Jun, 11:45

    Assembled the Evidence File. 0 untraced numbers. Charts re-checked against tested values.

    claude-sonnet-5-5 · evidence prompt v1.0

  19. Second reviewer18 Jun, 16:40

    Gate 3 signed: report checked against the Evidence File.

    SpinProof Research Desk

  20. Norms agent19 Jun, 09:00

    Added the study to the travel benchmark set.

    claude-sonnet-5-5 · norms prompt v0.9

  21. Portal19 Jun, 09:05

    Released to client portal with raw data, crosstabs and Evidence File.

    portal

Results trace

Every reported number, traced to raw answers.

Each number in the report links to the rows it came from and the analysis output that produced it.

ReportedSource rowsOutput
R1Consideration lift +4.3 pts (−3.3 to +12.0)
responses.csv: valid=1, consideration=1 by cell → 114/300 exposed, 101/300 control
analysis/kpis.json#consideration
R2600 verified people
responses.csv: count of valid=1
analysis/sample.json#valid
R3Decoy false-claim rate 4.3%
responses.csv: decoy=1 over all completes
analysis/quality.json#decoy
R4Lift at 3+ exposures +13.4 pts
responses.csv: cell=exposed, freq=3 against all control
analysis/frequency.json#3
R5Persons lifted 294,667
absolute lift × campaign reach of 6,800,000 (media plan)
analysis/impact.json#persons
S1Age: 18–34 +14.4 pts, Holm p 0.14
responses.csv filtered to sub-group
analysis/subgroups.json#0
S2Age: 35–54 +5.4 pts, Holm p 0.89
responses.csv filtered to sub-group
analysis/subgroups.json#1
S3Age: 55+ −8.1 pts, Holm p 0.89
responses.csv filtered to sub-group
analysis/subgroups.json#2
S4Segment: Flies short-haul three times a year or more +1.5 pts, Holm p 0.89
responses.csv filtered to sub-group
analysis/subgroups.json#3
S5Segment: Everyone else +5.6 pts, Holm p 0.87
responses.csv filtered to sub-group
analysis/subgroups.json#4

Downloads

Always included, never on request.

Demo data. Fictional airlines, illustrative results generated for this demo.