If you’ve built a React Native application and are looking for ways to generate revenue, Google AdMob is one of the most popular and beginner-friendly monetization solutions available today.
With AdMob, you can display advertisements inside your application and earn money whenever users view or interact with those ads. Whether you’re developing a utility app, a social platform, an educational app, or a game, AdMob can help transform your project into a source of recurring income.
In this tutorial, you’ll learn how to integrate Google AdMob into a React Native application using the widely adopted react-native-google-mobile-ads package.
Why Use AdMob?
Google AdMob is trusted by millions of developers worldwide because it offers:
- Easy integration
- Global advertiser network
- Multiple ad formats
- Real-time analytics
- Revenue optimization tools
- Support for Android and iOS
Some of the most successful mobile applications use AdMob as part of their monetization strategy.
Ad Formats Available in AdMob
Before implementing AdMob, it’s important to understand the different ad formats available.
Banner Ads
Banner ads are small advertisements displayed at the top or bottom of the screen.
Advantages:
- Easy to implement
- Non-intrusive
- Suitable for most applications
Disadvantages:
- Lower revenue compared to other ad formats
Interstitial Ads
Interstitial ads are full-screen advertisements that appear during natural transitions within the application.
Examples:
- Between game levels
- After completing a task
- Before navigating to another screen
Advantages:
- Higher CPM
- Better revenue potential
Disadvantages:
- Can negatively affect user experience if overused
Rewarded Ads
Rewarded ads allow users to watch a video advertisement voluntarily in exchange for rewards.
Examples:
- Extra lives in games
- Premium features
- Virtual currency
Advantages:
- Highest engagement
- Excellent revenue generation
- Positive user experience
App Open Ads
These ads appear when users launch the application.
Advantages:
- Monetize application launches
- Minimal interruption when implemented correctly
Prerequisites
Before getting started, ensure you have:
- React Native 0.75 or newer
- Android Studio installed
- Xcode installed (for iOS development)
- Google AdMob account
- Physical device for testing
- Basic React Native knowledge
Step 1: Create an AdMob Account
Visit the AdMob dashboard:
Sign in using your Google account.
After creating your account:
- Click Apps
- Select Add App
- Choose Android or iOS
- Enter your application details
After registration, AdMob will provide:
- App ID
- Ad Unit IDs
These identifiers are required during configuration.
Example:
App ID:
ca-app-pub-xxxxxxxxxxxxxxxx~1234567890
Banner Ad Unit:
ca-app-pub-xxxxxxxxxxxxxxxx/1234567890
Save them securely.
Step 2: Install React Native Google Mobile Ads
Install the package using npm:
npm install react-native-google-mobile-ads
Or using Yarn:
yarn add react-native-google-mobile-ads
For iOS:
cd ios
pod install
Step 3: Configure Android
Open:
android/app/src/main/AndroidManifest.xml
Inside the <application> tag add:
<meta-data
android:name="com.google.android.gms.ads.APPLICATION_ID"
android:value="ca-app-pub-xxxxxxxxxxxxxxxx~1234567890"/>
Replace the example value with your actual App ID.
Step 4: Configure iOS
Open:
ios/YourProject/Info.plist
Add:
<key>GADApplicationIdentifier</key>
<string>ca-app-pub-xxxxxxxxxxxxxxxx~1234567890</string>
After updating the file, execute:
cd ios
pod install
Step 5: Initialize AdMob
Initialize AdMob when your application starts.
import mobileAds from 'react-native-google-mobile-ads';
mobileAds()
.initialize()
.then(() => {
console.log('AdMob Initialized');
});
Using React Hooks:
import React, { useEffect } from 'react';
import mobileAds from 'react-native-google-mobile-ads';
export default function App() {
useEffect(() => {
mobileAds().initialize();
}, []);
return null;
}
Step 6: Add a Banner Ad
Banner ads are the simplest way to start monetizing.
Import the required components:
import {
BannerAd,
BannerAdSize,
TestIds,
} from 'react-native-google-mobile-ads';
Display the ad:
<BannerAd
unitId={TestIds.BANNER}
size={BannerAdSize.BANNER}
/>
Complete example:
import React from 'react';
import { View } from 'react-native';
import {
BannerAd,
BannerAdSize,
TestIds,
} from 'react-native-google-mobile-ads';
export default function HomeScreen() {
return (
<View style={{ flex: 1 }}>
<BannerAd
unitId={TestIds.BANNER}
size={BannerAdSize.BANNER}
/>
</View>
);
}
Step 7: Implement Interstitial Ads
Interstitial ads typically generate higher revenue.
import {
InterstitialAd,
TestIds,
AdEventType,
} from 'react-native-google-mobile-ads';
const interstitial = InterstitialAd.createForAdRequest(
TestIds.INTERSTITIAL
);
interstitial.addAdEventListener(
AdEventType.LOADED,
() => {
interstitial.show();
}
);
interstitial.load();
A common strategy is to show an interstitial ad every few user actions rather than after every interaction.
Step 8: Implement Rewarded Ads
Rewarded ads are often the most profitable format.
import {
RewardedAd,
RewardedAdEventType,
TestIds,
} from 'react-native-google-mobile-ads';
const rewarded = RewardedAd.createForAdRequest(
TestIds.REWARDED
);
rewarded.addAdEventListener(
RewardedAdEventType.EARNED_REWARD,
reward => {
console.log('Reward earned:', reward);
}
);
rewarded.load();
Show the ad:
rewarded.show();
Example reward scenarios:
- Unlock premium content
- Extra game lives
- Remove cooldown timers
- Access advanced features
Step 9: Use Test Ads During Development
Never use production ads while testing.
Google provides dedicated test IDs:
TestIds.BANNER
TestIds.INTERSTITIAL
TestIds.REWARDED
Using real advertisements during development can result in account suspension.
Always test using Google’s official test units.
Step 10: Replace Test IDs with Production IDs
When your application is ready for release:
Replace:
TestIds.BANNER
With:
'ca-app-pub-xxxxxxxxxxxxxxxx/1234567890'
Example:
<BannerAd
unitId="ca-app-pub-xxxxxxxxxxxxxxxx/1234567890"
size={BannerAdSize.BANNER}
/>
Do the same for interstitial and rewarded advertisements.
Best Practices for Maximizing Revenue
Use Multiple Ad Formats
Applications that combine:
- Banner Ads
- Interstitial Ads
- Rewarded Ads
typically generate higher revenue than applications relying on a single ad type.
Prioritize User Experience
Aggressive advertising can lead to:
- Uninstalls
- Negative reviews
- Lower retention
A good user experience generally results in better long-term earnings.
Use Rewarded Ads Whenever Possible
Rewarded ads provide:
- Better engagement
- Higher CPM
- Improved user satisfaction
Many successful mobile games rely heavily on rewarded advertisements.
Monitor Analytics
Track metrics such as:
- Impressions
- eCPM
- Fill Rate
- CTR
- Revenue
These insights help identify optimization opportunities.
Common Issues and Solutions
Ads Are Not Displaying
Check:
- Internet connection
- Correct App ID
- Correct Ad Unit ID
- AdMob account status
- Device logs
Android Build Errors
Clean the project:
cd android
./gradlew clean
Rebuild:
npx react-native run-android
iOS Ads Not Appearing
Run:
cd ios
pod install
Then rebuild the application.
How Much Can You Earn with AdMob?
Revenue depends on several factors:
- User location
- Ad format
- Session duration
- Number of impressions
- Industry niche
Generally:
- Rewarded ads generate the highest revenue
- Interstitial ads generate moderate revenue
- Banner ads generate the lowest revenue
Applications with active users in countries such as the United States, Canada, Australia, and the United Kingdom often receive significantly higher CPM rates.
Final Thoughts
Google AdMob remains one of the easiest and most effective monetization solutions for React Native developers in 2026.
By integrating banner ads, interstitial ads, and rewarded ads strategically, you can create a sustainable revenue stream while maintaining a positive user experience.
For most applications, the best strategy is to start with banner ads, add rewarded ads for premium features, and carefully introduce interstitial ads during natural user transitions.
As your application grows, you can further increase earnings through AdMob Mediation, advanced targeting, and A/B testing to optimize performance and maximize revenue.
Happy coding and happy monetizing!
Leave a Reply