← All runbooks
gooseworks-ai / composites-ad-campaign-analyzer

Ad Campaign Analyzer

Analy

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

Deploy Ad Campaign Analyzer 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

7 steps · start to finish.

  1. 1
    Step 1

    Environment Setup

    1. Create /app/results if it does not exist.
    2. Install or verify pandas, numpy, and scipy.
    3. Confirm the campaign data, platform list, time period, primary goal, and any target metrics are available.
    4. If screenshot data is provided, extract it into a normalized table before analysis.
  2. 2
    Step 2

    Normalize Campaign Data

    1. Load the exported CSV, pasted table, or extracted screenshot data. 2. Standardize field names for spend, impressions, clicks, conversions, revenue, campaign, ad group, creative, keyword, audience, and channel. 3. Calculate derived metrics: CTR, CPC, CVR, CPA, ROAS, revenue per

  3. 3
    Step 3

    Diagnose Performance

    1. Rank each campaign entity by spend, conversions, CPA, ROAS, and conversion volume. 2. Separate high-spend low-return waste from low-spend opportunities that need more budget to learn. 3. Check statistical confidence before treating small-sample outliers as winners or failures.

  4. 4
    Step 4

    Generate Cut, Scale, Hold, and Test Decisions

    1. Mark campaigns or entities for `cut` when spend is material and performance is below target without a credible learning rationale. 2. Mark campaigns or entities for `scale` when they beat target metrics with enough volume. 3. Mark uncertain entities for `hold` when more data i

  5. 5
    Step 5

    Reallocate Budget Across Channels

    1. Compare Google, Meta, LinkedIn, and any other active channels on equal conversion and revenue definitions. 2. Identify over-funded channels and under-funded channels relative to marginal returns and learning needs. 3. Build conservative, balanced, and aggressive reallocation s

  6. 6
    Step 6

    Write Analysis Outputs

    1. Write `/app/results/campaign_analysis.md` with findings by channel and by campaign entity. 2. Write `/app/results/summary.md` with the top decisions, recommended budget movement, and risks. 3. Call out data gaps and any places where the recommendation depends on assumptions.

  7. 7
    Step 7

    Iterate on Analysis Quality (max 3 rounds)

    If validation finds incomplete outputs or unsupported recommendations, run up to max 3 rounds of targeted correction: