# App Inbox

Use the **App Inbox** channel element to place a message directly in a user's in-app inbox from a journey, without going through push. [Learn how App Inbox works](/product/messaging-channels/message-inbox/send-app-inbox-messages/).

<Aside type="note">
**Requirements**

App Inbox needs the Message Inbox SDK module integrated in the app: Web SDK 3.75.0, Android SDK 6.12.0, or iOS SDK 7.0.40 or later (the **Carousel** layout needs iOS SDK 7.1.2 or later). Users on other platforms, or on an older SDK version, skip this point — see [How the App Inbox element behaves](#how-the-app-inbox-element-behaves).
</Aside>

Drag the **App Inbox** element onto the canvas from **Channels**, then click it to open its settings. Configure the following:

## Select or create App Inbox content

In **Message**, select an existing [App Inbox preset](/product/content/app-inbox-presets/) or click **Create new** to build one inline, using the same [layout and content fields](/product/content/app-inbox-presets/#choose-a-layout-type) as the Inbox Presets editor. Message type (marketing or transactional) is inherited from the preset you choose.

## Set expiration

**Expires after** controls how long the message stays in the inbox before Pushwoosh removes it: **7**, **14**, **30**, or **90 days**, or a specific date. Default is **30 days**.

## Notify with push

Toggle **Notify with push** to also send a push notification when the message lands in the inbox. When enabled, select a push preset to send alongside.

## Set frequency capping

Toggle **Respect frequency capping** to apply the [App Inbox frequency capping channel](/product/messaging-channels/global-frequency-capping/#app-inbox) — a counter separate from push, email, and other channels. It's on by default.

Turning it off lets this message reach a user even if they've already hit their App Inbox limit for the period. Use with caution.

## How the App Inbox element behaves

* **The point is passed as soon as the message is placed in the inbox** (`Sent`), not when the user opens it. Waiting for the user to open the app would stall the journey for users who don't open it for weeks, or ever.
* **Users without an inbox device** — web, email, or messenger-only users — **pass through the point instead of dropping off**. They're counted separately as **skipped** in the point's statistics.
* If a user has several devices with the inbox module, the message goes to all of them. The **sent** counter counts unique people, not devices.
* **Pausing or finishing the journey doesn't recall messages already placed** in an inbox. They stay until their expiration date.

## Element tile and statistics

The element tile shows **Reached** and **Reach rate** (reached ÷ sent), the same pair every channel point shows, plus a **Drop-offs** counter and, if the journey tracks a goal event, a goal-reached counter.

For the full funnel, open the point's detailed statistics. It reports **sent**, **reached**, **read**, **clicked**, **dismissed**, **expired**, **skipped**, and messages suppressed by frequency capping.

<Aside type="note">
There's no branching on whether a user read or opened an App Inbox message yet. Split the journey on a different signal (an event, a tag, or a different channel's engagement) if you need to react to inbox engagement.
</Aside>