Push notifications are one of the few growth levers that still work without a marketing budget. A user who gets a well-timed nudge — “your order shipped,” “your friend just replied” — comes back to the app. Skip them, and even a beautifully built no-code app quietly bleeds retention. The good news: you don’t need a native mobile team to ship real push notifications anymore. You need to pick the right service and wire it up correctly.
The Three Ways to Add Push Without Writing Code
Every no-code push setup boils down to one of three patterns:
- Native platform integration — FlutterFlow ships a built-in Firebase Cloud Messaging (FCM) connector, so push is a checkbox plus a config file, not a separate vendor.
- Third-party push services — OneSignal, Pusher Beams, and Courier sit on top of FCM/APNs and add a dashboard, audience segmentation, and A/B testing that raw FCM doesn’t give you.
- Backend-triggered push — Supabase Edge Functions or Xano webhooks fire a push when a database row changes (new order, new message), which is what most “real” apps actually need instead of one-off blasts.
How the Main Options Compare
| Service | Free Tier | Setup Complexity | Best For |
|---|---|---|---|
| FlutterFlow + Firebase Cloud Messaging | Generous — FCM itself is free at any volume | Low (native connector) | FlutterFlow apps that want zero extra vendors |
| OneSignal | Up to 10,000 subscribers free | Low–Medium (SDK or plugin) | Segmentation, A/B testing, in-app messaging |
| Pusher Beams | Limited free tier, then usage-based | Medium | Apps that also need real-time chat/presence |
| Courier | Free dev tier | Medium | Multi-channel (push + email + SMS) from one API |
Step-by-Step: FlutterFlow + Firebase Cloud Messaging
This is the fastest path if your app is already built in FlutterFlow, since Firebase is FlutterFlow’s default backend.
- In FlutterFlow, go to Settings > Firebase and confirm your project is connected (if not, connect or create a Firebase project first).
- Enable Cloud Messaging in the Firebase console under Project Settings > Cloud Messaging.
- Back in FlutterFlow, open Settings > Push Notifications and toggle it on — FlutterFlow auto-generates the device token handling.
- Add an Action on the relevant trigger (e.g., “on new chat message”) that calls the built-in “Send Push Notification” action, targeting either a specific user or a topic.
- Test on a real device — iOS Simulator and most emulators do not receive push notifications, so this step gets skipped more often than it should.
Step-by-Step: Bubble.io + OneSignal
- Install the OneSignal plugin from the Bubble plugin marketplace.
- Create a OneSignal app, grab the App ID and REST API key, and paste them into the plugin’s settings.
- Add the OneSignal JavaScript snippet to your Bubble app’s SEO/meta header for web push, or configure the native wrapper (e.g., via a service like BDK or Adalo’s export) for mobile push.
- Use a Bubble workflow action (“OneSignal – Send Notification”) triggered on the backend event you care about — new signup, new order status, abandoned cart after 24 hours.
- Segment your audience in OneSignal’s dashboard using Bubble’s custom data tags so you’re not blasting every user with every message.
Mistakes That Quietly Kill Push Campaigns
- Not testing on a real device. Simulators routinely fake success on push registration calls.
- Skipping the iOS permission prompt design. iOS shows the system permission dialog exactly once — apps that ask immediately on first launch, before explaining the value, see opt-in rates under 40%. A soft pre-prompt screen roughly doubles that.
- No segmentation. Sending every notification to every user is the single fastest way to get uninstalled or opted out of push entirely.
- Ignoring quiet hours. A notification at 2am local time does more brand damage than the notification itself was worth.
- Forgetting Android’s notification channels. Android 8+ requires channels for user-level control — apps that dump everything into one default channel can’t let users mute just the marketing pings.
FAQ
Do I need a paid plan to start? No — FCM is free at any scale, and OneSignal’s free tier covers most early-stage apps up to 10,000 subscribers.
Can I send push notifications from a no-code web app, not just mobile? Yes, both OneSignal and Firebase support web push via service workers, though Safari’s support lags Chrome and Firefox.
Will push work if my app is a wrapped PWA? It depends on the wrapper — confirm your export tool (FlutterFlow, Adalo, Bubble’s native wrapper) actually registers a real device token with APNs/FCM rather than only supporting web push.
Verdict
For most FlutterFlow builders, the native Firebase Cloud Messaging integration is the right default — it’s free, already connected, and good enough for transactional pushes. Reach for OneSignal once you need segmentation, A/B testing, or in-app messaging on top of push, and reach for Courier only if you want one API driving push, email, and SMS together. Whichever you pick, the setup step that actually determines whether your campaign works isn’t the API integration — it’s testing delivery on a real device and designing the permission prompt so users say yes.










