github/awesome-copilot

ad-campaign-analyzer

Use this skill when the user shares ad campaign performance data and asks what to cut, scale, or test. Trigger for prompts like "analyze my ad campaigns", "where am I wasting ad spend", "reallocate my ad budget", "which ads are actually working", or "ROAS analysis". Do not trigger for campaign planning or creative generation without performance data.

84Collecting
See how to use itView GitHub source
npx skills add https://github.com/github/awesome-copilot --skill "skills/ad-campaign-analyzer"
Automated source guide

Source checked Jul 28, 2026·Refresh due Oct 26, 2026

Reorganized from the pinned upstream SKILL.md

Turn ad-campaign-analyzer's source instructions into a guide you can follow

According to the pinned SKILL.md from github/awesome-copilot: Take raw campaign performance data and turn it into clear decisions. This skill doesn't just summarize metrics — it diagnoses problems, identifies winners, checks statistical significance, and tells you exactly what to cut, scale, and test next. Then it goes further: it compares…

npx skills add https://github.com/github/awesome-copilot --skill "skills/ad-campaign-analyzer"
Check the pinned source

Best fit

  • "Analyze my Google Ads performance"
  • "Which ads should I kill?"
  • "Is this campaign working?"

Bring this context

  • A concrete task that matches the documented purpose of ad-campaign-analyzer.
  • The files, examples, or context the task depends on.
  • Your constraints, target environment, and definition of done.

Expected outputs

  • Total estimated waste: $[X] ([X%] of total spend)
  • [List of keywords/ads/audiences with spend but no conversions]
  • [List of items with CPA 3x target]

Key source sections

Read ad-campaign-analyzer through these 5 source sections

Sections are extracted automatically from the pinned SKILL.md and link back to the source.

01

Phase 0: Intake

1. Campaign data — One of: - CSV export from Google Ads / Meta Ads Manager / LinkedIn Campaign Manager - Pasted performance table - Screenshots of dashboard (we'll extract the data) 2. Platform(s) — Google / Meta / LinkedIn / All 3. Time period — What date range does this cover?…

SKILL.md · Phase 0: Intake
Campaign data — One of:CSV export from Google Ads / Meta Ads Manager / LinkedIn Campaign ManagerPasted performance table
02

Phase 1: Data Ingestion & Normalization

Normalize all data into a standard analysis format:

SKILL.md · Phase 1: Data Ingestion & Normalization
Normalize all data into a standard analysis format:When data spans multiple channels, also produce a channel-level rollup:CAC = Full customer acquisition cost if funnel data provided (CPA × close-rate adjustment)
03

Phase 2: Performance Diagnostics

Identify spend that produced no or negative return:

SKILL.md · Phase 2: Performance Diagnostics
Identify spend that produced no or negative return:Find what's actually working:For any A/B test (ad variants, audiences, landing pages):
04

Phase 3: Funnel Analysis

Review the “Phase 3: Funnel Analysis” section in the pinned source before continuing.

SKILL.md · Phase 3: Funnel Analysis
Review and apply the “Phase 3: Funnel Analysis” source section.
05

Phase 4: Budget Reallocation

When data spans multiple channels, perform cross-channel budget optimization.

SKILL.md · Phase 4: Budget Reallocation
1.0 = Under-invested (getting more than its share of conversions)= 1.0 = Proportional (fair share)< 1.0 = Over-invested (getting less than its share)

SkillSignal prompt templates

Provide the task, context, and acceptance criteria

These prompts were written by SkillSignal from the source structure; they are not upstream text.

Task-start prompt

Confirm source fit, inputs, and outputs before acting.

Use ad-campaign-analyzer to help me with: [specific task]. Context: [files, data, or background]. Constraints: [environment, scope, and prohibited actions]. Before acting, check the pinned SKILL.md and explain which sections apply, what inputs are still missing, and what you will deliver.

Source-guided execution

Make the Agent explicitly follow the key extracted sections.

Apply the pinned ad-campaign-analyzer source to [task]. Pay particular attention to these source sections: “Phase 0: Intake”, “Phase 1: Data Ingestion & Normalization”, “Phase 2: Performance Diagnostics”, “Phase 3: Funnel Analysis”, “Phase 4: Budget Reallocation”. Preserve the important decision at each step. Mark facts not covered by the source as “needs confirmation” instead of inventing them. Then verify the result against my acceptance criteria: [criteria].

Result-review prompt

Check omissions, permissions, and source drift before delivery.

Review the current ad-campaign-analyzer result: (1) does it satisfy the original task; (2) were any applicable steps or limits in the pinned SKILL.md missed; (3) did it perform any unauthorized file, command, network, or data action; and (4) which conclusions remain unverified? List issues first, then fix only what the source or user authorization supports.

Output checklist

Verify each item before delivery

The task matches the purpose documented in the SKILL.md.

The source section “Phase 0: Intake” has been checked.

The source section “Phase 1: Data Ingestion & Normalization” has been checked.

The source section “Phase 2: Performance Diagnostics” has been checked.

The source section “Phase 3: Funnel Analysis” has been checked.

Inputs, constraints, and acceptance criteria are explicit.

Unverified facts, compatibility, and outcome claims are clearly marked.

Any file, command, network, or data action has been reviewed.

Choose a different workflow

When another Skill is the better fit

analytics

When the user wants to set up, improve, or audit analytics tracking and measurement. Also use when the user mentions "set up tracking," "GA4," "Google Analytics," "conversion tracking," "event tracking," "UTM parameters," "tag manager," "GTM," "analytics implementation," "tracking plan," "how do I measure this," "track conversions," "Mixpanel," "Segment," "are my events firing," or "analytics isn't working." Use this whenever someone asks how to know if something is working or wants to measure m

A separate implementation from coreyhaines31/marketingskills; compare its source, maintenance signals, and permission requirements.

Open source detail

attribution

When the user wants to figure out which marketing actually drives conversions and revenue, choose or interpret an attribution model, or reconcile conflicting numbers across tools. Also use when the user mentions "attribution," "attribution model," "first-touch vs last-touch," "multi-touch," "which channel drives revenue," "what's my real CAC," "my dashboards disagree," "Google/Meta says X but GA says Y," "media mix model," "MMM," "incrementality," "geo lift," "holdout test," "how did you hear ab

A separate implementation from coreyhaines31/marketingskills; compare its source, maintenance signals, and permission requirements.

Open source detail

suede-analytics

Know whether any of it worked: tracking plans, event and conversion instrumentation, UTM discipline, attribution, and auditing what is actually firing. Use when the user is setting up or fixing analytics, conversion tracking, or attribution, or cannot tell whether a change moved anything. Also use when the user mentions 'set up tracking,' 'GA4,' 'Google Analytics,' 'conversion tracking,' 'event tracking,' 'UTM parameters,' 'tag manager,' 'GTM,' 'analytics implementation,' 'tracking plan,' 'how d

A separate implementation from JasonColapietro/suede-creator-skills; compare its source, maintenance signals, and permission requirements.

Open source detail

FAQ

What does ad-campaign-analyzer do?

Take raw campaign performance data and turn it into clear decisions. This skill doesn't just summarize metrics — it diagnoses problems, identifies winners, checks statistical significance, and tells you exactly what to cut, scale, and test next. Then it goes further: it compares…

How do I start using ad-campaign-analyzer?

The catalog detected this source-specific install command: npx skills add https://github.com/github/awesome-copilot --skill "skills/ad-campaign-analyzer". Inspect the command and pinned source before running it.

Which Agent platforms does it declare?

No dedicated Agent platform is declared in the pinned source record.

Repository stars
37,126
Repository forks
4,654
Quality
84/100
Source repository last pushed

Quality breakdown

Based on traceable docs and repository signals; stars are not treated as quality.

84/100
Documentation30/30
Specificity22/25
Maintenance20/20
Trust signals12/25

Compare before choosing

Related Agent Skills and source variants

These links are selected from shared tasks, functions, stacks, platforms, and same-name variants. Compare the source owner, documentation, permissions, and maintenance signals.

analytics by coreyhaines31

When the user wants to set up, improve, or audit analytics tracking and measurement. Also use when the user mentions "set up tracking," "GA4," "Google Analytics," "conversion tracking," "event tracking," "UTM parameters," "tag manager," "GTM," "analytics implementation," "tracking plan," "how do I measure this," "track conversions," "Mixpanel," "Segment," "are my events firing," or "analytics isn't working." Use this whenever someone asks how to know if something is working or wants to measure m

attribution by coreyhaines31

When the user wants to figure out which marketing actually drives conversions and revenue, choose or interpret an attribution model, or reconcile conflicting numbers across tools. Also use when the user mentions "attribution," "attribution model," "first-touch vs last-touch," "multi-touch," "which channel drives revenue," "what's my real CAC," "my dashboards disagree," "Google/Meta says X but GA says Y," "media mix model," "MMM," "incrementality," "geo lift," "holdout test," "how did you hear ab

suede-analytics by JasonColapietro

Know whether any of it worked: tracking plans, event and conversion instrumentation, UTM discipline, attribution, and auditing what is actually firing. Use when the user is setting up or fixing analytics, conversion tracking, or attribution, or cannot tell whether a change moved anything. Also use when the user mentions 'set up tracking,' 'GA4,' 'Google Analytics,' 'conversion tracking,' 'event tracking,' 'UTM parameters,' 'tag manager,' 'GTM,' 'analytics implementation,' 'tracking plan,' 'how d

test-performance by event4u-app

Use when optimizing test suite performance — database setup, seeder optimization, parallel testing, CI pipeline efficiency, or RefreshDatabase alternatives.

ad-creative by coreyhaines31

When the user wants to generate, iterate, or scale ad creative — headlines, descriptions, primary text, or full ad variations — for any paid advertising platform. Also use when the user mentions 'ad copy variations,' 'ad creative,' 'generate headlines,' 'RSA headlines,' 'bulk ad copy,' 'ad iterations,' 'creative testing,' 'ad performance optimization,' 'write me some ads,' 'Facebook ad copy,' 'Google ad headlines,' 'LinkedIn ad text,' 'static ads,' 'static ad concepts,' 'ad templates,' 'iMessage

View original Skill.mdThis page is parsed directly from the repository SKILL.md without editorial rewriting. Collected: Jul 28, 2026 · about 6 min

Ad Campaign Analyzer

Take raw campaign performance data and turn it into clear decisions. This skill doesn't just summarize metrics — it diagnoses problems, identifies winners, checks statistical significance, and tells you exactly what to cut, scale, and test next. Then it goes further: it compares channels on equal terms, finds where you're over-spending vs under-spending relative to results, and produces a concrete budget reallocation plan.

Core principle: Most startup founders check their ad dashboard, see a ROAS number, and either panic or celebrate. This skill gives you the nuanced analysis a paid media specialist would: what's actually significant, what's noise, and where your next dollar should go. It also solves the allocation problem — most startups either spread budget too thin across channels (no channel gets enough to learn) or dump everything into one channel (missing cheaper opportunities elsewhere).

When to Use

  • "Analyze my Google Ads performance"
  • "Which ads should I kill?"
  • "Is this campaign working?"
  • "Where am I wasting ad spend?"
  • "Optimize my Meta Ads"
  • "How should I split my ad budget?"
  • "Should I spend more on Google or Meta?"
  • "Reallocate my ad spend across channels"
  • "Where am I getting the best return?"
  • "I have $X/month for ads — how should I distribute it?"

Phase 0: Intake

  1. Campaign data — One of:
    • CSV export from Google Ads / Meta Ads Manager / LinkedIn Campaign Manager
    • Pasted performance table
    • Screenshots of dashboard (we'll extract the data)
  2. Platform(s) — Google / Meta / LinkedIn / All
  3. Time period — What date range does this cover?
  4. Monthly budget — Total ad spend in this period
  5. Primary goal — What conversion are you optimizing for? (Demos / Trials / Purchases / Leads)
  6. Target metrics — Do you have target CPA or ROAS? (If not, we'll benchmark)
  7. Any known changes? — Did you change creative, budget, or targeting during this period?
  8. Channels currently running — Google Ads, Meta Ads, LinkedIn Ads, Twitter/X Ads, TikTok Ads, other
  9. Funnel data (if available):
    • Lead → MQL rate
    • MQL → SQL rate
    • SQL → Close rate
    • Average deal size
  10. Channels you're considering but haven't tried — Want to test new channels?
  11. Constraints — Minimum spend on any channel? Platform you must stay on?

Phase 1: Data Ingestion & Normalization

Accepted Data Formats

SourceKey Columns Expected
Google AdsCampaign, Ad Group, Keyword, Impressions, Clicks, CTR, CPC, Conversions, Conv Rate, Cost, Conv Value
Meta AdsCampaign, Ad Set, Ad, Impressions, Reach, Clicks, CTR, CPC, Conversions, Cost Per Result, Amount Spent, ROAS
LinkedIn AdsCampaign, Impressions, Clicks, CTR, CPC, Conversions, Cost, Leads

Normalize all data into a standard analysis format:

DimensionImpressionsClicksCTRCPCConversionsConv RateCPASpendRevenue/Value

Multi-Channel Normalization

When data spans multiple channels, also produce a channel-level rollup:

ChannelMonthly SpendImpressionsClicksCTRCPCConversionsConv RateCPAROASCAC*
Google Search$[X][N][N][X%]$[X][N][X%]$[X][X]$[X]
Google Display...
Meta (FB/IG)...
LinkedIn...
[Other]...
Total$[X][N]$[X] avg[X] avg$[X] avg

*CAC = Full customer acquisition cost if funnel data provided (CPA × close-rate adjustment)

Funnel-Adjusted CAC (If Funnel Data Available)

Channel CAC = CPA ÷ (MQL rate × SQL rate × Close rate)

This reveals which channels produce leads that actually close, not just convert.

Phase 2: Performance Diagnostics

2A: Campaign-Level Health Check

For each campaign:

MetricValueBenchmarkStatus
CTR[X%][Industry avg][Good/Okay/Poor]
CPC$[X][Category avg][Good/Okay/Poor]
Conv Rate[X%][Benchmark][Good/Okay/Poor]
CPA$[X][Target or benchmark][Good/Okay/Poor]
ROAS[X][Target or benchmark][Good/Okay/Poor]
Impression Share[X%][>60% ideal][Good/Okay/Poor]

2B: Budget Waste Detection

Identify spend that produced no or negative return:

Waste TypeSignalAction
Zero-conversion keywords/adsSpend > $[X] with 0 conversionsPause or add negatives
High CPA outliersCPA > 3x targetPause or restructure
Low CTR adsCTR < 50% of campaign averageReplace creative
Broad match bleedSearch terms report showing irrelevant clicksAdd negative keywords
Audience overlapSame users hit by multiple campaignsExclude audiences
Dayparting wasteConversions cluster at certain hours; spend is 24/7Set ad schedule

2C: Winner Identification

Find what's actually working:

Winner TypeSignalAction
Top-performing keywordsLowest CPA, highest conv rateIncrease bid, add variants
Winning adsHighest CTR + conv rate comboScale spend, clone for other groups
Best audiencesLowest CPA segmentIncrease budget allocation
Best timesPeak conversion hours/daysConcentrate budget

2D: Statistical Significance Check

For any A/B test (ad variants, audiences, landing pages):

Test: [Variant A] vs [Variant B]
Metric: [Conv Rate / CTR / CPA]
Variant A: [X%] (n=[sample_size])
Variant B: [Y%] (n=[sample_size])
Confidence level: [X%]
Verdict: [Statistically significant / Not enough data / Too close to call]
Recommended action: [Pick winner / Continue test / Increase budget to reach significance]

Minimum sample: 100 clicks per variant for CTR tests, 30 conversions per variant for CPA tests.

Phase 3: Funnel Analysis

Click → Conversion Path

Impressions: [N] (100%)
     ↓ CTR: [X%]
Clicks: [N] ([X%] of impressions)
     ↓ Landing page → Conversion: [X%]
Conversions: [N] ([X%] of clicks)
     ↓ Conversion → Revenue: $[X] avg
Revenue: $[N]

Funnel Drop-Off Diagnosis

Drop-Off PointRateBenchmarkLikely CauseFix
Impression → Click[CTR%][Benchmark][Ad relevance / targeting][Copy/targeting change]
Click → Conversion[Conv%][Benchmark][Landing page / offer / audience mismatch][LP optimization]
Conversion → Revenue[Close%][Benchmark][Lead quality / sales process][Qualification criteria]

Phase 4: Budget Reallocation

When data spans multiple channels, perform cross-channel budget optimization.

4A: Channel Efficiency Ranking

RankChannelCPAFunnel-Adj CACShare of SpendShare of ConversionsEfficiency Index
1[Channel]$[X]$[X][X%][X%][Conv share ÷ Spend share]

Efficiency Index:

  • > 1.0 = Under-invested (getting more than its share of conversions)
  • = 1.0 = Proportional (fair share)
  • < 1.0 = Over-invested (getting less than its share)

4B: Marginal Return Analysis

For each channel, estimate if additional spend would yield proportional returns:

ChannelCurrent CPAImpression Share / Saturation SignalMarginal Return Estimate
Google Search$[X][X%] impression share — room to growLikely positive
Meta$[X]Frequency [X] — audience may be saturatedDiminishing
LinkedIn$[X]Low volume — limited targeting poolCeiling soon

4C: Funnel Stage Coverage

Funnel StageChannels Covering ItCurrent SpendGap?
Awareness (top)[Meta Display, YouTube]$[X][Yes/No]
Consideration (mid)[Google Search, Meta retargeting]$[X][Yes/No]
Decision (bottom)[Google Brand, Google Search]$[X][Yes/No]
Retargeting[Meta, Google Display]$[X][Yes/No]

4D: Budget Shift Recommendations

ChannelCurrent SpendRecommended SpendChangeReasoning
Google Search$[X]$[Y]+$[Z][Lowest CPA, room to scale]
Meta$[X]$[Y]-$[Z][Audience saturation, frequency too high]
LinkedIn$[X]$[Y]$0[Maintain — niche but valuable]
[New channel]$0$[Y]+$[Y][Test budget — competitors succeeding here]
Total$[X]$[X]$0Budget-neutral reallocation

4E: Scenario Modeling

Scenario 1: Conservative shift (+/- 20%)

  • Expected conversions: [N] (currently [N]) = [X%] improvement
  • Expected blended CPA: $[X] (currently $[X])
  • Risk: Low

Scenario 2: Aggressive shift (+/- 40%)

  • Expected conversions: [N] = [X%] improvement
  • Expected blended CPA: $[X]
  • Risk: Medium — less data on scaled channels

Scenario 3: Budget increase to $[Y]/mo

  • Recommended allocation: [table]
  • Expected conversions: [N]
  • New channels to test: [list]

Phase 5: Output Format

# Ad Campaign Analysis — [Product/Client] — [DATE]

Period: [Date range]
Total spend: $[X]
Platform(s): [Google / Meta / LinkedIn]
Primary goal: [Conversions / Revenue / Leads]

---

## Executive Summary

[3-5 sentences: Overall performance verdict, biggest win, biggest problem, top recommendation including any reallocation moves]

---

## Performance Dashboard

| Campaign | Spend | Impressions | Clicks | CTR | CPC | Conversions | CPA | ROAS | Verdict |
|----------|-------|------------|--------|-----|-----|-------------|-----|------|---------|
| [Name] | $[X] | [N] | [N] | [X%] | $[X] | [N] | $[X] | [X] | [Scale/Optimize/Pause] |

---

## Budget Waste Report

**Total estimated waste: $[X] ([X%] of total spend)**

### Wasted on zero-conversion items: $[X]
[List of keywords/ads/audiences with spend but no conversions]

### Wasted on high-CPA items: $[X]
[List of items with CPA > 3x target]

### Recommended saves: $[X]/month
[Specific items to pause]

---

## Winners to Scale

### Top Keywords/Audiences
| Item | CPA | Conv Rate | Current Spend | Recommended Spend |
|------|-----|----------|--------------|-------------------|

### Top Ads
| Ad | CTR | Conv Rate | Why It Works |
|----|-----|----------|-------------|

---

## A/B Test Results

### [Test Name]
- Variant A: [Metric] (n=[N])
- Variant B: [Metric] (n=[N])
- Confidence: [X%]
- **Verdict:** [Winner / Continue / Inconclusive]

---

## Budget Reallocation

### Current vs Recommended Allocation

| Channel | Current | Recommended | Change | Why |
|---------|---------|------------|--------|-----|
| [Channel] | $[X] | $[Y] | [+/-$Z] | [1-line reason] |

**Projected impact:**
- Conversions: [N] → [N] (+[X%])
- Blended CPA: $[X] → $[Y] (-[X%])

### Funnel Stage Coverage
[Coverage map with gaps identified]

### New Channel Recommendations

#### [Channel Name]
- **Why test:** [Reasoning]
- **Recommended test budget:** $[X]/mo for [X weeks]
- **Success criteria:** CPA < $[X]
- **Competitors using it:** [Yes/No — who]

---

## Action Plan

### Immediate (This Week)
- [ ] **Pause:** [Specific items — keywords, ads, audiences]
- [ ] **Scale:** [Specific items — increase budget/bids]
- [ ] **Add negatives:** [Specific keywords from search terms]
- [ ] **Reallocate:** [Specific dollar shifts between channels]

### This Month
- [ ] **Test:** [New ad angles / audiences / landing pages]
- [ ] **Restructure:** [Ad groups that need splitting or merging]
- [ ] **Optimize:** [Bid strategy changes]
- [ ] **Monitor reallocation:** Track CPA shifts on scaled channels, watch for diminishing returns

### Next Month
- [ ] **Expand:** [New campaigns / channels to test]
- [ ] **Re-evaluate:** [Run this analysis again with new data, adjust allocations based on actual results]

Save to campaign-analysis-[YYYY-MM-DD].md in the current working directory (or user-specified path).

Cost

ComponentCost
Data analysisFree (LLM reasoning)
Statistical calculationsFree
TotalFree

Tools Required

  • No external tools needed — pure reasoning skill
  • User provides campaign data as CSV, paste, or screenshot

Trigger Phrases

  • "Analyze my ad campaign performance"
  • "Which ads should I pause?"
  • "Where am I wasting ad budget?"
  • "Is my Google Ads campaign working?"
  • "Optimize my Meta Ads spend"
  • "How should I allocate my ad budget?"
  • "Should I spend more on Google or Meta?"
  • "Reallocate my ad spend"
  • "Where am I getting the best ROAS?"
  • "Optimize my multi-channel ad budget"
Skill path
skills/ad-campaign-analyzer/SKILL.md
Commit SHA
9933dcad5be5
Repository license
MIT
Data collected