TF

Developer Tools

Push Notification Tester for Firebase (FCM)

Send a test push notification to Android, iOS, or web device tokens through Firebase Cloud Messaging.

Runs locally in your browser — your input is not uploaded.

Privacy & security: your service account key stays in this tab’s memory and is used to sign a short-lived token. Notifications go straight from your browser to Google — nothing passes through ToolForge. Use a key you are allowed to use, and revoke it if it was shared with you.
Firebase console → Project settings → Service accounts → Generate new private key
Add your Firebase service account, paste device tokens, write a message, and send.

What is this tool?

Paste the FCM registration tokens your app or a teammate shared, write a title and message, and send a real push notification through the Firebase Cloud Messaging HTTP v1 API. Each token gets its own result, so you can spot expired or mismatched tokens at a glance — no backend or script required.

Firebase Cloud Messaging (FCM) delivers push notifications to Android, iOS (through APNs), and web apps. Each app install has a registration token, and the HTTP v1 API sends a message to one token at a time.

This tool signs a short-lived OAuth token from your service account with the Web Crypto API, then calls the FCM API directly from your browser. The key is never uploaded to ToolForge or saved.

Messages that contain a title or body are shown by the system. Messages with only custom data are delivered silently to your app, so you can test background handling too.

A service account key grants access to your Firebase project. Prefer a key you can revoke, and never paste a key you are not authorized to use.

How to use the Push Notification Tester

  1. In the Firebase console, open Project settings → Service accounts and generate a private key. Upload the downloaded JSON file or paste its contents.
  2. Paste the device tokens you want to reach — one per line, or separated by commas.
  3. Write a title and body. Optionally add an image URL and custom data for your app.
  4. Click Send notification, or tick Validate only to check the tokens without delivering anything.
  5. Read the result for each token. Use Copy failed tokens to clean up your list.

Examples

Custom data

Flat key/value pairs your app can read when the notification arrives or is tapped.

{"screen": "orders", "orderId": "1234"}

Frequently asked questions

Is my service account key uploaded?

No. The key is only kept in your browser tab’s memory. Your browser uses it to get a short-lived token from Google and sends the notifications to Google directly — ToolForge never sees the key, the tokens, or the message.

Where do I find device tokens?

Your app gets them from the Firebase SDK — getToken() on Android, iOS, and web. Log the token in a debug build, or ask the person testing the app to copy it from a debug screen and share it with you.

Why does a token fail with UNREGISTERED?

The token is no longer valid. The app was uninstalled, its data was cleared, or the token was refreshed. Get a new token from the device and remove the old one from your list.

Can I use the legacy FCM server key?

No. Google shut down the legacy FCM API in 2024. The HTTP v1 API used here needs a service account, which you can create in the Firebase console in a minute.

Does this work for iOS notifications?

Yes, as long as your Firebase project has an APNs key or certificate uploaded. FCM forwards the message to Apple. Expo push tokens and raw APNs device tokens are not supported.

Want more power later?

Premium tools, higher limits, and API access are on the roadmap. V1 stays free and private in your browser.