Migrating a push audience off OneSignal without losing half of it
What actually transfers when you change push providers, what does not, and the two decisions that determine whether your migration is an import or a rebuild.
How push notifications actually work, what breaks, and how to debug it — written by the people building the platform.
What actually transfers when you change push providers, what does not, and the two decisions that determine whether your migration is an import or a rebuild.
A browser push subscription is cryptographically bound to the key pair that created it. Change the keys and every existing subscriber goes silent — no error, no warning, no way back.
iOS does not read action buttons out of a push payload. It draws a category that your app registered — which is why the same payload that works on Android shows nothing on an iPhone.
The FCM HTTP v1 API returns INVALID_ARGUMENT for about a dozen unrelated mistakes and tells you almost nothing about which one you made. Here is the list, ordered by how often it is actually the cause.
Most platforms collapse every delivery failure into "failed". Three of the most common failures mean completely different things, and treating them the same is how you either lose real subscribers or keep sending into the void.