Enabling test ads

This guide explains how to receive test ads in your ads integration. It is important to use 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:

  1. Use one of Google's demo ad units.
  2. Use your own ad unit and enable test mode.

Prerequisite

Demo ad units

The quickest way to enable testing is to use Google-provided demo 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.

Here are demo ad units that point to specific test creatives for each format:

Ad format Demo ad unit ID
App Open ca-app-pub-3940256099942544/5575463023
Adaptive Banner ca-app-pub-3940256099942544/2435281174
Fixed Size Banner ca-app-pub-3940256099942544/2934735716
Interstitial ca-app-pub-3940256099942544/4411468910
Rewarded Ads ca-app-pub-3940256099942544/1712485313
Rewarded Interstitial ca-app-pub-3940256099942544/6978759866
Native ca-app-pub-3940256099942544/3986624511
Native Video ca-app-pub-3940256099942544/2521693316

Enable test devices (Test mode)

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. Test devices can either be added in the AdMob UI or programmatically using the Google Mobile Ads SDK.

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.

  1. Load your ads-integrated app and make an ad request.
  2. Check the console for a message that looks like this:
    <Google> To get test ads on this device, set:
    GADMobileAds.sharedInstance.requestConfiguration.testDeviceIdentifiers =
    @[ @"2077ef9a63d2b398840261c8221a0c9b" ];
    Copy your test device ID to your clipboard.
  3. Modify your code to set the test device ID through testDeviceIdentifiers:

    Swift

    GADMobileAds.sharedInstance().requestConfiguration.testDeviceIdentifiers =
        [ "2077ef9a63d2b398840261c8221a0c9b" ] // Sample device ID

    Objective-C

    GADMobileAds.sharedInstance.requestConfiguration.testDeviceIdentifiers =
        @[ @"2077ef9a63d2b398840261c8221a0c9b"  ]; // Sample device ID
  4. Re-run your app. If the ad is a Google ad, you'll see a Test mode label centered at the top of the ad (banner, interstitial, or rewarded ad):

    For native advanced ads, the headline asset is prepended with the string Test mode.

    Ads with this Test mode label are safe to click. Requests, impressions, and clicks on ads in test mode will not show up in your account's reports.

Testing with mediation

Google's demo 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 mode label. You are responsible for ensuring that test mode is enabled for each of your mediation networks so that these networks don't flag your account for invalid activity. See each network's respective mediation guide for more information.

If you aren't sure whether a mediation ad network adapter provides a test mode, it is safest to avoid clicking on ads from that network during development. You can use the adNetworkClassName property on any of the ad formats to figure out which ad network served the current ad.