---
name: configure-advantage-plus-audience
description: >-
  Configures how Meta's Advantage+ audience finds buyers in a Sales, Leads, or other Advantage+ campaign:
  run fully broad, attach audience suggestions (interests, lookalikes, customer lists) as a soft bias on
  early delivery, or switch a field to an original (hard) audience when a real constraint demands it.
  Advantage+ audience is automatic targeting; suggestions nudge early spend but never cap who Meta can
  reach, while original audiences are a hard fence it cannot cross. Covers when broad beats suggested, when
  a regulated vertical or brand-safety concern forces a genuine constraint, and how to test suggestions
  against broad on CPA and volume once both clear the learning bar. Reach for it whenever an Advantage+
  campaign's targeting needs a decision - at launch, during a broad-vs-suggested test, or when delivery
  looks off-target. It ends at an audience configuration - it does not build the underlying hard custom
  audience lists (build-custom-audiences, audiences domain).
---
# Configure Advantage+ Audience

## Purpose
Advantage+ audience is Meta's default automatic targeting mode: it searches broadly for whoever is likely
to convert, and any interests, lookalikes, or customer lists attached are a **hint** that biases early
delivery, not a boundary. This is the opposite of an original (hard) audience, which is a real include/
exclude fence Meta cannot cross. Getting this distinction backwards, treating a suggestion as a cap, or
leaving a real compliance constraint as a soft hint, is the most common Advantage+ targeting mistake this
skill exists to prevent.

## When to run
- Launching any Advantage+ (Sales/Leads/etc.) campaign and targeting must be decided.
- Delivery looks off-target (a clear language/geography/segment mismatch with the product) and it's unclear
  whether a missing hard constraint is the cause.
- Considering whether to add interest, lookalike, or customer-list suggestions to bias early delivery.
- Comparing broad vs suggested-audience performance to decide which serves the account better.

## When NOT to run
- Building the actual custom audience, lookalike, or customer list to use as a suggestion or constraint →
  `build-custom-audiences`.
- Setting the existing-customer budget cap specifically → `set-existing-customer-budget-cap`.
- Choosing the campaign objective itself → `select-campaign-objective`.
- Deciding placements → `enable-advantage-plus-placements`.

## Prerequisites
- An existing or in-progress Advantage+ campaign/ad set, this skill configures targeting inside it, it
  does not create the campaign (`launch-advantage-plus-shopping` or the equivalent Leads build).
- Any custom audiences, lookalikes, or customer lists intended as suggestions already created
  (`mads_list_custom_audiences` to check what exists, `build-custom-audiences` to create new ones).
- A stated, specific reason if a hard constraint is being considered, regulated vertical (SAC), brand
  safety, or a narrow ICP already validated by the business. "Might as well narrow it" is not a reason.
- Baseline CPA/volume data if this is a broad-vs-suggested test rather than a first-time setup.

## Procedure
1. **Default to broad.** For a new Advantage+ ad set with no special constraint, leave audience controls
   open beyond platform minimums and any legally required SAC declarations.
2. **Declare special ad categories where applicable.** IF the vertical is Housing/Employment/Credit/
   Social-issues-and-politics/Financial, THEN set `special_ad_categories` on the campaign and validate
   targeting via `mads_policy_guardrail`, SACs restrict age/gender/geo/detailed targeting regardless of
   Advantage+ automation.
3. **Decide whether a suggestion adds value.** Suggestions earn their place when there's a known-good seed:
   a lookalike off high-value purchasers, a warm customer list, or interests matching a genuinely distinct
   product line. Search candidates via `mads_search_targeting`.
4. **Add suggestions as a hint, not a cage.** Attach the chosen audiences to the ad set's suggestion field
   via `mads_update_adset`. State explicitly, to the user and in build notes, that this biases early
   delivery only, Meta will serve outside it once it finds better performers.
5. **Reserve original (hard) audiences for a real constraint.** IF there's a documented reason, SAC
   compliance, a brand-safety exclusion, or a genuinely narrow enterprise ICP with no broader viable market, THEN switch that targeting field to a hard include/exclude. (HUMAN STEP: confirm the business reason
   before making anything a hard constraint, it's a permanent tax on auction size.)
6. **Preview the configuration.** Show the user: broad or suggested, which audiences are attached and as
   what (hint vs hard constraint), and any SAC declaration. Get explicit approval before commit
   (write-safety pattern), this is an ad-set update via `mads_update_adset`.
7. **Run a broad-vs-suggested test when undecided.** Split budget or run sequential windows: one ad set
   broad, one with suggestions attached, same creative and budget. Let both clear ~50 optimization
   events/ad set/7 days before comparing.
8. **Read results on CPA and volume together.** Pull `mads_run_insights` + `mads_get_insights`
   (or `mads_get_insights` for a quick check). A suggestion that lifts CTR but not CPA is not a winner.
9. **Commit the winner.** Update the surviving ad set's configuration and archive, not hard-delete, the
   loser via `mads_update_adset` (`status=ARCHIVED`) after user approval.

## Decision rules
- **No documented reason to narrow →** stay fully broad, Advantage+ audience, no suggestions.
- **Known-good seed exists** (proven lookalike, warm list, distinct product line) **→** add as a suggestion;
  do not promote it to a hard constraint without evidence it's needed.
- **SAC vertical** (Housing/Employment/Credit/Social-issues-and-politics/Financial) **→** hard constraint on
  age/gender/geo/detailed targeting is mandatory; validate via `mads_policy_guardrail` regardless of
  automation level.
- **Brand safety, or a genuinely narrow ICP with no viable broader market →** a hard original-audience
  constraint is justified; document why.
- **Testing broad vs suggested:** both variants need ~50 optimization events/7 days before comparing; judge
  on CPA and volume together, a suggestion wins only if it beats broad on CPA at comparable or better volume.
- **Delivery drifting somewhere clearly wrong** (language/geo mismatch with the product) → check for a
  missing hard constraint before assuming the algorithm itself is broken; geo/language is often a
  legitimate limit, not just a suggestion.
- **Done means:** the ad set's audience is explicitly broad or suggested-with-named-audiences, any hard
  constraints are backed by a documented SAC/brand-safety/ICP reason, and, if this was a test, a winner
  is chosen on CPA-plus-volume evidence.

## Common failure modes
- **Treating a suggestion like a cap.** Adding an interest and assuming Meta stays inside it defeats the
  entire point of Advantage+ audience.
- **Narrowing "just in case."** Every unjustified hard constraint shrinks the auction and raises CPA.
- **Skipping the SAC declaration** on a regulated vertical, a policy violation, not a targeting nicety.
- **Judging a suggestion test on CTR or reach** instead of CPA and volume, the wrong audience can still
  look engaging.
- **Calling a test before either variant clears the learning bar,** comparing noise instead of signal.
- **Confusing this skill with building the audience itself**, it configures how an existing audience is
  used; it does not create the customer list or lookalike (`build-custom-audiences`).

## Related skills
- Run after: `build-custom-audiences` (create the lists/lookalikes to use as suggestions or constraints).
- Related: `set-existing-customer-budget-cap` (a specific, structural use of a customer-list audience
  inside Advantage+ Sales), `launch-advantage-plus-shopping` (the campaign this typically configures),
  `enable-advantage-plus-placements` (the sibling automatic-vs-constrained decision for placements).
