Skip to content
Guides9 min read

iMessage Beats Apps on Retention

The average AI app keeps 0.9% of users after 30 days. Text lines keep 2 to 3 times more.

Grainy film still of the moon over the sea seen between white stone arches, with the words "iMessage beats apps on retention"

Most apps lose almost everyone in their first month, and AI apps lose the most. We learned that the hard way with our own product, then watched the same pattern play out with nearly 200 organizations building agents on Keiki. The fix that moved our numbers the most wasn't a feature. It was the channel.

Across iMessage, WhatsApp, Slack and Telegram, the channel decides whether people come back, often more than the features do. This post covers the public benchmarks, what we see across our customers, and when adding a line is worth it.

If you're new to agents on iMessage, start with our guide to building iMessage agents.

The numbers at a glance

Day 7Day 30Source
Average generative AI app3.1%0.9%AppsFlyer benchmarks, Q3 2026
iMessage and SMS lines on Keiki10.4%2.3%Keiki, aggregated and anonymized
Telegram agents on Keiki37.5%10.0%Keiki, aggregated and anonymized

Case study: Orchid, from app to iMessage

We launched Orchid, our personal assistant, in July 2026. It started where most AI products start: an app with a chat screen. People signed up, tried it, liked it, and left. About 1% of new users were still active 30 days later, right in line with the 0.9% AppsFlyer reports for the average generative AI app.

Then we put the same assistant on an iMessage line. We didn't change the model, the tools or the prompts. The only new code was the part that receives a text and sends the reply.

OrchidWhere people used it30-day retention
Launch, July 2026Appabout 1%
After the moveiMessage lineroughly 50%

What changed was everything around the agent:

  • Signup went away. Texting a number replaced downloading an app and creating an account.
  • Orchid could text first. Reminders, follow-ups and finished tasks showed up in Messages, next to texts from friends, instead of in a push notification people had turned off.
  • Usage became a habit people already had. Nobody had to remember to open Orchid. They just texted it, the way they text everyone else.

Orchid is a daily-use assistant, which is the best case for a line. That's why we also looked at every kind of agent on Keiki, below.

How to read these numbers

Our numbers come from message timestamps aggregated across Keiki customers. They're anonymized: no customer, agent or person can be identified, and nobody read a conversation to produce them.

Two notes so you read the benchmarks fairly. App benchmarks count people who opened the app on that exact day. Our numbers count people who sent another message 7 or 30 days after their first one, which is a little more generous. And our customer numbers include every kind of line: support desks, lead capture and booking agents that people are supposed to text once. Even with all of that mixed in, the average line keeps 2 to 3 times more people than the average AI app.

What our customers saw

The same thing shows up when customers move from an app or a website to a thread.

Vet Intel skipped the app entirely. The Veterinary Intelligence Company needed to brief sales reps before back-to-back meetings at a conference. Instead of an app, reps scanned a QR code and got an iMessage thread: no download, no login. Vet Intel planned for 15 vendors. 49 signed up, more than three times the plan, and the agent briefed more than 1,000 meetings. Read the Vet Intel story.

"You can use AI to actually create more human experiences. It's not about reducing that or eliminating the humanity. We're getting to what matters to you more quickly."

Adam Little, The Veterinary Intelligence Company

Veeza AI went where its customers already were. Veeza AI helps people with weaker passports apply for tourist visas across the Global South. Its customers don't browse websites. They message on WhatsApp, so that's where its agent lives. Read the Veeza AI story.

"For a regular person in the Global South, WhatsApp is the gateway to the internet. You can't force your customers to follow things you believe in. You need to meet them where they are."

Aly Moursy, founder of Veeza AI

Why apps lose almost everyone

An app asks for a lot before it gives anything back:

  1. Find it in the App Store and download it.
  2. Create an account and verify an email.
  3. Allow notifications. About half of iOS users don't: the median push opt-in rate on iOS was 48.85% in Airship's 2025 benchmarks.
  4. Remember the app exists next week.

Every step loses people, and step 4 is the one that kills retention. An app is a place people have to remember to go. The moment they forget, it becomes one more icon on page three, and they mute the notifications they did allow after the second one that wasn't urgent.

AI apps have it worst. AppsFlyer puts the average generative AI app at 0.9% after 30 days, the lowest of the 25 categories it tracks. Orchid's app sat right there at about 1%.

Why a messaging line keeps people

The biggest reason is the simplest one: the app is already on their phone. Messages ships on every iPhone and WhatsApp is on most phones everywhere else, and they're the apps people use most to talk to other people. Texting is how people already ask for things, follow up and get answers. Texting an agent the same way isn't a new behavior to learn. It's the next step after texting a friend, a coworker or a business.

A line flips every one of those steps:

  • No download. The app is already installed. The "install" is saving a contact. Someone texts a number and they're in.
  • No new habit. People already open Messages or WhatsApp many times a day to talk to the people in their life. Your agent sits in the same list as their friends and family.
  • People actually read it. The median WhatsApp brand gets 72% of its campaign messages opened (Chatarmin, 414 brands, 2026), and that's for marketing. A reply someone asked for gets read every time.
  • The thread is the memory. Scrolling up shows everything the agent already did. There's no dashboard to rebuild context from.
  • The agent can text first. A reminder, a status update, a question that needs one tap. An app can only wait to be opened.

That's what happened with Orchid. The assistant didn't change. It stopped waiting to be opened.

What actually changed in the code

Very little. The product didn't change, only the surface it ran on:

// Before: the agent answered inside our app's chat screen
app.post('/chat', async (req) => reply(await agent.run(req.body.message)))

// After: the same agent answers texts on a line
line.onMessage(async (msg) => line.send(msg.from, await agent.run(msg.text)))

Everything else stayed: the model, the tools, the memory. The hard parts of a line are the parts around that one call (provisioning a number, delivery receipts, typing indicators, media, group chats, rate limits, opt-outs), which is what Keiki runs for you. See how to add iMessage to your AI agent.

Add a line even if you already have an app

A line doesn't replace your app. It catches the people your app was going to lose.

  • Your app is where people do the work. The line is where you reach them. Use the thread for the moments that bring people back: a finished task, a reminder, a question that needs one tap.
  • Onboarding is your biggest leak. Letting people text a number before they download anything means they get value in the first minute instead of after a signup form.
  • Half your users never allowed notifications. A text from your agent with something useful in it doesn't need permission to show up.
  • Hand off when you need a screen. When a task needs a form, a calendar or a payment, the agent sends a link or a card, and the person finishes it there. See iMessage apps vs. iMessage bots.

The setup most teams land on: the app stays the full product, and the line becomes the front door and the follow-up.

What it depends on

The channel isn't magic, and not every agent gets Orchid's jump. Across Keiki, how often people come back depends on what the agent is for:

  • Agents people use every day (personal assistants, coaches, team assistants) get the biggest lift. Telegram agents on Keiki, which are mostly this kind, keep 37.5% of people a week later.
  • Agents for one-off jobs (booking, support, lead capture) get one good conversation and then nothing, which is the right outcome. The person got their answer. Measure those on whether the job got done, not on day-30 retention.
  • The agent has to be good in a thread. Short replies, one question at a time, and following up only when it has something worth saying. An agent that spams gets muted like an app does.

A line removes the reasons people forget you. It can't make people need something they don't need.

How to measure it on your own line

Track three numbers, by the first day each person texted:

  1. Day-7 and day-30 return rate: the share of people who send another message 7 or 30 days after their first.
  2. Active days: the share of people who texted on two or more different days. On Keiki's iMessage and SMS lines it's 20.6%.
  3. Replies to agent-started messages: how often a follow-up from the agent brings someone back.
-- day-30 return rate, by each person's first message
with firsts as (
  select phone, min(created_at) as first_at, max(created_at) as last_at
  from messages
  where api_key = $1 and line_number = $2 and direction = 'inbound'
  group by phone
)
select round(100.0 * avg((last_at >= first_at + interval '30 days')::int), 1) as d30
from firsts
where first_at < now() - interval '30 days';

Keiki's dashboard shows every conversation and trace, so you can see which follow-ups brought people back.

FAQ

Is iMessage retention really higher than app retention? Usually, yes. The average generative AI app keeps 0.9% of users after 30 days, while messaging lines on Keiki keep 2 to 3 times that on average, and daily-use agents keep far more. Our own assistant, Orchid, went from about 1% 30-day retention as an app to roughly 50% on iMessage with the same agent.

What is a good retention rate for an AI app? AppsFlyer's Q3 2026 benchmarks put the average generative AI app at 3.1% on day 7 and 0.9% on day 30, the lowest of the 25 categories it tracks.

Do I need to rebuild my product to put it on iMessage? No. If your product already has an agent or an API, the agent call stays the same and the line becomes a new way in. Keiki handles the number, delivery and media, so the work is mostly connecting your agent once.

Should I shut down my app if the line works better? No. Keep the app for tasks that need a screen and use the line to bring people back to it. The agent can send a link or a card into the thread whenever a task needs one.

Does this work on WhatsApp too? Yes. The same agent can run on iMessage, SMS and WhatsApp at once. iMessage reaches iPhone users, and WhatsApp reaches most people outside the US.

Sources

Published · Guides