Jump to top



A class for interacting and showing Rewarded Ads.

An Rewarded advert can be pre-loaded and shown at a suitable point in your apps flow, such as at the end of a level in a game. The content of a rewarded advert can be controlled via your AdMob dashboard. Typically users are rewarded after completing a specific advert action (e.g. watching a video or submitting an option via an interactive form). Events (such as the user earning a reward or closing a rewarded advert early) are sent back for you to handle accordingly within your application.


First create a new Rewarded instance, passing in your Ad Unit ID from the Firebase console, and any additional request options. The example below will present a test advert, and only request a non-personalized ad.

import { RewardedAd, TestIds } from '@react-native-firebase/admob';

const rewarded = RewardedAd.createForAdRequest(TestIds.REWARDED, {
    requestNonPersonalizedAdsOnly: true,

Each advert needs to be loaded from AdMob before being shown. It is recommended this is performed before the user reaches the checkpoint to show the advert, so it's ready to go. Before loading the advert, we need to setup event listeners to listen for updates from AdMob, such as advert loaded or failed to load.

Event types match the AdEventType or RewardedAdEventType interface. The potential user reward for rewarded adverts are passed back to the event handler on advert load and when the user earns the reward.

import { RewardedAdEventType } from '@react-native-firebase/admob';

rewarded.onAdEvent((type, error, reward) => {
  if (type === RewardedAdEventType.LOADED) {
  if (type === RewardedAdEventType.EARNED_REWARD) {
    console.log('User earned reward of ', reward);


The rewarded advert will be presented to the user, and several more events can be triggered such as the user clicking the advert, closing it or completing the action.




The Ad Unit ID for this AdMob ad.

adUnitId: string;



Whether the advert is loaded and can be shown.

loaded: boolean;




Start loading the advert with the provided RequestOptions.

load(): void;



Listen to ad events. See AdEventTypes for more information.

onAdEvent(listener: AdEventListener): Function;



Show the loaded advert to the user.

show(showOptions?: AdShowOptions): Promise<void>;



Creates a new RewardedAd instance.

createForAdRequest(adUnitId: string, requestOptions?: RequestOptions): RewardedAd;