Skip to content
Back to skills

Design Lifecycle Messaging

ASecurity

Design the cross-channel (push + email + in-app) lifecycle messaging cadence that drives retention without spamming — frequency capping, first-72-hours, re-engagement, and win-back coordination. Use when the user says 'lifecycle messaging', 'retention emails', 'push cadence', 're-engagement', 'frequency capping', 'onboarding emails', or 'lifecycle automation'.

  • 3 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 4, 2026
developmentgoreacttestingapiperformance

Works with

  • api

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned October 4, 2026

npx -y skills add khadinakbarlabs/expo-mobile-app-builder --skill design-lifecycle-messaging --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Design Lifecycle Messaging?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Design Lifecycle Messaging
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/khadinakbarlabs-design-lifecycle-messaging/badge)](https://www.skillsdirectory.com/skills/khadinakbarlabs-design-lifecycle-messaging)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: "design-lifecycle-messaging"
description: "Design the cross-channel (push + email + in-app) lifecycle messaging cadence that drives retention without spamming — frequency capping, first-72-hours, re-engagement, and win-back coordination. Use when the user says 'lifecycle messaging', 'retention emails', 'push cadence', 're-engagement', 'frequency capping', 'onboarding emails', or 'lifecycle automation'."
---

# Design lifecycle messaging

The coordinated cross-channel system that turns a one-time user into a habit. Done well it drives materially higher 90-day retention; done badly it accelerates churn and earns you 1-star reviews for "annoying notifications."

## The headline finding

Brands using cross-channel engagement (push + email + in-app + SMS) drove **55% higher 90-day retention** than single-channel. But — **frequency capping is mandatory**. Push + email + in-app in rapid succession drives churn *up*. Coordination is the whole skill. ([Braze](https://www.braze.com/resources/articles/mobile-app-retention-10-tip))

## Each channel has a distinct job

| Channel | Strength | Best for |
|---|---|---|
| **Push** | Timely, interruptive, lock-screen | Streak reminders, time-sensitive triggers, same-day re-engagement |
| **Email** | Deep, asynchronous, owned channel | Onboarding continuation, win-back, receipts, value recaps |
| **In-app / Content Cards** | Contextual, non-interruptive | Feature announcements, upsell at the right moment, tips while using |
| **SMS** | Highest open rate, most intrusive | Only with explicit consent; transactional or high-value alerts |

Don't send the same message on every channel. Don't send the same message twice across channels.

## The first-72-hours lifecycle (the make-or-break window)

The steepest drop-off happens in the first 3 days. Session frequency in this window is the strongest predictor of D30. A designed first-72-hours sequence is the highest-ROI messaging work.

```text
Hour 0  (session 1): in-app — establish the D1 reason to return (streak, next task)
Hour 24 (D1):        push — the specific reason to come back today ("Your plan is ready")
Hour 48 (D2):        email — value recap + tip; surface what they haven't discovered
Hour 72 (D3):        push or in-app — milestone / first achievement; prompt a habit
Day 7:               push or email — weekly recap, progress, social proof
```

Every message in this window must give the user a *specific* reason to return, not a generic "come back." "Your 3-day streak is at risk" beats "We miss you."

## Re-engagement cadence (lapsed free users)

```text
3 days inactive  → gentle nudge (push): specific value reason
7 days inactive  → direct message (push + email): incentive or content
14 days inactive → escalated offer (email): discount / feature unlock / "what's new"
30 days inactive → final win-back (email), then suppress
```

Suppress further messaging after repeated non-response — continuing to message a dead cohort just trains them to ignore you (and report spam).

## Frequency capping (non-negotiable)

Uncoordinated channels compound into spam. Rules:

- **Max ~2–3 push notifications per week** for a typical consumer app, unless the app is inherently time-sensitive (messaging, live events).
- **Never send push + email + in-app about the same thing on the same day.** Pick one channel per message per day.
- **Honor unsubscribes and preference centers.** Let users choose which channels they want.
- **Time-zone aware scheduling.** A 3am push is a settings change and an uninstall.
- **AI send-time optimization** (when available) sends each user's message at their individually-predicted best time rather than a fixed broadcast.

## Push specifics

Push is one of the strongest retention levers but the permission is fragile. See `design-push-strategy` for the permission strategy (pre-prompt → contextual ask → 55–65% opt-in). Content that re-engages without spamming:

- **Personalized** — name + past behavior ("Sara, your Spanish lesson is ready"). Not "Reminder."
- **Rich media** — `UNNotificationAttachment` with an image.
- **Actionable** — `UNNotificationCategory` with buttons (Reply, Snooze, Claim).
- **Lifecycle-triggered** — streak break risk, abandoned action, daily reward.
- **Deep-linked** — tapping opens the specific in-app area, not the home screen.

## Email lifecycle

You can only email users who gave you an email (typically in onboarding or account creation). If you collect email, build:

- **Onboarding continuation** — "Here's the feature you set up but haven't used."
- **Value recaps** — weekly/monthly summary of what the app did for them.
- **Win-back** — see `build-win-back-flow`. Route to web checkout where permitted to preserve margin.
- **Transactional** — receipts, payment failures (dunning), subscription changes.

Use a provider with good deliverability (Resend, Postmark, SendGrid, Customer.io, Braze). One well-written lifecycle email per week beats daily generic blasts.

## In-app messaging / content cards

Non-interruptive, shown when the user is already engaged. Use for:

- Feature discovery ("Did you know you can…").
- Upsell at the contextual moment (feature gate paywall — see `command-build-paywall`).
- Tips while the user is in a relevant screen.
- Announcement of new content/features.

Tools: Braze Content Cards, Intercom banners, or a simple in-app banner component driven by your feature flags (PostHog — see `set-up-ab-testing`).

## Measure

```text
message_sent           {channel, campaign, segment}
message_delivered      // especially important for push (delivery is unreliable)
message_opened
message_converted      {goal: d1_return|reactivation|claim|purchase}
message_unsubscribed   {channel}
uninstall_after_send   // early warning that a campaign is too aggressive
```

Watch `uninstall_after_send` per campaign — it's the canary that a message is annoying users. A campaign that lifts opens but spikes uninstalls is a net loss.

## What not to do

- **Don't send the same message across channels** the same day.
- **Don't broadcast generic "we miss you" pushes.** They get muted and reported.
- **Don't message dead cohorts forever.** Suppress after sustained non-response.
- **Don't send pushes at 3am local time.** Time-zone aware or don't send.
- **Don't use email for time-sensitive triggers** (it's async) or push for deep content (it's not).
- **Don't fire paywall re-prompts in re-engagement messages** to users who just rejected the paywall — it feels like a shakedown.

## Pair with

- `design-push-strategy` — push permission strategy and content.
- `design-retention-loop` — the Hook Model this messaging triggers.
- `build-win-back-flow` — the lapsed-user arm of this cadence.
- `build-cancellation-flow` — the active-churn interception.
- `add-expo-notifications` — push implementation.
- `instrument-growth-funnel` — measuring message performance.

Files in this skill

  • SKILL.md6.8 KB
  • agents/openai.yaml209 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…