Every subscriber
VAPID keys carry over, so push endpoints keep resolving to the same browser. No re-prompt, no churn, no opt-in rebuild.
Migration
Three steps, zero subscriber loss. Import your VAPID keys, replace one script tag, verify in the dashboard — and your existing OneSignal list keeps receiving pushes through ReachBell from the very next campaign.
Web push tokens are bound to your VAPID key pair, not to the vendor. Bring your OneSignal VAPID keys into ReachBell, and every subscriber stays subscribed — same browser endpoint, same delivery, zero re-prompt. We’ll refund your first month if a single subscriber drops because of the cutover.
Three steps
Most teams cut over before lunch. Here’s the entire playbook — no hidden gotchas, no enterprise SOW.
OneSignal lets you export your application keys from Settings → Keys & IDs. Drop the public/private VAPID pair into ReachBell when you create the project. Every existing subscriber stays subscribed — same keys, same origin, same push endpoint.
Delete the OneSignalSDK.page.js include and the OneSignalSDKWorker.js service worker. Drop in ReachBell's three-line snippet plus our service-worker file at /reachbell-sw.js. No re-prompting, no permission dialog, no list rebuild.
Open ReachBell → Project → Verification. Reload your site and you should see your browser appear as an active subscriber within seconds. Send a test push to yourself, confirm it lands, then route traffic.
The SDK swap
The only code change on your site. Everything else lives in the ReachBell dashboard.
- <script src="https://cdn.onesignal.com/sdks/web/v16/OneSignalSDK.page.js" defer></script>
- <script>
- window.OneSignalDeferred = window.OneSignalDeferred || [];
- OneSignalDeferred.push(OneSignal => {
- OneSignal.init({ appId: "1234abcd-..." });
- });
- </script>
+ <script src="https://cdn.reachbell.com/sdk/v1/reachbell.js" defer></script>
+ <script>
+ window.ReachBell = window.ReachBell || [];
+ ReachBell.push(rb => rb.init({ projectId: "prj_..." }));
+ </script>Then rename OneSignalSDKWorker.js at your site root to reachbell-sw.js — or drop ours alongside.
What you keep
The subscriber list, the analytics history, the deliverability reputation — all of it carries over.
VAPID keys carry over, so push endpoints keep resolving to the same browser. No re-prompt, no churn, no opt-in rebuild.
Export OneSignal's message and delivery data as CSV — we ingest it so your historical CTR and impression charts stay continuous.
Web-push reputation is per-domain and per-VAPID-key, not per-vendor. The browser keeps trusting your origin, so click-through stays steady.
OneSignal's REST CSV export ships every external_user_id and tag. Bring them in via our /v1/subscribers/import endpoint or the CSV uploader.
What you gain
Switching pays for itself the first time you don’t need to integrate a second tool.
Campaign and transactional email on AWS SES — same segments, same dashboard, one bill. Retire your separate Mailchimp or SendGrid line item.
Welcome flows, cart recovery, win-back journeys — included on the ₹2,999/month plan, not gated behind an enterprise sales call.
No USD card swipes, no FX markup. Pay by UPI, cards, or net banking, and download a GST invoice your accountant will sign off on.
Average time to cutover for sites under 1M subscribers: 42 minutes. Need help? Email sales@reachbell.com
FAQ
Everything teams usually ask before switching. Something missing? Email us — a human replies.
No. Web-push subscriptions are tied to the VAPID key pair and the origin, not to the vendor. As long as you carry your existing OneSignal VAPID public/private keys into ReachBell during project setup, every browser keeps its subscription and continues receiving pushes — even before you swap the SDK script. That's the entire reason we built import-VAPID first.
Use OneSignal's REST API csv_export endpoint (or the dashboard's Audience → Export). It returns every subscriber with their external_user_id, tags, language, timezone, and segment memberships. Pipe the CSV into ReachBell's subscriber importer and your segments rebuild automatically.
Templates import via copy-paste — ReachBell uses the same Handlebars-style {{variable}} syntax. Automations need to be rebuilt visually in our journey designer (we don't accept OneSignal JSON yet), but every node type — wait, branch, send, exit — has a direct equivalent. We'll do the rebuild for you on every paid plan.
Yes, briefly. Keep OneSignal's service worker registered alongside ours and send a test campaign through ReachBell. Once you've verified delivery, remove the OneSignal SDK include and the OneSignalSDKWorker.js file from your site root. Browsers will unregister the old worker on the next visit.
Yes — every paid plan includes free migration support. Email sales@reachbell.com with your OneSignal app ID and a sample of your CSV, and we'll handle the import, segment rebuild, and verification call. Most cutovers take a single afternoon.
Free forever for your first 1,000 subscribers. Set up in five minutes — no credit card needed.
Start free today