---
title: "Interactions and flows"
description: "Connect screens, choose different paths, and act on what users do."
search:
  tags: ["Features"]
  keywords: ["branching", "button action", "App Action", "delay"]
---

A flow defines what happens throughout an Experience. It connects screens with actions and conditions, so a user can answer a question, see a recommendation, make a purchase, or return to your app. You can follow those connections on the Canvas and change each step's settings there.

<span id="connect-the-screens" />

## Screens and branches

Connect the entry point to the first screen, then connect the steps that follow it. Drag a wire from an output, such as a screen's Continue event, onto the screen it should open next. A **Navigate** step opens its **Target Screen**, while **Back** returns through the screen history by the number of screens you choose.

To add a step, drag the output into empty space on the Canvas. **Add to the Journey** lets you create a new **Screen** or insert an action such as **Delay**, **Submit response**, or **Restore purchases**. Choosing Screen creates it and connects it to that output.

Conditions let people take different paths. For example, onboarding can include an extra explanation for beginners and send experienced users straight to a summary. Select a step to change its settings, or use **Ask Nuxie to edit**:

> After the goal question, show the beginner introduction only when experience level is beginner. Send everyone else to the plan summary.

The condition reads the values connected through [bindings](/docs/guides/data-and-bindings). Its default path handles values that don't match another branch, including an optional answer the user skipped.

Select a connecting wire to see the event that starts it and the screen transition it uses. Removing the wire removes that connection.

<span id="configure-actions" />

## Actions

An interaction starts on a screen; the flow decides what follows it. Tapping an option might save an answer and send a Continue event, with the connected step opening the next screen.

Select a layer to see its **Interaction** summary. It lists the actions in order and shows where emitted events lead. **Not connected** means the event has no destination yet.

Use **Send event** to record a named event for tracking or later behavior. Response submission is a separate action: saving an answer or navigating to another screen doesn't mark it as submitted. Add submission where you want to finish collecting the answers.

### Purchase and restore results

A **Purchase** step buys the Product associated with a paywall placement. Completion, failure, and cancellation can each lead to a different path. For example, a successful purchase can close the paywall, while cancellation leaves it open for the user to keep browsing.

**Restore** has separate results for restored purchases, no purchases found, and failure. Connect the result that applies to the next step you want the user to see. See [Paywalls](/docs/guides/paywalls) for Product and checkout setup.

### App and connector actions

An App Action asks your app to do something, such as open the user's first workout. Your SDK integration needs a handler for that action. When asking Nuxie to add it, include the action name, destination, and data the app needs.

A connector action runs an operation through a [connected account](/docs/guides/connectors). Choose the account and operation, supply its payload, and set the no-answer timeout. The required fields depend on the operation you've selected.

### Experiments

An **Experiment** step sends users to variants according to its traffic split. Use it when you want to compare different introductions, offers, or other paths within the Experience. See [Experiments](/docs/guides/experiments) for assignment and result measurement.

## Timing and transitions

**Delay** pauses the flow for a duration. **Wait until** pauses until a condition is met or its timeout is reached. The timeout gives the flow a way to continue when the condition doesn't become true.

Screen transitions control how navigation looks, separately from these pauses. Use [Preview](/docs/guides/preview) to follow the route and open the Run Log to see actions, branch choices, and exits. When you reach a wait, **Skip** advances through it without waiting in real time.

<span id="add-a-goal" />
<span id="measure-the-outcome" />

## Conversion goals

A conversion goal measures the result you want from the Experience. It can happen after the screens close: onboarding might lead to `workout_started`, for example. Choose an event or Segment transition and an attribution window in [delivery settings](/docs/guides/delivery).

Goals are optional, and reaching the last screen is separate from converting. For a paywall, use a confirmed purchase outcome when you want to measure sales; a purchase-button tap measures interest in the offer.
