Build Flows 2.0 Experiences (Beta)
Design Modal and Tooltip steps with the cell-based layout builder.
Table of Contents
π§ͺ Flows 2.0 Experiences are currently in BetaΒ
This article covers the Flows 2.0 builder. If you're working with a legacy Flow (created before Flows 2.0), the builder interface is different β see Build a legacy Flow.
Flows are multi-step in-app experiences β onboarding tours, feature announcements, walkthroughs, and contextual prompts. Each step is either a Modal (flexible overlay) or a Tooltip (anchored to a specific element on the page). You build them visually in the Flows builder using a drag-and-drop cell layout system.
What's new?
The new builder makes designing Flows faster and more intuitive, and keeps adding capabilities customers have asked for. If you're used to legacy Flows, here's what you can now do:
- Flexible layouts without CSS β size and position step containers and content blocks with drag-and-drop controls.
- Delay start of a flow or step β set the time to wait before a step is displayed
- Skip a step if element isn't found β If a selector can't be found, this setting lets the Flow move on instead of erroring out
- Copy and paste blocks β duplicate content within or across steps.
-
Personalization and emoji shortcuts β type
{{to insert a user property or:to add an emoji. - Richer content actions β make text, buttons, and images trigger navigation, events, or property updates on click.
- Backgrounds with gradients and images
- Responsive steps β content grows to fit instead of clipping on narrow screens.
- Improved themes, localization, undo/redo, and AI-assisted building.
Prerequisites
- The Appcues SDK is installed on your site.
- The Appcues Chrome extension is installed (required for previewing on your live site and for Tooltip element targeting).
Create a new Flow
- Go to Experiences > Flows 2.0 and click Create a Flow.
- The creation dialog asks for three things:
- Flow name β An internal name to identify this Flow. Not visible to users.
- Preview URL (optional) β The URL of the page in your app where you want to preview the Flow. When editing in the Chrome extension, the builder loads this URL.
- Theme (optional) β Select an existing theme or create a new one. You can edit the theme later from the builder.

- Click Create.
- Choose the type of the first step in your Flow:
- Modal β For floating content. Best for announcements, onboarding steps, and any content that should command attention. Modals appear in the center of the screen by default, but can also be set to hug the sides of your page.
- Tooltip β Anchored to a specific element on your page via a CSS selector. Best for feature callouts, contextual help, and guided walkthroughs. Tooltips include an arrow pointing to the target element and automatically scroll the page to bring it into view.

You can mix Modal and Tooltip steps in the same Flow β add more steps later from the step bar at the bottom of the builder.
Where to build
Tip: The builder opens in the Chrome extension by default so you can design against your real app. This matters most for Tooltips, which anchor to real page elements. Building in context lets you catch layout and interaction issues you'd miss on a blank canvas.
You can build Flows in two places:
- Studio Builder β Build content within Appcues on a blank canvas. Good for quickly laying out the basics before you need to see the Flow in the context of your app.
- Chrome extension β Build on top of your live app. Use this when you want to confirm your content works well against your real UI, or when you need to choose CSS selectors for Tooltip steps.

Work with steps
Flow content is divided into steps that a user progresses through in sequence.
Add steps
Click the + button in the step bar at the bottom of the builder. Choose Modal or Tooltip for the new step. When you add a step, you can start from scratch or from a saved template (see Use step templates).
Reorder steps
Drag steps in the step bar to change the order.
Delete steps
Select a step in the step bar and delete it. If you delete all steps, the step type picker reappears.
Clone a step
Click the clone icon in the step settings panel to duplicate the selected step.
Step templates
Save any Modal or Tooltip step as a reusable template, then drop it into future experiences β templates keep their styling, so they look right even in a differently-themed Flow. See Use step templates to save, add, rename, and delete them.
Step settings
Select a step and open the step settings panel to configure its appearance and behavior.
For a Modal step, the panel has three tabs:
- Settings β Set the on-screen position and add or remove a close button.
- Design β Set corner radius, background, spacing (margin and padding), and backdrop options.
- Advanced β Apply custom CSS to the step.

Set the step background
On the Design tab, the background control supports three fill types. Switch between them with the segmented control:
- Color β A solid color.
- Gradient β A color gradient with adjustable stops.
- Image β An uploaded background image.
Responsive height
Steps use a minimum height. The step is at least the height you set, but grows taller when the content needs more room β so nothing gets cut off on narrow or mobile screens.
Set step animations
In Step Settings, the Animation section controls how a step enters and leaves the page. Set an Entrance and, optionally, an Exit animation, then click the play icon next to each to preview it.
- Entrance options: None, Fade in, Scale in, Spring scale, and Slide in or Drawer in from the top, bottom, left, or right.
- Exit options mirror these: None (the default), Fade out, Scale out, and Slide out or Drawer out to the top, bottom, left, or right.
Set a presentation delay
In Step Settings, set a Presentation delay (in milliseconds) β the time to wait before a step is displayed, including the first step. Use it to let the page finish loading before the step appears, or to hold a contextual step until, say, 30 seconds in. This applies to any step type.

Set a navigation action
If a Flow guides users across multiple pages, set a navigation action on the step you want them to land on. Choose Redirect to send the user to a URL automatically, or Let them navigate to wait for them to get there themselves before the step shows. See Build a Flows across pages for more details.Β

Tooltip-specific settings
Tooltip steps anchor to a specific element on your page, so they need extra configuration beyond what Modals need.
Set the target element
Tooltips anchor to a CSS selector. You can type a selector in Studio Builder, but to pick one by clicking in your app β or to confirm a selector is valid and unique β click Open in Extension. Fine-tune position using pixel or percentage values.
Refine the selector in the extension
When the extension opens, toggle Refine selection on to narrow the selector. Refinement options include:
-
Tag β Match by HTML tag (e.g.,
H1,DIV). -
ID β Match by the element's unique identifier (e.g.,
#sidebar). -
Class β Match by a CSS class (e.g.,
.card-container). -
Href β Match by a link's destination (e.g.,
/settings). - By order β Match by the element's position among siblings (e.g., 2nd of 3 matching elements).
- By text β Match by the text content inside the element.
If the CSS selector doesn't match any element on the current page, the Tooltip floats in the center of the builder with a warning. Click Adjust placement to re-select the target.

Backdrop
Tooltip steps have three backdrop modes:
- None β No backdrop. The Tooltip appears without dimming anything.
- Soft β A subtle spotlight around the target element; the rest of the page dims slightly.
- Hard β A full backdrop with a cutout spotlight around the target. Everything outside the cutout is dimmed and non-interactive.

Advance on click of element
Toggle Advance on click of element on to let users advance by clicking the target element itself β useful for guided walkthroughs where the user needs to interact with the element the Tooltip points to. When this is enabled alongside a next-step button, both work: the user can advance by clicking the target or the button.

Advance if selector can't be found
Tooltips depend on their target element being present. If Appcues can't find the selector in time, this setting lets the Flow move on instead of erroring out β a more resilient experience for end users.
- On a Tooltip step, turn on Advance if selector can't be found.
- Choose an Action:
- Next step β Advance in the direction the user is traveling (forward normally, or back if they arrived via a previous-step action).
- Go to step β Jump to a specific step you pick. This option is unavailable when the current step is the only step.
- Set Wait time before advancing β how long Appcues keeps trying to find the selector before it gives up and advances. Enter a value in milliseconds. The default is 500 ms; the builder accepts up to 30000 ms (30 seconds).
This setting requires Chrome extension version 9.31.7 or later.

Build your step content
Flows 2.0 uses the shared experience builder to lay out and fill each step β the same builder Embeds use. Rather than repeat it here:
- Arrange the layout β split cells into rows and columns, then size them. See Design step layouts.
- Add and style content β text, images, buttons, and iFrames, with click actions, personalization, borders, and copy/paste. See Design content in the experience builder.
- Reuse a step β save it as a template. See Use step templates.
Edit the close button
When a step shows a close (X) button, you can restyle it. Turn on Show close button in Step Settings, then click the edit (pen) icon next to it β or click the X on the canvas β to open its design panel. You can set the close button's color, background, hover color, corner radius, size, spacing, and position (top-left or top-right).
Style the Flow's theme
In Experience Settings, click Edit theme to open the theme editor. Configure it to match your product:
- Theme settings β Name the theme and optionally enable dark mode.
- Colors β Set foreground (text), background, and primary (buttons/accents) colors.
- Interface β Choose a font family (System Sans-serif, System Serif, System Monospaced, or System Rounded), font size (S/M/L), corner radius, and spacing (S/M/L). This sets the default font for all text blocks in the Flow.
Click Save to apply the theme.
Themes are reusable across Flows 2.0 and Embeds, so both can share a theme for a consistent look. See New themes and advanced styling.
Localize Flows 2.0
Flows 2.0 support localization so you can serve content in multiple languages. Translate content manually in the builder, upload XLIFF files for bulk translation, or use AI translation to auto-translate into your configured languages. Click the language dropdown in the builder to enable target languages and start translating.
For full setup β configuring languages, working with XLIFF files, and AI translation β see Localize experiences.
Preview and publish
Preview
Click the Preview icon in the top bar. If the Chrome extension is installed and connected, it opens a preview on your site. If not, you're prompted to enter a preview URL.
Share a link to a specific step
The builder URL includes a ?step= parameter that updates as you move between steps. Copy the URL to share a link that opens a teammate directly on the step you're viewing.
Publish
Click Target & Publish in the top bar to open the Flow's Settings page in Studio, where you configure targeting, frequency, and page rules before publishing.
After publishing, editing the Flow creates a new draft version. Your published version stays live until you explicitly publish the updated draft.
V1 β V2 event mapping
Flows 2.0 uses a different event model than legacy Flows.
| Legacy Flow event | Flows 2.0 equivalent |
|---|---|
flow_started |
appcues:v2:experience_started |
flow_completed |
appcues:v2:experience_completed |
flow_skipped |
appcues:v2:experience_dismissed |
| No equivalent | appcues:v2:experience_snoozed |
flow_error |
appcues:v2:experience_error |
step_started |
appcues:v2:step_seen |
step_completed |
appcues:v2:step_completed |
step_interacted |
appcues:v2:step_interaction |
form_submitted |
appcues:v2:step_interaction with interactionType: "Form Submitted"
|
step_error |
appcues:v2:step_error |
step_recovered |
appcues:v2:step_recovered |
Integration support for Flows 2.0
Flows 2.0 uses a new event model (appcues:v2:experience_* and appcues:v2:step_*). Not all integrations support these events yet.
| Integration | Flows 2.0 support | Notes |
|---|---|---|
| Salesforce (v2) | Supported | Requires the new Salesforce v2 integration card in Studio. The legacy integration does not receive Flows 2.0 events. |
| HubSpot (v2) | Supported | Requires the new HubSpot v2 integration card in Studio. The legacy integration does not receive Flows 2.0 events. |
| Slack (v2) | Supported | Requires the new Slack v2 integration card in Studio. The legacy integration does not receive Flows 2.0 events. |
| Zapier | Supported | Select "Custom Event Received" as the trigger and type the Flows 2.0 event name (e.g., appcues:v2:experience_started). The v2 events don't appear in the dropdown β you must type them. |
Using legacy Flows? All integrations that support legacy Flow events (flow_started, flow_completed, flow_skipped, etc.) continue to work β legacy and v2 integration cards, Zapier, custom webhooks, and all client-side analytics integrations.
FAQ
Can I publish legacy Flows and Flows 2.0 Experiences at the same time? Yes. Only one Flow displays at a time, even across both types. The Priority setting includes both types.
Can I trigger Flows 2.0 Experiences from other experiences? Yes β from legacy Flows, other Flows 2.0 Experiences, Pin buttons, Banner buttons, Launchpad link items, and Checklist items. Support for including Flows 2.0 Experiences in a Launchpad's dynamic Flow List is in progress.
Can I target and segment based on user exposure to Flows 2.0 Experiences? Yes, this is now available.
What if I want to include survey questions in my Flow? Survey block support is on the roadmap. For now, include external surveys (Typeform, SurveyMonkey, etc.) using the IFrame content block.