How to Prevent Subscriber Churn During Web Push Migration
When migrating from another web push provider to EngageLab on the same origin, clearing the legacy Service Worker does not change the site's existing notification permission. The current SDK reads the browser's notification permission during initialization and only triggers a permission request when the site does not already have permission. Re-authorization is usually required only when the origin changes, the existing permission expires or is revoked, or the user manually clears site settings. For same-origin provider migration, the focus is smoothly unregistering the old Service Worker and recreating the push subscription to avoid delivery interruptions.
1. Root Cause Analysis
| Migration Steps | User Impact |
|---|---|
| Remove legacy SDK & Service Worker | Site notification permission is not cleared, but the old push subscription becomes invalid and must be recreated |
| New SDK initializes and reads current notification permission | Authorized users will not see another prompt due to SDK initialization; a permission request is triggered only when permission is unavailable |
| Push interruption during migration | Service disruption perceived |
2. Retention Strategy (Phased Implementation)

Phase 1: Pre-Migration Preparation (Reduce Psychological Resistance)
Pre-Notification Campaign
- Recommended message template:
"We're upgrading our messaging service! Your message subscription will be migrated automatically during the upgrade. Keep browser notifications enabled to continue receiving exclusive offers." - Timing: Send twice within 1 week pre-migration (3-day interval)
- Implementation: Via legacy SDK (mark as "system message" to bypass frequency limits)
- Recommended message template:
Value Reinforcement
- Add non-intrusive site header banner: <div class="upgrade-banner"> Service upgrade in progress! Keep notifications enabled to get a <span class="highlight">20% discount coupon</span> (issued after migration) </div>
<div class="upgrade-banner"> Service upgrade in progress! Keep notifications enabled to get a <span class="highlight">20% discount coupon</span> (issued after migration) </div>This code block in the floating window - Conversion hook: Offer instant rewards after migration (e.g. promo codes/exclusive content)
- Add non-intrusive site header banner:
Phase 2: Migration Optimization (Improve Subscription Migration Success)
- Phased Migration

- Advantage: User-triggered migration reduces the impact of subscription recreation failures or interruptions during migration
- Contextual Permission Prompt
You can configure it in the EngageLab console by selecting either the "Guided Setup" or "Custom" method.

- When permission is missing, expired, or revoked, recommended trigger conditions include any of the following:
- User views >3 pages
- High-value event triggered (e.g. add-to-cart)
- Page dwell time >45 seconds
Phase 3: Post-Migration Recovery
Churned User Email Reactivation
User Status Recovery Strategy Notification permission revoked or expired Email users and guide them back to the site to re-enable notifications Subscription recreation failed Guide users back to the site to trigger subscription creation again Cookie Matching + Precision Retargeting
- Identify users with expired notification permission or failed subscription recreation via historical cookies
- Run remarketing ads (e.g. Google Ads):
"You have 3 unread notifications! Click to restore"
Real-time Churn Dashboard
Metric Alert Threshold Action Plan Subscription recreation success rate < 85% Trigger email reactivation Uninstall rate > 15% Pause migration for troubleshooting
3. Expected Outcomes

✅ Industry case: E-commerce platform using contextual prompts achieved 12% subscriber growth post-migration
✅ Comprehensive result: Combined technical and operational strategies can contain churn within industry-best 8~25% range, with potential negative churn (growth during migration) in optimal scenarios.










