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

# Testing Guide

> How to set up an A/B test in Meta comparing Apex Custom Attribution against your BAU campaign.

## General Guidelines

For an upcoming Apex test, we've seen the most success when customers run some variation of this setup:

* Create an A/B test in Meta Experiments with two separate campaigns:
  * **Apex campaign:** optimize using Custom Attribution.
  * **BAU campaign:** continue optimizing using Meta's native attribution.
    * Note: I'd recommend a fresh duplicate of your BAU campaign to compare apples to apples.
* Keep the campaigns as identical as possible (audience, budget, creative, etc.). As long as the key variable you're testing is the attribution setting, you're set up for success.
* Meta recommends running the test for at least two weeks to allow for the algorithm to reconfigure itself. Because your Meta account has never optimized to this attribution model before, we typically see slower performance at the start as a result.
* Use Northbeam as the source of truth, with GA as a secondary reference, and monitor CPM, CPC, and conversion rate for tradeoffs.
  * Apex campaigns will typically see increased CPM, CPC's, etc. with increased CVR to make up the difference in media cost.
    * This is a watchout for you on GA4 as well, traffic will likely dip for the Apex campaign but CVR should see an increase.

## Step 1: Build campaign for testing

Build out the two ad sets outlined below: Navigate to Ads Manager table

![Copy the reference ad set into two new campaigns: Meta PBA test – BAU and Meta PBA test – TEST](https://mintlify.s3.us-west-1.amazonaws.com/northbeam/images/apex-testing-guide/campaign-structure.png)

1. **Control** - Create a new Sales objective campaign and, within the new campaign, create a duplicate L2 (ad set) from the reference L2 (ad set). Name this "Meta PBA test – BAU \{*campaign name*}".
2. **Test** - Repeat step 1 and name this "Meta PBA test – TEST \{*campaign name*}"
3. Campaign and ad set need to satisfy the following eligibility criteria (for both Test and Control)
   1. Select **Sales** as your campaign objective, then click Continue.
   2. At the campaign level, select **Campaign budget** as your budget strategy, and **Highest volume or Highest value** as your Campaign bid strategy.
   3. Create and edit an ad set to configure these conversion settings:
   4. Conversion location: Select **Website** or **Website + App.**
   5. Performance goal: Select **Maximize number of conversions** or **Maximize value of conversions**
   6. Dataset: Select an eligible dataset
   7. Conversion event: Select **Purchase**
   8. Attribution model:
      1. Select **Custom** for Test
      2. Select **Standard** for BAU
   9. Select the custom attribution source:
      1. If using Web only, custom attribution source will be auto-populated.
      2. If using both Web and App datasets, select the custom attribution source for each.
4. Save and stop for QA

**Reminder:** Please make sure creatives and targeting match for both test and control.

| **Website and App** Conversion Settings | |
| :- | :- |
| Select **Website and app** conversion location | ![Conversion location set to Website and app](https://mintcdn.com/northbeam/1ktIZtwcH-yXwKOz/images/apex-testing-guide/website-and-app-conversion-location.png?fit=max\&auto=format\&n=1ktIZtwcH-yXwKOz\&q=85\&s=b80c8491a9d68ff5d9ed518ea2b85c70) |
| Select either **Maximize number of conversions** or **Maximize value of conversions** as a performance goal | ![Performance goal options](https://mintcdn.com/northbeam/1ktIZtwcH-yXwKOz/images/apex-testing-guide/performance-goal.png?fit=max\&auto=format\&n=1ktIZtwcH-yXwKOz\&q=85\&s=b73a918a57f26b5c03c66b9c4779c963) |
| Select a **Conversion event** | ![Conversion event](https://mintcdn.com/northbeam/1ktIZtwcH-yXwKOz/images/apex-testing-guide/conversion-event.png?fit=max\&auto=format\&n=1ktIZtwcH-yXwKOz\&q=85\&s=5dbd68d5209e37210280913d8004e19e) |
| Select **Custom attribution** as your Attribution model | ![Attribution model set to Custom](https://mintcdn.com/northbeam/1ktIZtwcH-yXwKOz/images/apex-testing-guide/attribution-model-custom.png?fit=max\&auto=format\&n=1ktIZtwcH-yXwKOz\&q=85\&s=bcc9181c9e8ed4fde31d76f57c7678d3) |
| Select a **Custom attribution source** *Note: If your Web and App datasets are different, select both custom attribution sources* | ![Custom attribution source with web and app datasets](https://mintcdn.com/northbeam/1ktIZtwcH-yXwKOz/images/apex-testing-guide/custom-attribution-source-web-and-app.png?fit=max\&auto=format\&n=1ktIZtwcH-yXwKOz\&q=85\&s=ff9ecf4272af21451b763887b6b02b6c) |

| **Website** Conversion Settings | |
| :- | :- |
| Select **Website** conversion location | ![Conversion location set to Website](https://mintcdn.com/northbeam/1ktIZtwcH-yXwKOz/images/apex-testing-guide/website-conversion-location.png?fit=max\&auto=format\&n=1ktIZtwcH-yXwKOz\&q=85\&s=d38e91aa5406cfcf68da22c696197322) |
| Select either **Maximize number of conversions** or **Maximize value of conversions** as a performance goal | ![Performance goal options](https://mintcdn.com/northbeam/1ktIZtwcH-yXwKOz/images/apex-testing-guide/performance-goal.png?fit=max\&auto=format\&n=1ktIZtwcH-yXwKOz\&q=85\&s=b73a918a57f26b5c03c66b9c4779c963) |
| Select an eligible dataset with the **green Custom attribution** label | ![Dataset list with the green Custom attribution label](https://mintcdn.com/northbeam/1ktIZtwcH-yXwKOz/images/apex-testing-guide/eligible-dataset.png?fit=max\&auto=format\&n=1ktIZtwcH-yXwKOz\&q=85\&s=b0ec8e4c0125b58961e27b621fb9779d) |
| Select the **Purchase** conversion event Currently, this is the only event supported | ![Purchase conversion event](https://mintcdn.com/northbeam/1ktIZtwcH-yXwKOz/images/apex-testing-guide/purchase-event.png?fit=max\&auto=format\&n=1ktIZtwcH-yXwKOz\&q=85\&s=ca97b9f9a9b1eced1820f41c5bfbbbcc) |
| Select **Custom attribution** as your Attribution model | ![Attribution model set to Custom](https://mintcdn.com/northbeam/1ktIZtwcH-yXwKOz/images/apex-testing-guide/attribution-model-custom.png?fit=max\&auto=format\&n=1ktIZtwcH-yXwKOz\&q=85\&s=bcc9181c9e8ed4fde31d76f57c7678d3) |
| Select a **Custom attribution source** | ![Custom attribution source](https://mintcdn.com/northbeam/1ktIZtwcH-yXwKOz/images/apex-testing-guide/custom-attribution-source.png?fit=max\&auto=format\&n=1ktIZtwcH-yXwKOz\&q=85\&s=8fee6abc7a332c4b9aa02a9da44421d6) |

| **App** Conversion card settings | |
| :- | :- |
| Select **App** conversion location | ![Conversion location set to App](https://mintcdn.com/northbeam/1ktIZtwcH-yXwKOz/images/apex-testing-guide/app-conversion-location.png?fit=max\&auto=format\&n=1ktIZtwcH-yXwKOz\&q=85\&s=71193a149516ed9696e0ebeb4a79d07d) |
| Select **Maximize number of app events** as a performance goal | ![Performance goal set to Maximize number of app events](https://mintcdn.com/northbeam/1ktIZtwcH-yXwKOz/images/apex-testing-guide/app-performance-goal.png?fit=max\&auto=format\&n=1ktIZtwcH-yXwKOz\&q=85\&s=aebc47ecad42ba45e698b5e0f9f894b9) |
| Select a **Mobile app store** | ![Mobile app store](https://mintlify.s3.us-west-1.amazonaws.com/northbeam/images/apex-testing-guide/app-store.png) |
| Select an **App** | ![App selection](https://mintlify.s3.us-west-1.amazonaws.com/northbeam/images/apex-testing-guide/app-select.png) |
| Select the **Purchase** app event Currently, this is the only event supported | ![Purchase app event](https://mintlify.s3.us-west-1.amazonaws.com/northbeam/images/apex-testing-guide/app-event.png) |
| Select **Custom attribution** as your Attribution model | ![Attribution model set to Custom](https://mintcdn.com/northbeam/1ktIZtwcH-yXwKOz/images/apex-testing-guide/attribution-model-custom.png?fit=max\&auto=format\&n=1ktIZtwcH-yXwKOz\&q=85\&s=bcc9181c9e8ed4fde31d76f57c7678d3) |
| Select a **Custom attribution source** | ![Custom attribution source](https://mintcdn.com/northbeam/1ktIZtwcH-yXwKOz/images/apex-testing-guide/custom-attribution-source.png?fit=max\&auto=format\&n=1ktIZtwcH-yXwKOz\&q=85\&s=8fee6abc7a332c4b9aa02a9da44421d6) |

## Step 2: A/B Test Setup

Set up a split test using the Experiments tool.

* Advertiser is responsible for setting up the A/B test in Experiments by clicking 'Create an A/B test'

  ![Create an A/B test in Meta Experiments](https://mintcdn.com/northbeam/1ktIZtwcH-yXwKOz/images/apex-testing-guide/create-ab-test.png?fit=max\&auto=format\&n=1ktIZtwcH-yXwKOz\&q=85\&s=b60c29727f4f5b0a4d35deb46aeda654)

* Add campaigns to test and control cells:

  ![Add campaigns to test and control cells](https://mintcdn.com/northbeam/1ktIZtwcH-yXwKOz/images/apex-testing-guide/ab-test-campaigns.png?fit=max\&auto=format\&n=1ktIZtwcH-yXwKOz\&q=85\&s=d411e1c2968fa2cba2a9a0ad028fb1a4)

  * Campaign A (Test): Name: "Meta PBA test – TEST \{campaign name}"
  * Campaign B (BAU): Name: "Meta PBA test – BAU \{campaign name}"
  * For more complex designs (e.g., 3-cell), add additional cells and campaigns as needed

* Set the schedule
  * Start date: **one day BEFORE** the campaign start date
  * End date: **one day AFTER** the campaign end date
  * DISABLE 'End test early if a winner is found' to preserve statistical validity

    ![End test early if a winner is found toggle, turned off](https://mintcdn.com/northbeam/1ktIZtwcH-yXwKOz/images/apex-testing-guide/end-test-early.png?fit=max\&auto=format\&n=1ktIZtwcH-yXwKOz\&q=85\&s=07f9ae4c0d6f3e91d92bd378841bd0d9)

* Test Name
  * Name your study clearly (e.g., Custom Attribution vs BAU - Q3 2026)

* Determining the winner:
  * Select 'Cost per purchase' as the key metric for winner declaration
  * Advertisers may add metrics for additional business-specific KPIs
  * Advertisers should use their own Source of Truth to determine campaign winner

## Step 3: Launch

### Things to monitor during the test flight

Continue to monitor the following key metrics and reach out to Meta with any questions:

* Ensure CAPI integration & campaign quality for changes in Events Manager/Ads manager
* Ensure your match key coverage remains consistent before and during the test

> [!WARNING]
>
> **Reminder: No manual changes are to be made to test/control campaigns during the duration of the test. If any changes are made please alert Meta immediately.**

## Step 4: View Results

Custom Attribution campaigns are tagged with a "Custom" label in Ads Manager. Rather than displaying Meta's default attributed conversions, the **Results** column reflects the advertiser's externally attributed data.
