Not every notification should be a one-off. Maybe you want to remind users every Friday about a weekly sale, ping them for a daily check-in, or nudge them monthly about a subscription renewal. If you're here, you're probably tired of copy-pasting the same manual campaigns or wrangling brittle cron jobs. Good news: OneSignal gives you a way to automate all this—if you know where to look, and what the limits are.
This guide is for anyone who wants to set up recurring notifications in OneSignal without getting lost in the weeds. Whether you’re a product manager who doesn’t code, or a developer who just wants the honest path to "set it and forget it," you’ll find what actually works—and what to skip.
The Basics: What Recurring Notifications Really Mean
First, let’s get clear on terms. “Recurring notifications” just means sending the same push or message to users on a schedule—daily, weekly, monthly, whatever. Think of it like a calendar reminder, but for your app’s audience.
OneSignal has a few ways to do this, but only one real feature meant for true automation: Advanced Automation (sometimes called Automated Messages). This lets you set up rules to send messages based on triggers, including time-based schedules.
What works: - Scheduled messages that repeat on a fixed schedule (daily, weekly, etc.) - Segments and personalization, so you’re not blasting everyone - Web, mobile push, in-app, even email/SMS (if you’ve set up those channels)
What doesn’t (or isn’t worth the hassle): - “Recurring” in the simple “Send a notification every X” sense isn’t always as easy as a checkbox. OneSignal’s basic scheduler only allows single future sends. - Complex logic (like “every second Tuesday unless it’s a holiday”)—you’ll end up needing backend code or third-party tools.
Step 1: Decide What You Actually Need
Before you click anything, figure out: - Frequency: Daily? Weekly? More complex? - Audience: Everyone, or just a segment (e.g., “users who haven’t opened the app in 3 days”)? - Personalization: Will you need dynamic content or is a static message fine? - Channels: Push only, or also email/SMS/in-app?
Write it down. This saves you from building a Rube Goldberg machine for a problem that’s really simple.
Pro tip: If your needs are basic (like “every Monday at 9AM”), you can use OneSignal’s built-in features. If you need more, you might need to combine features or use their API.
Step 2: Check Your Plan—Advanced Automation Isn’t Free Forever
OneSignal’s Advanced Automation is only available on paid plans (as of 2024). If you’re on the free tier, you get basic scheduling but no recurring options.
Check your plan: 1. Log in to OneSignal. 2. Click your workspace > Settings > Billing. 3. If you’re not on a Growth or Professional plan (or higher), you’ll need to upgrade.
Honest take: Upgrading just for recurring notifications is only worth it if you’ll actually use the other features (customer journeys, advanced targeting, etc.). If you only need basic scheduled sends, the free plan might be enough.
Step 3: Build Your Audience Segment (Optional but Recommended)
Don’t just blast everyone. Use segments to target the right people. For example: - “Active users in the last 7 days” - “Subscribed but inactive for 14+ days” - “iOS users who haven’t updated”
To create a segment: 1. Go to Audience > Segments. 2. Click New Segment. 3. Set your filters (behavior, device type, tags, etc.). 4. Save and name your segment.
Pro tip: Segments update automatically, so users flow in and out as their data changes.
Step 4: Create an Automated Message with a Recurring Schedule
Now for the actual automation. Here’s how:
- Go to Messages > Automated Messages.
- Click New Automated Message.
- Give your message a name (users won’t see this).
- Under Trigger, choose Schedule.
- Set up your schedule:
- Daily: Pick time of day and days of week.
- Weekly: Pick day(s) and time(s).
- Monthly: Choose specific dates.
- Choose your audience segment (see Step 3).
- Write your notification:
- Title, body, icons, deep links, etc.
- Optional: Add personalization using data tags (if you’ve set up custom user data).
- Pick the channels (push, in-app, email, SMS).
- Set your frequency and delivery window. If you want users to only get it once (not every week forever), set a stop condition.
- Click Save (or Activate).
That’s it. OneSignal will now handle the rest, sending notifications per your schedule to whoever’s in your segment.
Pro tip: Test with a small segment first (like just yourself or your team) before you roll out to everyone.
Step 5: Test and Monitor
Don’t trust automation blindly. Here’s what to do: - Preview your message before enabling it. - Use Test Send to a device you control. - Check delivery stats under Messages > Automated Messages.
Look for: - Are notifications being sent at the right time? - Is the audience what you expected? - Are there delivery failures (especially with iOS, which can be picky)?
Gotchas: - Time zones: OneSignal sends based on your workspace time zone by default. You can send in the user’s local time, but it’s an option you have to set. - Segment drift: If your segment is dynamic, your audience may shrink or grow over time. That’s usually good, but double-check regularly. - Platform quirks: Some platforms (like iOS) may throttle or suppress repeated notifications if users aren’t engaging.
Step 6: Advanced Tactics (Or: When Built-In Automation Isn’t Enough)
Here’s where things get real. OneSignal’s Advanced Automation covers 90% of recurring use cases, but sometimes you hit a wall.
When you might need more: - You want “every X days after a user does Y” (e.g., 7 days after signup, then repeat) - You need to skip certain dates (holidays, maintenance) - You want to change content dynamically every send (e.g., “this week’s deals”)
Your options: - Use OneSignal Journeys: They let you build multi-step “if this, then that” flows, but can get complex fast. - Trigger via API: Build your own scheduler (cron job, Zapier, etc.) to call the OneSignal API and send notifications on your schedule. More work, but total control. - Ignore the hype: If you only need “send the same message every Monday,” don’t overthink it—stick with the built-in recurring schedule.
Reality check: Adding code or third-party tools just for “recurring” usually isn’t worth it unless you have other needs that justify the complexity.
What to Ignore (and What Not to Worry About)
- Don’t stress about “duplicates”: If your segment is “users who haven’t opened in 7 days,” people will naturally drop out once they re-engage.
- Ignore “Send After” for Recurring: The “Send After” setting is for one-time scheduled sends, not true recurrence.
- Don’t over-personalize: Unless you’ve got great user data, keep copy simple. Recurring messages are easy to tune out.
Wrapping Up: Keep It Simple, Iterate Often
Automated, recurring notifications are a huge time-saver—when they’re set up right. Start with the simplest version of your idea, test it with yourself or a small group, and watch the results before scaling up. Don’t get sucked into building something custom unless you really need to.
Most important: revisit your automation every few months. What worked last quarter might be annoying users now. Don’t be afraid to pause, tweak, or delete recurring messages that aren’t pulling their weight.
Set it, check it, and move on. That’s the real automation win.