This guide explains how to enable test ads in your ads integration. It's important to enable test ads during development so that you can click on them without charging Google advertisers. If you click on too many ads without being in test mode, you risk your account being flagged for invalid activity.
There are two ways to get test ads:
Use one of Google's sample ad units.
Use your own ad unit and enable test devices.
Prerequisites
Complete Get Started.
Import the Google Mobile Ads Flutter plugin to your Flutter app.
Sample ad units
The quickest way to enable testing is to use Google-provided test ad units. These ad units are not associated with your AdMob account, so there's no risk of your account generating invalid traffic when using these ad units.
It is important to note that Google has different test ad units for Android and iOS. You'll need to use an iOS test ad unit for making test ad requests on iOS and an Android test ad unit for making requests on Android.
These ad units point to specific test creatives.
Enable test devices
If you want to do more rigorous testing with production-looking ads, you can now configure your device as a test device and use your own ad unit IDs that you've created in the AdMob UI.
Follow the steps below to add your device as a test device.
Add your test device in the AdMob UI
For a simple, non-programmatic way to add a test device and test new or existing app builds, use the AdMob UI. Learn how.
Add your test device programmatically
If you want to test ads in your app as you're developing, follow the steps below to programmatically register your test device.
Run an app configured with the Mobile Ads SDK and make an ad request using one of the test ad unit IDs listed above.
void loadBanner() { final adUnitId = Platform.isAndroid ? 'ca-app-pub-3940256099942544/6300978111' : 'ca-app-pub-3940256099942544/2934735716'; final bannerAd = BannerAd( adUnitId: adUnitId, request: AdRequest(), size: AdSize.banner, ); bannerAd.load(); }
Check the console or logcat output for a message that looks like this:
Android
I/Ads: Use RequestConfiguration.Builder .setTestDeviceIds(Arrays.asList("33BE2250B43518CCDA7DE426D04EE231")) to get test ads on this device.
iOS
<Google> To get test ads on this device, set: GADMobileAds.sharedInstance.requestConfiguration.testDeviceIdentifiers = @[ @"2077ef9a63d2b398840261c8221a0c9b" ];
Copy your alphanumeric test device ID to your clipboard.
Modify your code to call
MobileAds.instance.updateRequestConfiguration
with your test device IDs list before making the ad request.MobileAds.instance.updateRequestConfiguration( RequestConfiguration(testDeviceIds: ['33BE2250B43518CCDA7DE426D04EE231']));
Re-run your app. If you correctly added your device as a test device, you will see a Test Ad label centered at the top of banner, interstitial, and rewarded ads:
Ads with this Test Ad label are safe to click. Any requests, impressions, and clicks on test ads do not show up in your account's reports.
Now that your device is registered as a test device, you can begin receiving more realistic test ads by replacing the test
adUnitID
with your ownadUnitID
.
Testing with mediation
Google's sample ad units only show Google Ads. To test your mediation configuration, you must use the enable test devices approach.
Mediated ads do NOT render a Test Ad label. You are responsible for ensuring that test ads are enabled for each of your mediation networks so these networks don't flag your account for invalid activity. See each network's respective mediation guide on Android and iOS for more information.
If you aren't sure whether a mediation ad network adapter supports test ads, it
is safest to avoid clicking on ads from that network during development. You can
check Ad.responseInfo
on any of the ad formats to figure out which ad network served the current ad.