> For the complete documentation index, see [llms.txt](https://help.twinr.dev/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.twinr.dev/engage/in-app-message.md).

# In App Message

### ✨ Key Highlights

* Delivers messages **inside the app screen**.
* Supports **customizable content** (title, description, image, button actions).
* Flexible **scheduling** – send immediately, once, or based on campaign schedule.
* Provides **analytics** (views & clicks).

## 🎯 Create a Campaign

### How to Create an In-App Message Campaign?

1. Go to **Campaigns → In-App Messages**
2. Click **Create Campaign**
3. Complete the following sections:

***

### 1️⃣ Audience

* **Show to all users**
* **Show to a particular segment**

***

### 2️⃣ Schedule

* **Start Date & Time** – When the campaign begins
* **End Date & Time** – When the campaign stops
* **Show Forever** – Always visible once the app is installed

***

### 3️⃣ Display Type

Choose how the message appears in the app:

* Popup
* Banner
* Bottom Sheet
* Full Screen

***

### 4️⃣ Message Content

#### Content Type

You can now choose how you want to design your in-app message:

#### 🔹 Drag & Drop (Default)

Use the visual editor to:

* Add Title
* Add Description
* Add Image
* Add Button
* Customize Background color
* Set Corner Radius
* Enable/Disable Close Button

This option is ideal for quickly creating standard promotional messages without coding.

<figure><img src="/files/OYtWfxnE8t1sfPO2ngFv" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/cSoYkluIkuFANqS4juJc" alt=""><figcaption></figcaption></figure>

#### 🔹 HTML Editor (New)

Select **HTML Editor** if you want full design control using custom HTML and CSS.

When selected:

* A code editor appears
* You can write custom HTML
* Apply inline CSS styling
* Design fully custom layouts

The middle section shows a **live preview** of how your HTML message will appear inside the app.

<figure><img src="/files/NYefPA740q8TLHtZYAJ6" alt=""><figcaption></figcaption></figure>

**Example HTML Structure:**

```html
<!DOCTYPE html>
<html>
<head>
  <style>
    body { margin: 0; font-family: sans-serif; }
    .card { padding: 20px; text-align: center; }
    .btn {
      background: black;
      color: white;
      padding: 12px 20px;
      border-radius: 20px;
      display: inline-block;
      text-decoration: none;
    }
  </style>
</head>
<body>
  <div class="card">
    <h2>Your message title</h2>
    <img src="https://example.com/image.jpg" width="100%" />
    <br/><br/>
    <a href="#" class="btn">Action</a>
  </div>
</body>
</html>
```

📌 Best Practices for HTML Messages:

* Keep layout mobile-friendly (recommended max width: 360–420px)
* Use optimized images
* Avoid heavy external scripts
* Use inline CSS for better compatibility

***

👉 After configuring all sections, click **Create Campaign** to finalize.

Once saved:

* The campaign appears in the Campaign List
* Status will show **Scheduled** (if future date selected)

***

## 👀 Campaign Preview

The **middle section** shows a live preview of how your message will appear in the app.

<div data-full-width="false"><figure><img src="/files/qNkuIzraCfkdVfiGmuhA" alt="" width="236"><figcaption></figcaption></figure></div>

***

## 📋 Campaign Status

* **Scheduled**
  * Visible in campaign list with start date/time
  * Can **edit** or **delete**
* **Active** (on start date/time)
  * Status changes automatically
  * Date/time hidden
  * Can only **view**, **delete**, or **end** campaign
  * All user activity (views, clicks) is tracked in **Analytics**
* **Ended** (on end date)
  * Campaign stops automatically
  * No longer visible in the app

***

## 📊 Campaign Analytics

### **Stats Tab**

* **Viewed** – Number of times users saw the message
* **Dismissed** – Users who closed without interaction
* **Clicked** – Users who engaged with the CTA (buttons/links)
* **Split of Clicks** – Breakdown of clicks across multiple buttons/links
* **CTR (Click-Through Rate)** – % of users who clicked vs. total viewed

<figure><img src="/files/uSOV3vixqfb48flT3p97" alt=""><figcaption></figcaption></figure>

***

### Overview Tab

Track how your in-app messages are performing with **detailed insights**:

* Campaign Name & ID
* Start & End Date
* Target Segment
* Message Preview (exactly how it appeared to users)

<figure><img src="/files/rTKkr9EOMitW1FEzPudP" alt=""><figcaption></figcaption></figure>

## 📱 User Experience

* On app launch, system checks for campaigns:
  * **If 1 campaign →** show directly
  * **If multiple campaigns →** show earliest one first, then next after dismiss/click
  * **If none →** show nothing
* If new campaigns are created while app is running → shown only on **next launch**

***

## ❓ Frequently Asked Questions (FAQs)

1. **Can I schedule In-App Messages?**\
   Yes. You can set a start and end time for each campaign. Once scheduled, the message will automatically appear at the chosen time.
2. **Can I customize the design of the In-App Message?**\
   Yes. You can edit the **title, description, image, and buttons**. Additionally, colors, fonts, and styles can be customized to match your brand.
3. **What happens if multiple campaigns are active at the same time?**\
   If two or more In-App Messages overlap, the priority will be given based on the **latest scheduled campaign**. You can also control visibility by targeting specific audiences.
4. **How can I target my audience ?**\
   You can target users based on:
   * User behavior (app activity, clicks)
   * User profile (location, subscription plan, preferences)
   * Specific app events (login, purchase, etc.)
5. **Can I track the performance of my In-App Messages?**\
   Yes. Analytics include:
   * **Views** (how many users saw the message)
   * **Clicks** (how many users engaged with the buttons)
   * **CTR (Click-Through Rate)** for overall effectiveness
6. **Can users dismiss an In-App Message?**\
   Yes. Users can dismiss the message by clicking the **Close (X)** button. You can configure whether the message reappears on the next session or not.
7. **Is this feature available for all plans?**\
   In-App Messaging is available only for **Premium plan customers**.&#x20;
8. **Can I edit or delete a campaign after it's created?**\
   If status = Scheduled → You can edit or delete it.\
   If status = Active → You can delete, view and End it\
   If status = Ended → You can only delete it.
