Skip to main content

Documentation Index

Fetch the complete documentation index at: https://adadvisor.ai/docs/llms.txt

Use this file to discover all available pages before exploring further.

The AdAdvisor launch skill turns “launch a campaign for X” into a properly-structured PAUSED Meta (Facebook) ad campaign ready for your final sign-off. A Meta campaign launch through an AI assistant is a long sequence of micro-decisions: which objective, what budget shape, how many ad sets, which audience, which creative, what conversion_domain, what optimization event, what bid strategy. Miss any one of them and Meta either rejects the call or accepts it and silently underperforms.

When should I use the launch skill?

Triggers on phrases like:
  • “Launch a campaign”
  • “Create a campaign”
  • “Set up an ad”
  • “Build me a campaign”
  • “Start running ads”
  • “Spin up”
  • “I want to advertise X”
  • “Create an ad set”
Use it for genuinely new campaigns. For duplicating an existing winner with tweaks, the skill routes to duplicate_* MCP tools instead of create_*.

How does the AdAdvisor launch decision tree work?

1

Objective

Maps your stated goal to a Meta objective: OUTCOME_SALES (ecom, subscription), OUTCOME_LEADS (form-fill), OUTCOME_APP_PROMOTION, OUTCOME_TRAFFIC, OUTCOME_AWARENESS, OUTCOME_ENGAGEMENT. Defaults to OUTCOME_SALES for DTC ecom.
2

Structure: ASC vs Advantage+ vs Manual

Advantage+ Sales Campaigns (ASC) for ecom with proven creative and 30+ purchases per week (averages 22% ROAS lift over manual per Tinuiti 2024 data). Manual for brand-new accounts, lead-gen, low pixel volume, or creative-level kill control. Both with exclusions if you need testing alongside scaling.
3

CBO vs ABO

ABO for testing (Lebesgue 2024: ABO delivers 94% of target ROAS on prospecting vs CBO’s 81%). CBO for scaling proven winners and for retargeting.
4

Budget threshold

Computes the minimum daily ad-set budget to exit Meta’s learning phase: (target_CPA × 50) / 7. At 30targetCPA,thatis30 target CPA, that is 214 a day per ad set. Below this, the ad set sits in permanent learning. The skill flags the math when your stated budget falls short.
5

Targeting

Defaults to broad with Advantage+ Audience on (post-iOS 14 best practice). Lookalikes when you have a high-value seed. Interest stacking is dead since Meta consolidated detailed targeting in June 2025. The skill will not recommend it.
6

Creative

Sources from your existing library via adadvisor:search_ad_images and adadvisor:search_ad_videos. For posts with organic engagement, uses format: 'existing_post' to preserve social proof. For multi-variant copy testing, sets is_dynamic_creative: true on the ad set.
7

Activation

All create_* tools default to PAUSED. The skill waits for your confirmation before resuming, and activates leaf-up: ad, then ad set, then campaign. Activation does not cascade. Each level needs an explicit call.

What is the MCP call sequence for a Meta campaign launch?

For a standard prospecting launch (manual, ABO), the skill chains the MCP tools like this:
adadvisor:list_ad_accounts              → pick account
Read adadvisor://account/{id}/context   → break-even, AOV, target CPL, pixel choice
adadvisor:create_campaign(...)          → OUTCOME_SALES, spend_cap, naming
adadvisor:search_targeting(...)         → interest IDs if any
adadvisor:estimate_audience_size(...)   → reach sanity check
adadvisor:create_adset(...)             → broad geo, Advantage+ Audience, optimization
adadvisor:search_ad_images(...)         → image hashes
adadvisor:create_creative(...)          → image_link, video, or existing_post
adadvisor:create_ad(...)                → with conversion_domain
adadvisor:change_entity_status(...)     → activate, leaf-up, after confirmation
The skill batches create_* calls when launching multiple entities, so you do not pay round-trip latency 8 times for one launch.

Which Meta API fields does the launch skill always get right?

Meta rejects with subcode 2490408 if missing. Must be a registrable second-level domain (example.com, not shop.example.com, not https://shop.example.com/path). The skill strips subdomains and protocol automatically.
dsa_beneficiary and dsa_payor are required for any EU-targeted ad set. Meta rejects with subcodes 3858079 and 3858081. The skill auto-populates from your ad account default. If missing, it asks you for the values explicitly before launching.
Defaulting to “first pixel” silently breaks attribution. The skill cross-references each pixel’s hosts against your storefront_url and passes promoted_object: {pixel_id, custom_event_type} explicitly.
COST_CAP requires bid_amount. LOWEST_COST_WITH_MIN_ROAS requires roas_average_floor AND optimization_goal: 'VALUE'. The MCP validator rejects mismatches. The skill avoids them in the first place.
is_dynamic_creative: true ad sets accept exactly ONE ad. The skill enforces this. Multi-variant copy goes in the one creative’s messages, headlines, and descriptions arrays (max 5 each), not in separate ads.

What anti-patterns does the launch skill prevent?

An agent-created campaign without a lifetime ceiling is a safety risk. The skill always includes spend_cap on create_campaign when an agent is the one launching.
Resuming a campaign does not cascade to ad sets and ads. The skill activates each level explicitly and confirms state_after in the response.
Dead since Meta’s June 2025 consolidation. The skill defaults to broad with Advantage+ Audience on. Creative does the targeting.
Wrong objective for sales. The skill routes traffic objectives to LANDING_PAGE_VIEWS optimization when pixel volume is too low for OUTCOME_SALES, but does not pretend traffic optimization will find buyers.

How do I install the launch skill?

Claude Code

Ships with the full plugin install.

Claude.ai & Desktop

Download adadvisor-launch.zip and upload via Settings, Capabilities, Skills.

Frequently asked questions

Install the adadvisor-launch skill (and the foundation skill, which it depends on). Say “launch a new prospecting campaign for my product with $50 daily budget” to Claude. The skill walks the decision tree (objective, structure, budget, audience, creative), generates the proper create_campaign, create_adset, create_creative, and create_ad calls, then waits for your confirmation before activating.
(target_CPA × 50) / 7. At a 30targetCPA,thatisroughly30 target CPA, that is roughly 214 a day per ad set. Meta needs about 50 optimization events in 7 days to exit learning. Below this threshold the ad set sits in permanent learning, never delivering its target performance. The launch skill flags this math before you create.
ASC (Advantage+ Sales Campaign) is the default for ecom with proven creative and 30+ purchases per week. It averages 22% ROAS lift over manual per Tinuiti 2024 data. Manual stays better for brand-new accounts (low pixel volume), lead-gen, and when you need creative-level kill control. Many mature accounts run both with audience exclusions to prevent cannibalization.
conversion_domain is the registrable second-level domain where the conversion happens (example.com, not shop.example.com and not the full URL). Meta requires it on pixel-tracked ads to enforce Aggregated Event Measurement, and rejects creation with subcode 2490408 if missing. The launch skill strips subdomains and protocol automatically.
No. All create_* tools default to PAUSED, and the skill waits for your explicit confirmation before activating. When you confirm, it activates leaf-up (ad, ad set, campaign) since activation does not cascade in Meta.
Yes. The skill detects EU geo targeting and asks for the dsa_beneficiary and dsa_payor strings if your ad account does not have defaults set. Meta rejects EU-targeted ad sets without DSA fields (subcodes 3858079 and 3858081).

Targeting

Audience strategy applied during step 5 of the launch tree.

Creative

Creative sourcing and testing frameworks for step 6.

Playbooks

Vertical-specific launch playbooks (BFCM, new product, lead-gen).
Last modified on May 13, 2026