Firebase Cloud Messaging (FCM)
Learn how to use the Firebase Cloud Messaging (FCM) provider to send push notifications using Novu
This guide explains the process of configuring and using FCM with Novu, from getting your credentials to sending your first notification.
Step 1: Generate your service account key from Firebase
Get your project's service account credentials from the Firebase Console.
- Log in to the Firebase console.
- Create a new Firebase project or select an existing project.

- Click the gear icon ⚙️ next to Project Overview.
- Select Project settings.

- Click the Service accounts tab.
- Click the Generate new private key button. A confirmation menu appears.

- Click Generate key to download a JSON file containing your credentials.

- Open the downloaded JSON file and ensure it contains these fields:
Step 2: Connect FCM to Novu
Add the credentials to your FCM integration in the Novu dashboard.
- Log in to the Novu dashboard.
- Navigate to the Integration Store.
- Click Connect provider.
- Click the Push tab, then select Firebase Cloud Messaging (FCM).
- Open the JSON file you downloaded from Firebase in Step 1.
- Copy the entire content of the JSON file and paste it into the Service Account field in the FCM integration modal.

- Click Create Integration to save the integration.
Step 3: Register a subscriber's device token
Before Novu can send a push notification to your subscriber, you must associate their device's unique push token with their Novu subscriber profile.
You can do this by making an API call to update the subscriber's credentials.
MESSAGE_FAILED webhook.Step 4: Send a notification
Now you're ready to send a push notification. You can trigger a notification to a subscriber who has a registered device token.
Using multiple FCM integrations
If you have multiple active FCM integrations, then you can specify which integration to associate the tokens with by providing the integrationIdentifier.
You can find this identifier in your Novu dashboard on the integration's settings page.

Using overrides to customize notifications
Novu lets you customize the behavior of push notifications by using the overrides field when triggering workflows. Overrides give you full control over message content and delivery parameters that aren’t configurable from the Novu workflow editor.
To learn more about how overrides work across all channels, see the Trigger Overrides documentation.
Override FCM field
Overrides let you send platform-specific data that is not available in the workflow editor. The overrides field supports:
apnsoverridesandroidoverrideswebpushoverridesfcmOptionsoverrides
| Override field | Type / Interface | Link |
|---|---|---|
| android | AndroidConfig | https://firebase.google.com/docs/reference/admin/node/firebase-admin.messaging.androidconfig |
| apns | ApnsConfig | https://firebase.google.com/docs/reference/admin/node/firebase-admin.messaging.apnsconfig |
| webPush | WebpushConfig | https://firebase.google.com/docs/reference/admin/node/firebase-admin.messaging.webpushconfig |
| fcmOptions | FcmOptions | https://firebase.google.com/docs/reference/admin/node/firebase-admin.messaging.fcmoptions |
You can use these fields to customize how notifications are sent to Android, iOS via APNS, or web clients.
Override FCM notification content
By default, Novu sends the FCM notification content written in the step editor workflow. However, you can override the notification content by using the overrides field.
Sending notifications to FCM topics
FCM topics are used to send notifications to multiple devices at once. In the overrides, you need to specify the topic you want to send the notification to.
Web push with relative links
Suppose you're using the Firebase (FCM) provider to send push notifications to web browsers via Novu and want users to be returned to the website after clicking the notification.
In that case, you must use the link property with a relative URL.