Google AdMob plugin for .NET MAUI

July 5, 2026 · View on GitHub

NuGet version (Plugin.AdMob) NuGet pre-release (Plugin.AdMob) NuGet downloads (Plugin.AdMob) MIT license

Monetize your .NET MAUI app with Google AdMob ads on Android and iOS — banner, interstitial, rewarded, rewarded interstitial, app open, and native ads (native video coming soon) — with GDPR consent handled for you via Google's User Messaging Platform (UMP). Free and open source, with every feature included.

dotnet add package Plugin.AdMob

Features

BannerInterstitialRewardedRewarded interstitialApp openNativeNative videoConsent (UMP)
Android➡️ In progress
iOS➡️ In progress

Why Plugin.AdMob?

  • Every AdMob ad format — banners in all sizes (including custom), full-screen interstitial, rewarded, and rewarded interstitial ads, app open ads, and fully customizable native ads (native video coming soon).
  • Free and open source — MIT-licensed, no paid tiers, no locked features.
  • Consent built in — the Google UMP consent form (GDPR) is shown automatically on startup when required, or take full control yourself via IAdConsentService.
  • MAUI-first API — drop a BannerAd or NativeAdView into your XAML, and use dependency-injected services (IInterstitialAdService, IRewardedAdService, IAppOpenAdService, ...) for full-screen ads.
  • Test ads out of the box — set AdConfig.UseTestAdUnitIds = true and develop safely against Google's test ad units.
  • Cross-platform friendly — your app still compiles and runs on Windows and Mac Catalyst; ads are simply not shown there.
  • Actively maintained — built for .NET 10 and the latest .NET MAUI, on top of up-to-date Google Mobile Ads SDK bindings.

Quick start

1. Install the package:

dotnet add package Plugin.AdMob

2. Initialize the plugin in your MauiProgram.cs:

builder
    .UseMauiApp<App>()
    .UseAdMob();

Then complete the one-time platform configuration (Android manifest, iOS Info.plist) described in the Setup guide.

3. Show a banner ad by dropping the control into any page:

<ContentPage xmlns:admob="clr-namespace:Plugin.AdMob;assembly=Plugin.AdMob"
             ...>

    <admob:BannerAd AdUnitId="ca-app-pub-xxxxxxxxxxxxxxxx/xxxxxxxxxx" />

</ContentPage>

4. Show an interstitial ad:

var interstitialAdService = IPlatformApplication.Current.Services.GetRequiredService<IInterstitialAdService>();
interstitialAdService.PrepareAd();
// Once loaded (OnAdLoaded), e.g. between levels:
interstitialAdService.ShowAd();

Tip: no ad unit IDs yet? Set AdConfig.UseTestAdUnitIds = true to use Google's test ads while developing.

📽️ Video tutorial

How to display an AdMob banner ad in your .NET MAUI app in under 5 minutes

Documentation

  1. Setup — initialization, Android manifest and iOS Info.plist configuration
  2. Configuration — default ad unit IDs, test ads, test devices
  3. Consent — GDPR consent with Google UMP, debug geographies
  4. Banner ads — all banner sizes, custom sizes, events
  5. Interstitial ads — preload and show full-screen ads
  6. Rewarded ads — reward users for watching ads
  7. Rewarded interstitial ads
  8. Native ads — design your own ad layout
  9. App open ads — ads on app launch and foregrounding
  10. Troubleshooting
  11. Samples

Contributing & support

Found a bug or missing a feature? Open an issue — pull requests are welcome.

If Plugin.AdMob helps your app earn money, consider giving the repo a ⭐ — it helps other .NET MAUI developers discover it.


This project has no affiliation with Google, Microsoft, or the MAUI/Xamarin teams. AdMob is a trademark of Google LLC.