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 = 3600 seconds (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 = 60 seconds.
  • 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_signup user 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, enter 48 — 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.

Did this page help you?