The Limits of Replit for Mobile Monetization
Because a Replit app is a web service, it has no APNs token, no keychain entry and no biometric API. No deployment setting changes that — those surfaces only exist inside a signed native app.
Push is the single highest-leverage retention channel for an iOS app — and it's also the one feature a Replit web app physically cannot do. The web doesn't have APNs. To send real iOS push, you need:
- A native iOS binary registered with APNs. Service workers and web push do not count on iOS.
- An APNs auth key on your Apple Developer account, rotated and stored securely.
- Device-token capture from inside the native iOS app, mapped to user IDs in your Replit backend.
- A delivery pipeline that respects Focus modes, quiet hours, and provisional authorisation.
OneSignal and Braze are SDKs — they assume the native binary already exists.
How to Implement Push Notifications in Replit using Wanilla
Wanilla builds your Replit product into an iOS app registered with APNs. You send pushes via a single HTTPS endpoint that authenticates against your Apple Developer account — we handle the token lifecycle.
What we set up for you:
- APNs auth key on your Apple Developer account, rotated to your team.
- Device-token capture inside the native iOS app, posted to your Replit backend with the matching user ID.
- Permission prompt timing tuned for opt-in (usually after the first value moment, not on launch).
- Rich notifications, deep links, badges, and provisional auth — all out of the box.
- A simple send endpoint your Replit workflows can call directly, or you can layer Braze/Customer.io on top later.
Pair this with App Store publishing and In-App Purchases to ship a complete monetized launch.
Code Integration Example
Wanilla vs OneSignal vs DIY APNs
| Wanilla | OneSignal | DIY APNs | |
|---|---|---|---|
| Native binary | We build it | You build it | You build it |
| SDK in your codebase | None | Required | You write it |
| APNs auth key | Provisioned | You upload | You upload |
| Device tokens | Synced to your backend | Stored in OneSignal | You wire it |
| Send endpoint | Your backend | OneSignal API | APNs HTTP/2 |
| Best for | Replit founders launching | Mature apps with marketing ops | Backend engineers |
// Send a push from your Replit backend
// Wanilla handles APNs auth + token lifecycle — you just POST.
export async function sendPush(userId, title, body, deepLink) {
const tokens = await db.deviceTokens.findMany({ where: { userId } });
return fetch("https://api.wanilla.co/v1/push/send", {
method: "POST",
headers: { "Content-Type": "application/json", "Authorization": `Bearer ${WANILLA_KEY}` },
body: JSON.stringify({
tokens: tokens.map(t => t.token),
notification: { title, body },
data: { deepLink }
})
});
}Related Guides
Once you've set up Push Notifications, you might also want to add Adapty Alternative to Replit or add App Store Publishing to Replit.
Working with other AI builders? See our guide on Push Notifications for Base44 or Push Notifications for Lovable.
Explore our full breakdown of Replit App Integration.
For a platform-agnostic overview, read our full Push Notifications pillar guide.
How to publish your Replit app with Push Notifications
- 1
Connect your Replit app
Share the live URL of your Replit app. We review the product and agree the scope with you.
- 2
Wire up native Push Notifications
Wanilla builds the iOS app with native Push Notifications support, working to Apple Guideline 4.2.
- 3
Prepare the App Store listing
Bundle ID, App Store Connect record, privacy nutrition labels, screenshots, description and keywords are prepared for submission.
- 4
Configure pricing and paywall
Subscriptions and in-app purchases are created in App Store Connect and wired to StoreKit 2. Any change to how the app works goes to Apple as a new version.
- 5
Submit from your account and go live
Your app is ready to submit from your Apple Developer account within 4 working days. If Apple raises an issue, Wanilla helps you fix it and prepares a new version. Apple makes the final decision.
Replit + Wanilla vs. Custom Native Development
| Feature | Replit Web App | Custom React Native | Replit + Wanilla |
|---|---|---|---|
| Development Time | Minutes (AI Generated) | Weeks / Months | Minutes |
| App Store Ready | No | Yes | Yes |
| Push Notifications Support | ❌ Web only (Stripe) | ✅ Native IAP | ✅ Native IAP |
| Developer Cost | Low | Very High | Low (SaaS) |
Frequently Asked Questions
Can my Replit web app send iOS push without a native iOS app?▾
Do I need OneSignal or Braze?▾
Who owns the APNs auth key?▾
Official Resource
- Replit Documentation — Official Replit developer documentation
Book a Free Launch Review
Book a free launch review. Ready for you to submit from your own Apple Developer account within 4 working days. Apple's review time and decision are outside our control.
Or see the guided launch offer — $2,995 + $199/month