2026-10-19

Debugging push delivery with raw APNs and FCM responses

Every Perchpush delivery attempt stores what Apple, Google or the browser actually answered: the FCM error code, the APNs reason and status, the web push HTTP status.

Open a device and you see its full timeline. Common culprits: a sandbox APNs token sent to production (BadDeviceToken), a token from another Firebase project (mismatched-credential), or an expired web push subscription (410).

Click Explain on any failure and Perchpush AI tells you what it means and how to fix it.