What is a rewarded ad? An overview of rewarded video and other formats
Rewarded ads provide an opportunity for users to watch a video or engage with a playable ad in exchange for a reward within the app.
For example, mobile game players will eventually “die” upon reaching a critical point. The users are disappointed they did not complete the level, and wish they could continue playing instead of starting over from the beginning. In each rewarded ad “funnel,” there are four main events that can occur:
Yes, KFC's Game Console Is Real, And It Has A Chicken Warmer Movie Poster For Tom Holland's Cherry Was A Mistake, One Hilarious Mistake Some Of The Best Nintendo Switch Games Of. Sep 28, 2020 Game Killer is a free Android app that lets you use cheats and modify aspects of your favorite video games. It works by injecting code from the background while the game is running, allowing you to adjust whatever values you want in the title in question. Rewarded ads are ads that users have the option of interacting with in exchange for in-app rewards.This guide shows you how to integrate rewarded ads from AdMob into an Android app. Read some customer success stories: case study 1, case study 2.
Ad prompt, where the user is presented with the option to view an ad in exchange for a reward.
Opt-in, when the user opts-in to watch the ad.
Ad reward, whereby the user completes viewing the ad, and receives a reward such as an extra “life” or power-up.
Item used, once the user consumes the reward and is able to continue playing the game from where he or she left off.
Because users want to keep playing, they’ll often convert throughout the whole funnel.
Why use rewarded video ads?
With increasing competition in the mobile gaming market, developers need to be more focused on engagement and retention. As such, finding the right balance between monetization and user experience is critical to the success of the game. Rewarded ads are becoming one of the most popular ways to achieve that balance: over the last year, the number of apps using AdMob rewarded ads has quadrupled.1
A win for users: rewarded ads upgrade the app experience for free
Users love rewarded ads because instead of paying with money, they can pay with their time to get access to items that help them keep playing, progress faster, or get paid items. Additionally, rewarded ads put users in the driver’s seat of the ad experience by giving them the option to engage with ads. This opt-in structure makes rewarded ads safe to integrate without the risk of disrupting the user experience. In fact, in Google internal studies, 50% of users have reported that they would be less satisfied with their app experience if rewarded ads were removed.2
A win for developers: rewarded ads boost revenue and user engagement
Developers love rewarded ads because they boost revenue and keep users engaged. These formats are designed to effectively monetize non-spending users, while protecting the core app experience. Rewarded video ads generate a very high revenue per thousand impressions (RPM) because of the unprecedented video completion and engagement rates. Additionally, rewarded ads generally increase user retention because users are enticed to spend more time on the app, thanks to the rewards. Finally, rewarded ads provide a great opportunity to implement a hybrid monetization model with in-app purchases (IAP). An increasing number of games that monetize with in-app purchases now implement rewarded ads as a complement to IAP. Rewards can serve as an introduction to premium features, so not only do users play longer, more of them may eventually become spenders.
A win for advertisers: rewarded ads create valuable impressions
Advertisers love rewarded ads because they receive higher user engagement than other ad formats, resulting in a higher return on ad spend (ROAS). The ads are opt-in, and users often watch them until the end because of the rewards. As a result, performance advertisers see higher conversion rates and brand advertisers have increased brand awareness and recall.
How do rewarded ads drive results?
Developers using rewarded ads have seen a positive impact on both revenue and user engagement. Read on to learn how rewarded ads have increased value for developers like you.
Increased advertising revenue
NoSixFive, a gaming company based in Sofia, Bulgaria, built its game Jump Drive around the rewarded ad experience. The company was monetizing its existing apps with banner and interstitial ads, but wanted to try out rewarded ads. NoSixFive had originally chosen to work with AdMob because of the high fill rates and good user experience.
Semi-endless survival game Jump Drive was the perfect opportunity to implement rewarded ads from the ground up. Players collect energy cells, which they get to keep throughout the game. The cells unlock ships and new levels. NoSixFive decided to give players the option to double or triple the amount of cells collected during the run by watching a rewarded ad, granting players the opportunity to achieve even higher results. This implementation of rewarded ads led to high eCPMs, fantastic user engagement, and positive comments in the Google Play and Apple App store.
Higher IAP revenue
Using rewarded ads can be a great way to entice users to make in-app purchases. Chinese developer Avid.ly wanted to unlock another revenue stream to supplement the revenue it received from the typically small percentage of players who were buying digital goods. The developer decided to work with AdMob to try rewarded ads, but was worried about cannibalization of IAP revenue.
After implementing rewarded ads in one of its casual games, Avid.ly saw the exact opposite effect. Users bought in-app items 18% more often and spent 20% more time in the game. This app also saw total revenue grow by 40%. These results prompted Avid.ly to implement rewarded ads in all 50+ of its gaming apps. An increasing number of developers are finding success with this hybrid model of rewarded ads and IAP.
Positive impact to user engagement and retention
Apps using rewarded ads have seen an increase in session length and user retention. CookApps, a global gaming company founded in South Korea had acquired 80 million players in North America and Europe by 2016.
CookApps originally relied on IAP as its main revenue stream, but an increase in user costs combined with less organic traffic from social networks left the company looking to grow revenue. In May 2017, after adding rewarded video ads that enabled users to gain an additional life, CookApps saw a 16% increase in session length in one of its apps. Later that year, the company A/B tested ad placements to boost opt-in rates. The tests revealed it was possible to increase visibility of rewarded ads by placing them as soon as users exhausted their last life. Session length shot up by 211%.
Through optimizing its rewarded analytics funnel, CookApps was able to increase user engagement. The team decided to show rewarded ads to both paying and non-paying users based on the belief that increasing users’ screen time could increase the chance of users making an in-app purchase. When users have engaging and stimulating experiences with rewarded ads, their affinity for the app increases and they return again and again.
Ready to get started with rewarded ads? If your app has more than 100,000 downloads, we can help you with a free consultation. Request a free consultation.
Rewarded ads are ads that users have the option of interacting within exchangefor in-app rewards.This guide shows you how to integrate rewarded ads fromAdMob into an Android app.Read some customer success stories:case study 1,case study 2.
The new rewarded API is an improvement over thelegacy API becauseit allows you to- Cache multiple ads. The legacy rewarded API only lets you load one ad at atime, and you can't load a second ad until the first one finishes. The newrewarded API lets you cache multiple ads at the same time.
- Access the reward value at ad load time. The legacy implementation onlyprovides access to the reward when it's time to grant the user the reward.For apps that use the reward value from theAdMob UI, this improvement enables you to showthe user their reward before they watch the ad.
- Initialize mediation partners. If you use rewarded mediation, the newrewarded APIs support initialization of mediation adapters before the first adload. The legacy rewarded API does not initialize adapters, and mediationadapters were more likely to time out on the first request of a session.
Migrating from thelegacy rewarded API?Make sure to update your mediation adapters to the latest version, as theadapters had to migrate as well.
If you'd like to get an idea of how rewarded ads work, take a look at the demobelow. This demo shows the flow of rewarded video ads integrated in to a simplegame.Prerequisites
- Google Mobile Ads SDK 17.2.0 or higher.
- Follow the Get Started guide toimport the Google Mobile Ads SDK and update your Android manifest.
Create a rewarded ad object
Rewarded ads are requested and shown by RewardedAd
objects. The first step isinstantiating a RewardedAd
. This is done in the onCreate()
method of anActivity
in the following code snippet:
The constructor requires the following arguments:
- An
Activity
context - The ad unit ID to be used toload the rewarded ad
Always test with test ads
When building and testing your apps, make sure you use test ads rather thanlive, production ads. Failure to do so can lead to suspension of your account.
The easiest way to load test ads is to use our dedicated test ad unit ID forAndroid rewarded ads:
ca-app-pub-3940256099942544/5224354917
It's been specially configured to return test ads for every request, and you'refree to use it in your own apps while coding, testing, and debugging. Just makesure you replace it with your own ad unit ID before publishing your app.
For more information about how the Mobile Ads SDK's test ads work, see TestAds.
Load an ad
Note: Make all calls to the Mobile Ads SDK on the main thread.To load a rewarded ad, call the RewardedAd
object's loadAd()
method. Thismethod requires instances of AdRequest
and RewardedAdLoadCallback
asarguments.
Java
Kotlin
The onRewardedAdLoaded()
and onRewardedAdFailedToLoad()
methods of theRewardedAdLoadCallback
provide the result of the ad load operation.
Overridable methods | |
---|---|
onRewardedAdLoaded() | This method is executed when an ad has finished loading. |
onRewardedAdFailedToLoad() | This method is invoked when an ad fails to load. It includes an errorparameter of type LoadAdError that indicates what type of failureoccurred. For more information, refer to the Debugging Ad Load Errorsdocumentation. |
onRewardedAdFailedToLoad()
method is strongly discouraged. If you must load an ad fromonRewardedAdFailedToLoad()
, limit ad load retries to avoid continuousfailed ad requests in situations such as limited network connectivity.Show the ad
Before displaying a rewarded ad to users, you must present the user with anexplicit choice to view rewarded ad content in exchange for a reward. Rewardedads must always be an opt-in experience.
To show a RewardedAd
, use the isLoaded()
method to verify that it's finishedloading, then call show()
. The show()
method requires Activity
andRewardedAdCallback
instances as arguments. The Activity
instance should bethe activity from which the rewarded ad is presented.
The rewarded ad from the previous code example could be shown in a button'sOnClickListener
like this:
Receive ad event notifications
The RewardedAdCallback
provided to the show()
method gets notifications ofrewarded ad events. Each of the overridable methods in RewardedAdCallback
corresponds to an event in the lifecycle of a rewarded ad. For example, theonUserEarnedReward()
method is the perfect place to provide the user withtheir reward. Additional details on each ad event method is provided below.
Game Reward Ads Cheat Sheet
Overridable methods | |
---|---|
onRewardedAdOpened() | This method is invoked when the ad is displayed, covering the device'sscreen. |
onRewardedAdClosed() | This method is invoked when the rewarded ad is closed due to the usertapping on the close icon or using the back button. If your app paused its audiooutput or game loop, this is a great place to resume it. |
onUserEarnedReward() | The method is invoked when the user should be rewarded for interacting withthe ad. Reward details that were configured for your ad unit can be accessedthrough the getType() and getAmount() methods of theRewardItem parameter. |
onRewardedAdFailedToShow() | This method is invoked when an ad fails to display. It includes anadError parameter that indicates what type of failure occurred.The possible values of the error code (adError.getCode() ) aredefined as constants in the RewardedAdCallback class. |
Using RewardedAdCallback to preload the next rewarded ad
RewardedAd
is a one-time-use object. This means that once a rewarded ad isshown, the object can't be used to load another ad. To request another rewardedad, you'll need to create a new RewardedAd
object.
Cash Reward Ads
A best practice is to load another rewarded ad in the onRewardedAdClosed()
method on RewardedAdCallback
so that the next rewarded ad starts loading assoon as the previous one is dismissed:
Java
Kotlin
Loading multiple rewarded ads
To load multiple rewarded ads, follow the steps outlined in the create arewarded ad object and load an adsections for each ad you intend to load. The code snippet below demonstrates howto load two rewarded ads for two distinct ad placements.
FAQ
RewardedAd
?onUserEarnedReward()
callback is fired, RewardedAd
has agetRewardItem()
method that you can check to verify the reward amount after the ad has loaded.OnInitializationCompleteListener
even if a mediation network still hasn'tcompleted initialization.It is a best practice to load an ad inside the callback ofthe OnInitializationCompleteListener
. Even if a mediation network is notready, the Google Mobile Ads SDK will still ask that network for an ad. So if amediation network finishes initializing after the timeout, it can still servicefuture ad requests in that session.
You can continue to poll the initialization status of all adapters throughoutyour app session by calling MobileAds.getInitializationStatus()
.
AdapterStatus.getDescription()
describes why an adapter is not ready toservice ad requests.
Next steps
Create your own rewarded video ad unit in the AdMob UI.
Try another ad format: