Skip to main content
Version: v5


Most complete Admob plugin with support for Tappx ads. Monetize your apps and games with AdMob ads, using latest Google AdMob SDK. With this plugin you can show AdMob ads easily!


  • Banner ads (top and bottom)
  • Interstitial ads
  • Rewarded ads
  • Tappx ads

Stuck on a Cordova issue?

Don't waste precious time on plugin issues.

If you're building a serious project, you can't afford to spend hours troubleshooting. Ionic’s experts offer premium advisory services for both community plugins and premier plugins.


$ npm install cordova-admob 
$ npm install @awesome-cordova-plugins/admob
$ ionic cap sync

Supported Platforms

  • Android
  • iOS
  • Browser



Learn more about using Ionic Native components in React


Note: No ads will be served on apps with package name io.ionic.starter. This is the default package name for new ionic apps. Make sure to rename the package name so ads can be displayed.

import { Admob, AdmobOptions } from '@awesome-cordova-plugins/admob';

constructor(private admob: Admob) {
// Admob options config
const admobOptions: AdmobOptions = {
bannerAdId: 'XXX-XXXX-XXXX',
interstitialAdId: 'XXX-XXXX-XXXX',
rewardedAdId: 'XXX-XXXX-XXXX',
isTesting: true,
autoShowBanner: false,
autoShowInterstitial: false,
autoShowRewarded: false,
adSize: this.admob.AD_SIZE.BANNER

// Set admob options
.then(() => console.log('Admob options have been successfully set'))
.catch(err => console.error('Error setting admob options:', err));

// (Optionally) Load banner ad, in order to have it ready to show
.then(() => console.log('Banner ad loaded'))
.catch(err => console.error('Error loading banner ad:', err));

// Show banner ad (createBannerView must be called before and onAdLoaded() event raised)
this.admob.onAdLoaded().subscribe((ad) => {
if (ad.adType === this.admob.AD_TYPE.BANNER) {
.then(() => console.log('Banner ad shown'))
.catch(err => console.error('Error showing banner ad:', err));

// Hide banner ad, but do not destroy it, so it can be shown later on
// See destroyBannerView in order to hide and destroy banner ad
.then(() => console.log('Banner ad hidden'))
.catch(err => console.error('Error hiding banner ad:', err));

// Request an interstitial ad, in order to be shown later on
// It is possible to autoshow it via options parameter, see docs
.then(() => console.log('Interstitial ad loaded'))
.catch(err => console.error('Error loading interstitial ad:', err));

// Show an interstitial ad (requestInterstitialAd must be called before)
this.admob.onAdLoaded().subscribe((ad) => {
if (ad.adType === this.admob.AD_TYPE.INTERSTITIAL) {
.then(() => console.log('Interstitial ad shown'))
.catch(err => console.error('Error showing interstitial ad:', err));

// Request a rewarded ad
.then(() => console.log('Rewarded ad loaded'))
.catch(err => console.error('Error loading rewarded ad:', err));

// Show rewarded ad (requestRewardedAd must be called before)
this.admob.onAdLoaded().subscribe((ad) => {
if (ad.adType === this.admob.AD_TYPE.REWARDED) {
.then(() => console.log('Rewarded ad shown'))
.catch(err => console.error('Error showing rewarded ad:', err));

// Hide and destroy banner or interstitial ad
.then(() => console.log('Banner or interstitial ad destroyed'))
.catch(err => console.error('Error destroying banner or interstitial ad:', err));

// On Ad loaded event
this.admob.onAdLoaded().subscribe((ad) => {
if (ad.adType === this.admob.AD_TYPE.BANNER) {
console.log('Banner ad is loaded');
} else if (ad.adType === this.admob.AD_TYPE.INTERSTITIAL) {
console.log('Interstitial ad is loaded');
} else if (ad.adType === this.admob.AD_TYPE.REWARDED) {
console.log('Rewarded ad is loaded');

// On ad failed to load
this.admob.onAdFailedToLoad().subscribe(err => console.log('Error loading ad:', err));

// On interstitial ad opened
this.admob.onAdOpened().subscribe(() => console.log('Interstitial ad opened'));

// On interstitial ad closed
this.admob.onAdClosed().subscribe(() => console.log('Interstitial ad closed'));

// On ad clicked and left application
this.admob.onAdLeftApplication().subscribe(() => console.log('Ad lefted application'));

// On user ad rewarded
this.admob.onRewardedAd().subscribe(() => console.log('The user has been rewarded'));

// On rewarded ad video started
this.admob.onRewardedAdVideoStarted().subscribe(() => console.log('Rewarded ad vieo started'));

// On rewarded ad video completed
this.admob.onRewardedAdVideoCompleted().subscribe(() => console.log('Rewarded ad video completed'));