Rules Use Cases
Ready-to-build Rules campaigns beyond the shipped templates — abandoned checkout, win-back, reinstall, onboarding, anniversaries, and more.
The shipped rule templates cover the most common patterns. But Rules is really a set of building blocks — event trigger + delay + audience + push + in-app action — that you can combine into many more campaigns. Below are ready-to-build recipes that don't ship as templates.
For the mechanics of each piece (triggers, timing, audiences, in-app actions), see Rules; for the full list of events you can trigger on, see Event Types.
Abandoned checkout
A user reached checkout but didn't pay within the hour — offer a discount.
- Trigger:
paywall_checkout_initiated. - Audience filter:
In-app subscription status is not active. - Timing: With delay =
3600seconds (1 hour). Limit: Just once per each user. - Action: Paywall model pointing to a discount paywall.
- Push: "Still thinking? Here's 20% off — limited time."
Payment error retry
The user's payment failed at checkout — nudge them to try again.
- Trigger:
paywall_payment_error. - Timing: With delay =
60seconds. - Action: Built-in screen or a smaller paywall.
- Push: "Payment didn't go through. Tap to try again."
Re-engagement for churned users
The user's subscription has expired — win back at 3 / 7 / 14 days.
- Trigger:
subscription_expired. - Timing: With delay (max 6 hours from a single rule). For longer windows, use a Scheduled rule with a custom audience of lapsed users — see Win Back Lost Subscribers.
- Action: Discount or trial-comeback paywall.
- Limit: Just once per each user.
- Push: "We miss you. Here's a discount to come back."
App reinstall greeting
The user reinstalled the app — re-engage them.
- Trigger:
app_reinstalled. - Action: Paywall model if previously subscribed; In-app message otherwise.
- Push: "Welcome back! Pick up where you left off."
Refund declined retention
Apple declined the user's refund — they're still a paying customer but unhappy.
- Trigger:
refund_declined. - Action: In-app message + soft offer.
- Push: "We hear you. Here's something to make it right."
Onboarding reminder
The user signed up but hasn't subscribed yet.
- Trigger:
user_created. - Audience filter:
In-app subscription status is not active. - Timing: Scheduled rule (one-time per cohort) OR a custom audience based on a
days_since_signupuser property. - Push: "Don't miss out — here's what you can do with Apphud Premium."
Anniversary celebration
The user has been around for N days/months.
- Trigger: Scheduled (repeating).
- Audience filter: custom user property
signup_anniversary_today = true(set by your app). - Push: "Happy 1 year with us! Here's a gift."
Holiday flash sale
A short, high-urgency discount tied to a calendar moment (Black Friday, New Year, back-to-school).
- Trigger: Scheduled Rule (One time) template.
- Timezone: User's device timezone by default — a sale push at 3am local time doesn't convert, however global the sale is. Use App timezone only if the promo needs one fixed clock moment for everyone (e.g. a price change synced with the store).
- Audience: for "everyone who could still buy," pick the default Non-paying users audience directly in Configuration — no custom audience needed. To scope it to a region, start from Non-paying users, add a Country by IP / Store Country filter, and save it as a custom audience.
- Screen expiration (TTL): number of hours, set on the Configuration tab (default
0= no expiration). For a 48-hour sale, enter48— this is how long the offer stays valid for a user who got the push but hasn't opened the app yet, not a calendar cutoff. To hard-stop the offer on the sale's end date regardless of individual TTLs, disable the rule after that date. - Action: Promo Offer Screen (discount template) or a paywall model pointing to a discount paywall.
- Push: "⚡ Black Friday: 90% off, today only."
Win-back for a legacy install cohort
Not the same as the Win back lost subscribers template — that one is event-triggered on autorenew_disabled, for users who were just paying. This targets an install-date cohort regardless of whether they ever paid.
- Trigger: Manual rule or Scheduled Rule (One time), aimed at a custom audience.
- Audience setup: Users & Audiences page → start from Non-paying users (or All Users, to include past payers too) → Add filter → Install Month, set it to the cohort's install window → Save audience → Save as new → pick that audience in the rule's Configuration tab.
- Action: Trial-comeback or gift paywall.
- Push: "Haven't seen you in a while — here's the full version, on us."
Recurring engagement nudge
Fits apps built around a recurring habit or check-in — behavior-change, wellness, fitness, journaling. A "how's your week" push doesn't make sense for a one-off utility app.
- Trigger: Scheduled Rule (Repeating) template, pick the day(s) of week.
- Timezone: User's device timezone — the one case where it's clearly right, since the point is landing at each user's local morning/evening.
- Action: None, or a light in-app message.
- Push: "Sunday check-in: how's your week going?"
- Variant: for a global audience, "Sunday" isn't the weekend everywhere. If the day matters, split into separate rules per region (Country by IP / Locale audience filter) with different days selected, rather than one rule assuming one calendar convention for everyone.
Updated 11 days ago
