Skip to main content

How to create a banner message

Create banner messages and engage your customers in an unobtrusive and effective way.

Written by Beth-Ann Sher

Use this article to create, configure, and launch a banner message. You'll learn how to compose the banner content, choose a dismissal option, add a call-to-action, target an audience, set a goal, schedule delivery, and preview before going live. Banners are available on the Essential, Advanced, and Expert plans.


Create a banner

First, go to Outbound from the main menu and click + New message in the top right corner.

Screenshot of the Outbound page in Intercom showing the + New message button in the top right corner.

Then, choose Banner as your content type.

Screenshot of the content type selector in the Intercom message editor with the Banner option highlighted.

You can also choose to start with a pre-made template by picking this content type in the left sidebar.

Screenshot of the template picker in the Intercom message editor, showing the Banner content type selected in the left sidebar.

This walkthrough starts from a blank banner.

Note: Banners display in the web Messenger by default. To display banners on native mobile apps, kiosks, or other non-web surfaces where the Messenger isn't present, use the Contacts Banners API (available under Intercom-Version: Preview).

First, give your banner a title.

Screenshot of the banner editor showing the Title field at the top of the compose step.

Then compose the content for your banner. You can use bold, italics, links and emoji 😉

Screenshot of the banner message editor showing the text compose area with bold, italic, link, and emoji formatting options.

To insert emojis, you can:

  • On macOS - right click anywhere in the input field and select Emojis & Symbols.

  • On Windows - press keys Windows + .

Smart links are deep links to specific Intercom content (such as articles or product tours). They can only be inserted by highlighting text in the banner editor and using the link inserter to select the target content. The target content must be set to live — paused or unpublished content won't be available to link to.

Note:

  • Smart links in Banners will not be available on mobile.

  • It’s a good idea to keep your message succinct. For longer messages, try sending a Chat or Post message.

  • Banners do not support line breaks. The Return key does not create a new line within the banner text editor — this is a known limitation. Formatting is limited to bold, italics, links, and emoji. If you need multi-line content, consider using a Chat or Post message instead.

Where possible, you should personalize your banner message with data attributes like customer name, or company information:

Animated screenshot showing how to insert a data attribute (such as customer name) into a banner message using the attribute picker.

Next, choose who the banner should come from and if you’d like to include their avatar.

Screenshot of the sender section in the banner editor, showing options to select the sender and toggle their avatar on or off.

Should the banner be dismissible?

Next, decide if you'd like to show a dismiss button on your banner:

Screenshot of the dismissal setting in the banner editor, showing the toggle to show or hide the dismiss button.

A dismiss button lets your customers hide the message as soon as they've read it:

Screenshot of a live banner displayed on a webpage with a dismiss (×) button visible on the right side.

This is perfect for friendly reminders, promotions, or other non-urgent messaging.

If you choose to hide the dismiss button, the banner will persist for your customers until they no longer match the audience rules, or they have completed the action configured in the Choose an action section.

Important:

  • If you hide the dismiss option on an existing banner, anyone who has dismissed it will see it again.

  • If a customer matches the audience for multiple banners and the first one is non-dismissible, then they won't receive any subsequent banners. — To send other banners first, temporarily pause the non-dismissible banner, then set it live again and it will send after other live banners.

  • Banners in a series will only display once regardless of whether they have a dismiss button or not, then the user will continue down their path in the Series.

Persistent (non-dismissible) banners are perfect for more urgent/important communications with your customers. For example:

  • Show a banner until a user has paid an unpaid invoice.

  • Remind a user that they’re working with a test workspace/data.

  • Show a banner related to platform maintenance for as long as the issue persists.

Choose a call-to-action

Now it’s time to choose the action best suited to your goal for the message.

Screenshot of the action selector in the banner editor showing the available options: None, Open a URL, Open a URL via a button, Ask for reactions, Collect visitor emails, and Launch a Product Tour.

If you’re sending a message to simply notify or alert your customers, and there’s no need for them to take any action, leave this as ‘None’. Otherwise, the banner can:

Depending on the action you choose, there are different options to configure.

Open a URL

This action adds a call-to-action (CTA) link at the end of your banner message. You can define:

  • The link text.

  • The URL to open.

  • To open the link in a new tab, or not.

  • To dismiss the banner once the link has been clicked, or not.

Screenshot of the Open a URL action settings in the banner editor, showing fields for link text, URL, new tab toggle, and dismiss-on-click toggle.

Include user or company attributes for a dynamic URL. Just click the {...} icon when hovering over the URL field:

Animated screenshot showing how to add a dynamic URL to a banner by clicking the attribute picker icon ({...}) in the URL field.

Open a URL via a button

This action adds a call-to-action (CTA) button at the end of your banner message. You can define:

  • The link text.

  • The URL to open.

  • To open the link in a new tab, or not.

  • To dismiss the banner once the link has been clicked, or not.

Screenshot of the Open a URL via a button action settings in the banner editor, showing fields for button text, URL, new tab toggle, and dismiss-on-click toggle.

You can also select a color for your button:

Screenshot of the button color picker in the banner editor, showing a custom color being applied to the CTA button.

Ask for reactions

This action lets you collect quick feedback from customers in the form of emoji. Just choose which emoji they’ll have to choose from and whether or not to dismiss the banner after they’ve made a selection.

Screenshot of the Ask for reactions action settings in the banner editor, showing emoji selection options and the dismiss-on-reaction toggle.

Note: A workflow cannot be initiated solely by an outbound banner reaction. Instead, a reaction can be used to define an audience in a workflow's trigger or as a condition within a branch.

Collect visitor emails

This action will add a field at the end of your message, to easily collect email addresses from visitors to your site.

Screenshot of the Collect visitor emails action in the banner editor, showing the email input field that will appear at the end of the banner.

Note: When a banner includes an email collector, a hidden rule is automatically applied so the banner only shows to visitors or leads whose email address is unknown. If a customer's email address is already known to Intercom, the banner won't be displayed to them.

Launch a Product Tour

This action lets your users jump straight into the Product Tour of your choice, opening in the same tab or a new one.

Screenshot of the Launch a Product Tour action settings in the banner editor, showing the Product Tour selector and tab options.

Note: You can only choose Product tours with a shareable URL enabled.


Style your banner

In the Style section of the banner editor, choose a background color for your banner and whether it should appear at the top or bottom of your page. You can also choose between two layout styles: inline or floating.

Screenshot of the Style section in the banner editor, showing the color picker, position selector (top or bottom), and layout selector (inline or floating).

The two layout options for banner placement are described below.

Inline

Animated screenshot showing an inline banner displayed full-width at the top of a webpage, with page content scrolling behind it.

An inline banner is full-width, and sits between your page content and the top of the window. As you scroll, the page content moves behind the banner.

Floating

Animated screenshot showing a floating banner displayed centered above page content, staying fixed as the page scrolls.

A floating banner is centered on your page, and sits above the content, covering whatever is behind it. It does not move as you scroll.

Text Color

When you choose a background color for your banner, the text color is automatically adjusted for contrast and readability:

Animated screenshot showing the banner text color automatically switching between light and dark as the background color changes.

Note: It's not possible to create banners through custom HTML or CSS. If your banner is overlaying fixed elements on your page (such as a navigation bar), see the Inline banner overlaying navbar section below for a CSS fix.

Tip: If you’d like to test different styles of your banner message, try an A/B test. Find out more in this article.


Set an audience for your banner

In the Choose your audience step, define the filters that determine which customers will see your banner. Audience rules are evaluated dynamically, so customers who stop matching the rules will no longer see the banner.

For example, if you're announcing a discount on your Pro plan, you might target all customers currently on your Free plan:

Screenshot of the audience rule builder in the banner editor, showing a rule targeting customers where Plan is Free.

Tip: When targeting a URL, it's a good idea to copy and paste it from your app or site directly, as this will catch any characters hidden in your browser's address bar, like trailing slashes.

How banner display priority works

If a customer matches the audience rules for multiple banners, they'll be shown the banner that was first set live. Once the customer dismisses that banner, they'll then be shown the next one in order of when each banner was set live.


Set a goal for your banner

Defining a goal lets Intercom measure whether your banner is driving the intended action. A goal is a condition that, when met, is counted as a conversion for that banner.

For example, if you're encouraging customers to upgrade their plan, a suitable goal is Plan is Pro. Intercom will track how many customers who saw the banner subsequently meet that condition:

To set a goal, go to the Goal step in the banner editor and define the condition you want to track. In the example below, the goal is set to Plan is Pro:

Screenshot of the goal setting step in the banner editor, showing a goal configured as Plan is Pro.

You can also test the efficacy of your banner overall with a control group test. Learn more in this article.

You can also schedule your banner to only display during a specific date range or at specific times of day. Use the Schedule step to set a start date, end date, or both. Outside the scheduled window, the banner won't be shown even to customers who match the audience rules.

Screenshot of the schedule step in the banner editor, showing start date, end date, and time-of-day options.


Preview and set your banner live

Once you've finished configuring your banner, click Save and Close. A Preview button will appear in the top right corner of the banner editor. Use this to see how the banner will look on your site before it goes live.

Screenshot of the banner editor after clicking Save and Close, showing the Preview button in the top right corner.

When you're satisfied with the preview, click Set live. The banner will immediately start showing to customers who match your audience rules. You can pause or edit the banner at any time from the Outbound page.


Display banner on non-web surfaces

By default, banners display through the web Messenger. If you're building a native mobile app, kiosk, or other embedded experience where the Messenger isn't present, the Contacts Banners API lets you fetch and display banners server-side, and record dismissals, so your customers see the right message regardless of the surface.

How it works

The API provides two endpoints:

  • GET /contacts/{id}/banners — returns the banners a contact currently matches, each with content and a view_id.

  • POST /contacts/{id}/banners/{view_id}/dismiss — records a dismissal for a banner view.

The Contacts Banners API is available under Intercom-Version: Preview. See the API reference for full endpoint details.

Key behaviors

  • Audience matching is performed server-side: This means the API evaluates contact attributes, company attributes, and other server-side rules. Banners that rely on client-side targeting rules (such as page URL or time on page) are not returned by this endpoint, because those rules can only be evaluated in a browser.

  • Impressions are recorded when you call the list endpoint: Calling GET /contacts/{id}/banners counts each returned banner as shown. Only call this endpoint at the moment you intend to display the banner — not speculatively or on every page load.

  • Dismissals are cross-surface: When a customer dismisses a banner via POST /contacts/{id}/banners/{view_id}/dismiss, that dismissal is shared with the web Messenger. If the same customer later visits your web app, they won't be shown a banner they've already dismissed on mobile — and vice versa.

When to use this API

The Contacts Banners API is designed for:

  • Native mobile apps (iOS and Android) where the Messenger SDK isn't in use.

  • Kiosk or in-store display interfaces.

  • Embedded tools or portals where the web Messenger can't be installed.

If you're displaying banners in a standard web app where the Messenger is already installed, you don't need this API — banners will display automatically for customers who match the audience rules.

How to use the Contacts Banner API

To use the Contacts Banners API:

  1. Create and configure your banner in Outbound.

  2. Set your audience using server-side attributes (contact or company data). Don't rely on page URL or time-on-page rules if you need the banner to appear via the API.

  3. Set the banner live.

  4. Call GET /contacts/{id}/banners at the point of display to retrieve matching banners for a contact.

  5. Render the banner content in your app or interface.

  6. When a customer dismisses the banner, call POST /contacts/{id}/banners/{view_id}/dismiss to record the dismissal.

Tip: For full endpoint reference and request/response schemas, see the Contacts Banners API documentation.


Inline banner overlaying navbar

If you have fixed elements on your website, it is expected that the inline banner would overlay the navbar. There is a way to resolve this by changing some HTML/CSS on your website.
​
The Inline banners add position:relative and margin-top: 48px to the body of the page (this is the height of banner).

If you have a navbar on your website that uses position:fixed or position:sticky, then your navbar will always be on the top. That means that when you set an inline banner live, it won’t be able to “push” the navbar down as it would normally do, which results in it overlaying the navbar.
​
Making the following changes to your CSS will ensure the inline banner doesn’t overlay your navbar:

  • Use position:absolute to position the navigation bar inside the body.

  • If you currently have top: 0 after position:fixed on your site, replace this with margin-top: 0

Alternatively, you could choose to use floating banners or position the banner to the bottom of the page.


Test your banner

Before launching a banner to your entire customer base, you can test its behavior in a live environment by restricting the audience to just yourself or a team member.

  1. Identify a test user: Ensure you have a user profile in your workspace that you can access (e.g., your own employee email).

  2. Set specific audience rules: In the Choose your audience section, add a rule to target only that specific user.

    • Example: Email is name@company.com

  3. Set the banner live: Because the audience is strictly limited to your email, no other customers will see this banner.

  4. Verify the behavior: Log in to your product as that test user. Confirm that the banner appears, looks correct, and that buttons or links function as expected.

  5. Update the audience: Once you are satisfied with the test, edit the banner's audience rules to target your intended customer segment (e.g., "All users" or Plan is Free) to launch it for real.


💡Tip

Need more help? Get support from our Community Forum
Find answers and get help from Intercom Support and Community Experts


Did this answer your question?