← All runbooks
gooseworks-ai / composites-ad-to-landing-page-auditor

Ad-to-Landing Page Auditor

Audit the message match between paid ads and their landing pages. The runbook compares each ad's promise, wording, CTA, and conversion goal against the destination page's headline, body, CTA, trust signals, and form friction, then identifies the disconnects most likely to depress

agent codexmodel gpt-5.5snapshot python312-uveval programmatic8 stepsv1.0.0

Deploy Ad-to-Landing Page Auditor to your jetty.io

One-click installs this runbook into a collection on your Jetty account. You can run it from the Spot dashboard, schedule it, or pipe inputs in via the API.

The shape of the run

8 steps · start to finish.

  1. 1
    Step 1

    Environment Setup

    Create /app/results, verify Python is available, and install optional parsing dependencies when needed.

    mkdir -p /app/results
    python - <<'PY'
    import sys
    print(sys.version)
    PY
    pip install requests beautifulsoup4 >/tmp/ad_lp_audit_deps.log 2>&1 || true
    

    Record the resolved inputs in the validation report. If ad copy, landing page URLs, or conversion goal are missing, stop and write validation_report.json with overall_passed=false.

  2. 2
    Step 2

    Intake and Normalization

    Collect the required ad data:

  3. 3
    Step 3

    Landing Page Audit

    For each unique landing page URL, fetch the page content.

  4. 4
    Step 4

    Message Match Scoring

    For every ad to landing-page pair, score each dimension from 1 to 10:

  5. 5
    Step 5

    Identify Conversion Killers

    Flag the common disconnects:

  6. 6
    Step 6

    Generate Recommendations

    Write `/app/results/message_match_report.md` with the scorecard and evidence. Write `/app/results/prioritized_fixes.md` with recommended changes, including revised hero copy, CTA text, proof placement, and form-friction reductions.

  7. 7
    Step 7

    Iterate on Errors (max 3 rounds)

    If required inputs are missing, a page cannot be fetched, extraction fails, or score evidence is too thin, perform up to max 3 rounds of targeted repair:

  8. 8
    Step 8

    Validation

    Write `/app/results/summary.md` and `/app/results/validation_report.json`.