> For the complete documentation index, see [llms.txt](https://help.branch.io/llms.txt).

# Banner Settings Reference (New)

> Look up banner campaign settings, including placement rules, audience attributes, formats, dismissal, link data, statuses, and how Branch picks a banner.

> **Note**
>
> Journeys is becoming Banners. Opt-in access starts October 13, 2026. To get access, fill out the [Banners opt-in form](https://forms.gle/8naw5houv8zfi1aNA). Your existing Journeys keep running whether or not you opt in.

Look up what each banner campaign setting does, from placement rules to link data. This reference also covers campaign statuses and how Branch picks which banner a visitor sees. For the steps to build a campaign, including analytics tags, A/B tests, and scheduling, see [Create a Banner Campaign](https://help.branch.io/marketer-hub/create-banner-campaign-new.md).

## Placement rules

Placement rules decide which pages a banner can appear on. You add them under **Placement** in the **Define** step, and each rule compares the page URL with the values you enter. With no rules, the banner can appear on every page. With several rules, the page must match every one.

| Condition | The rule matches when the page URL |
| --- | --- |
| **exactly matching** | Is exactly the value |
| **not matching** | Isn't exactly the value |
| **starting with** | Begins with the value |
| **not starting with** | Doesn't begin with the value |
| **whose domain matches** | Is on the domain you enter |
| **whose domain does not match** | Isn't on that domain |
| **whose path contains** | Has the value anywhere in its path |
| **whose path does not contain** | Doesn't have the value in its path |
| **with query param key** | Has the query parameter. Then choose **whose value matches**, **whose value starts with**, or **whose value matches anything**. |
| **without query param key** | Doesn't have the query parameter |

You can enter several values in one rule. Press Enter after each one.

## Devices

Mobile campaigns need at least one device type under **Device & Operating System** in the **Audience** step. The options are **iOS Phone**, **iOS Tablet**, **Android Phone**, and **Android Tablet**. Desktop campaigns don't have this setting.

## User attributes

User attributes, also in the **Audience** step, narrow who sees the banner. With no attributes, the banner can show to every visitor who matches the device and placement rules. With several, a visitor must match every one.

| Attribute | What you set | Example |
| --- | --- | --- |
| **Has completed event** | An event and a count | Visitors who completed `PURCHASE` two or more times |
| **Browser** | **includes** or **excludes**, and the browsers | Visitors on any browser except one your site doesn't support |
| **Came directly from a url** | The URL that referred the visitor, with the same conditions as placement rules | Visitors from search, using **whose domain matches** and the value `google.com` |
| **Has visited web** | A count of days or visits | Visitors who visited on four or more days in the last 30 days |
| **Has visited the app** | A count | Visitors who opened the app at least twice and are browsing your website |
| **Has clicked on email** | A count | Visitors who have clicked a Branch Link in an email at least once |
| **Has clicked on ad** | A count | Visitors who have clicked a Branch Link in an ad at least once |
| **Has the app installed** | **true** or **false** | Visitors who have the app, for an "Open the app" banner |
| **Is viewing a page with metadata key** | A metadata key, a condition such as **whose value matches**, and values | Pages that have `shoes` as their `category` value |
| **Has interacted with banner** | A banner campaign, a number of days, and the interaction (**Dismissal**) | Visitors who dismissed another campaign in the last seven days |
| **Is located** | **includes** or **excludes**, and countries, regions, or cities | Visitors in Canada and the United States |

**Has visited web** can count days or visits. Counting days looks back over the **in last** period (30 days by default) and counts each day with at least one visit. Counting visits totals every visit and has no **in last** period.

For **Is viewing a page with metadata key**, your developer provides the page metadata through Branch meta tags or the Branch Web SDK. Keys and values must be strings. See [Set page metadata for targeting](https://help.branch.io/developer-hub/banners-developer-guide-new.md#set-page-metadata-for-targeting).

### Count conditions

Attributes that take a count, such as **Has visited the app**, use these conditions:

| Condition | Meaning |
| --- | --- |
| **more than or equal to** | At least the number you enter |
| **less than or equal to** | At most the number you enter |
| **exactly** | Exactly the number you enter |
| **between (inclusive)** | From the **Min** to the **Max** you enter, including both |
| **within** | Within the number of days you enter |

## Formats and templates

Mobile and desktop campaigns offer different formats, and each format has its own Branch templates. You choose them under **Format** and **Options** in the **Creative** step.

| Device | Format | Branch templates |
| --- | --- | --- |
| Mobile | Standard | **Default**, **Minimal**, and **Enhanced** |
| Mobile | Partial Page | **Top** and **Bottom** |
| Mobile | Full Page | **Overlay** and **Fill** |
| Mobile | Center | **Web Link**, **App Only**, **Image**, and **App Rating** |
| Mobile | Button | **Split Pill**, **Round**, and **Pill** |
| Desktop | Center | **Desktop Overlay Modal** |
| Desktop | Corner | **Desktop Corner Card** and **Desktop Corner Card Offset** |
| Desktop | Sidebar | **Desktop Sidebar Half** and **Desktop Sidebar Full** |

## Dismissal

The dismissal settings in the **Creative** step control what happens when a visitor dismisses a banner. **Dismissal Period** sets how long the banner stays hidden afterward:

- **One Hour**
- **One Day (24 Hours)**
- **One Week (7 Days)**
- **Forever**, so the banner never shows to that visitor again
- **Custom**, a number of hours or days that you set

**Dismissal Behavior** sets what dismissing does and which banners it hides:

- **Close banner** closes the banner. **Redirect to a new webpage** closes it and sends the visitor to the **Web URL** you enter.
- **Dismiss this banner** hides only this campaign. **Dismiss all banners** hides every banner campaign for the dismissal period.

## Link data

Link data sets where a banner's call to action (CTA) sends visitors and what data your app receives when it opens. Add it under **Link Data Configuration** in the **Creative** step. Without link data, Branch uses your app-level link settings.

| Label | Key | What it does |
| --- | --- | --- |
| **Default Deep Link Path** | `$deeplink_path` | The default in-app path for every platform |
| **iOS Deep Link Path** | `$ios_deeplink_path` | The in-app path on iOS |
| **Android Deep Link Path** | `$android_deeplink_path` | The in-app path on Android |
| **iOS Fallback URL** | `$ios_url` | Where to send iOS visitors who don't have the app |
| **Android Fallback URL** | `$android_url` | Where to send Android visitors who don't have the app |
| **Default Fallback URL** | `$fallback_url` | Where to send any visitor who doesn't have the app |
| **CTA Destination Override** | `$journeys_cta` | Sends every visitor to this URL, with or without the app |
| **Canonical URL** | `$canonical_url` | The web URL of the content |

You can also add your own keys, such as a coupon code for your app to read.

> **Caution**
>
> The `$journeys_cta` key overrides deep link paths, fallback URLs, and every other routing setting. Clicks go straight to your URL instead of through a Branch Link, so Branch can't count them or attribute installs, opens, or other events to the banner.

## Open the app automatically

**Auto-Open the app**, in the **Creative** step, opens your app without the visitor selecting anything. It applies only to visitors Branch believes have the app installed, and it doesn't work in every browser.

## Campaign statuses

A campaign's status decides whether it can show to visitors and which actions its menu offers in the **Campaign Manager**:

| Status | Meaning | Actions |
| --- | --- | --- |
| **Draft** | Saved but not published | **Analysis**, **Duplicate**, **Edit**, and **Archive** |
| **Scheduled** | Published with a future start time | **Reschedule**, **Analysis**, **Pause**, **Duplicate**, **Edit**, and **Archive** |
| **Active** | Live for visitors who match it | **Reschedule**, **Analysis**, **Pause**, **Duplicate**, **Edit**, and **Archive** |
| **Paused** | Stopped until you resume it | **Analysis**, **Resume**, **Duplicate**, **Edit**, and **Archive** |
| **Archived** | No longer live | **Analysis**, **Duplicate**, and **Edit** |

Active campaigns with an A/B test also have the **A/B Analysis** action. To learn what each action does, see [Manage and Measure Banners](https://help.branch.io/marketer-hub/manage-and-measure-banners-new.md).

## How Branch picks a banner

Each time a page loads, Branch finds the active campaigns whose placement and audience rules match the page and the visitor. It skips campaigns that are outside their scheduled days or hours. Priority, dismissals, and app detection then decide which banner the visitor sees and what it says.

- When a visitor matches more than one campaign, Branch shows the one with the highest priority. Priority **#1** is the highest. See [Set priority](https://help.branch.io/marketer-hub/manage-and-measure-banners-new.md#set-priority).
- A dismissed banner stays hidden for its dismissal period. If the campaign uses **Dismiss all banners**, the visitor sees no banners until that period ends.
- Branch can't know for certain whether a visitor has your app, because iOS and Android don't share that information. Some visitors can see the wrong CTA text or fall into the wrong **Has the app installed** group. Right after an install, a visitor can keep seeing **Text (no app)** until Branch registers the install.

## Plan for Safari and search traffic

Two things outside Branch can affect how your banner looks and performs:

- If your main domain uses Universal Links, Safari can show Apple's Smart App Banner along with yours, and visitors might not know which one to select. To avoid this, we recommend a Button banner, such as the **Pill** template.
- Google can rank a page lower when a full-screen takeover, such as a Full Page banner, covers it for visitors who arrive from search. Keep search visitors out of full-screen campaigns, or show them a smaller banner in a higher-priority campaign. Use **Came directly from a url** to target them.
