> ## Documentation Index
> Fetch the complete documentation index at: https://docs.superscale.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Campaign structure

> Build clean campaign setups so creative tests produce readable results.

A good campaign structure makes the result readable. If every variable changes at once, you cannot tell why a creative won. Superscale helps you generate enough variations, but the test still needs a structure.

When Superscale creates campaigns through a connected ad platform, it follows the platform hierarchy: campaign, then ad set or ad group, then ad. You can create new entities or reuse existing ones depending on what part of the structure should stay fixed.

<Info>
  The structure below applies to any platform. The specific settings called out (ad set vs. campaign budget, objectives, the learning phase) are Meta's.
</Info>

## The simple structure

<CardGroup cols={2}>
  <Card title="Testing campaign">
    A lower-budget lane for new concepts, hooks, ICPs, formats, and offers. Its job is learning.
  </Card>

  <Card title="Winners campaign">
    A higher-budget lane for proven creatives and close iterations. Its job is scaling.
  </Card>
</CardGroup>

## Where the budget lives: ad set vs. campaign

The setting that separates your two campaigns is *where the budget sits*. Meta renamed both options, so these are the labels you'll see today:

| Setting                                      | What it means                              | Use it for                                               |
| -------------------------------------------- | ------------------------------------------ | -------------------------------------------------------- |
| **Ad set budget** (formerly ABO)             | A budget on each ad set                    | **Testing**: every concept gets a fair, controlled spend |
| **Advantage campaign budget** (formerly CBO) | One budget on the campaign, spread by Meta | **Scaling**: Meta pushes spend to the strongest ads      |

## Set the basics (Meta)

For a Meta test, get these right and then leave them alone:

* **Objective:** optimize for your real money event, usually purchase or subscription. If the account is new and lacks volume, Meta will ask you to optimize an earlier event (add-to-cart, lead) until it has enough data.
* **Targeting:** go broad. Set your market (geography) and let the creative find the audience instead of stacking interests by hand.
* **Attribution:** leave the default (7-day click, 1-day engage-through, 1-day view). More on [why, and when to care](/best-practices/media-buying).

## What to test

Use a matrix instead of a pile of ads.

| Keep fixed               | Vary                    |
| ------------------------ | ----------------------- |
| Same audience and format | Pain point or hook      |
| Same pain point          | Format or visual style  |
| Same winning structure   | Product proof or offer  |
| Same product             | ICP or customer segment |

Structure each test as **one concept per ad set, with 3–5 variations inside it.** A *concept* is the idea or angle; a *variation* is one execution of it. The concept is your bet; the variations give Meta room to find the execution that lands. ([Where concepts come from →](/best-practices/creative-strategy))

<Note>
  Do not test ten unrelated ideas and call it a strategy. Pick a learning objective first.
</Note>

## Budget the test, and protect winners

* **Give each concept \~2–3× your target CPA per day.** That buys enough conversions to judge it in days rather than weeks. (Meta treats an ad set as out of its learning phase after about 50 events in 7 days. Smaller budgets run in "limited learning," which is fine; just read thin numbers cautiously.)
* **Never edit a winner.** A significant change, like a big budget jump or new targeting, placements, objective, or creative, throws the ad set back into the learning phase and can wreck performance. If you have to change something, duplicate it and edit the copy.

The day-to-day scaling cadence (how fast to raise budget, frequency, fatigue) lives in [media buying on Meta](/best-practices/media-buying).

## Campaign setup workflow

<Steps>
  <Step title="Define the hypothesis" icon="target">
    Example: "Parents convert better when the hook names exhaustion directly."
  </Step>

  <Step title="Generate controlled variants" icon="copy">
    Ask Superscale for a batch that changes only the variable you want to test.
  </Step>

  <Step title="Launch with decision rules" icon="list-checks">
    Define what makes a winner or loser before the test starts: CPA, CTR, ROAS, hook rate, spend threshold, or another KPI.
  </Step>

  <Step title="Move winners forward" icon="trending-up">
    Scale winners, pause losers, and ask Superscale for the next generation of variants around the learning.
  </Step>
</Steps>

## Reuse matrix

Before launch, decide which layers are new and which should be reused:

| Layer                 | New when                                                                          | Reuse when                                              |
| --------------------- | --------------------------------------------------------------------------------- | ------------------------------------------------------- |
| **Campaign**          | You are starting a distinct test lane, objective, or budget container.            | You want the new ad to live in an existing campaign.    |
| **Ad set / ad group** | You are testing a new audience, targeting setup, placement, or optimization goal. | You want to keep the audience and delivery setup fixed. |
| **Creative**          | You are launching a new static/video or generated variant.                        | You want to reuse an existing platform creative.        |

<Note>
  Reusing an ad set or ad group also reuses its parent campaign because it belongs to exactly one campaign.
</Note>

## If you have no past data

Start with competitor research and customer language. Build a small testing matrix around likely pains and value propositions. Once results come in, connect that performance back into your context so the next batch is less speculative.

<CardGroup cols={2}>
  <Card title="Creative strategy" href="/best-practices/creative-strategy" icon="compass">
    The testing matrix and concept engine behind the campaign structure.
  </Card>

  <Card title="Media buying on Meta" href="/best-practices/media-buying" icon="chart-no-axes-combined">
    Budgets, the learning phase, scaling, and reading results.
  </Card>
</CardGroup>
