Skip to content

Advanced Settings

Ad Placements

You can set a placement name for each ad unit (for example, “Rewarded VideoLevels”, “INTER_levelEnd”, or “RewardedVideoCoinStore”). This can help you aggregate statistics for different placement categories. The following snippets show you how to set the placement name for various ad formats.

AppLovinMAX.createBanner(«ad-unit-ID», «position»);
AppLovinMAX.set_banner_placement(«ad-unit-ID», «placement»);

Mute Audio

You can mute audio for some mediated SDK networks when you launch your app. The networks that support this functionality via the AppLovin SDK are Google bidding and Google AdMob, AppLovin, DT Exchange, Google Ad Manager, LINE, Mintegral, Tencent, and Verve. For other networks, consult your network’s account team to learn whether this functionality is available and how to access it.

The following code snippets show how you mute audio on those networks that support this feature:


Enable Verbose Logging

Enable verbose logs with the following call:


To verify that you enabled verbose logs successfully, check for the line that reads Verbose Logging On: true in the initialization section of the AppLovin SDK logs:

AppLovin SDK
Version: 11.4.2
Verbose Logging On: true

AppLovin SDK tags its logs with the tag “/AppLovinSdk: [AppLovinSdk]”.

Creative ID and Network Name

You can retrieve the creative ID and the network name of displayed ads from various mediated networks. Refer to the Creative Debugger documentation for more information.

DSP Name

You can retrieve the name of the DSP for a MAX ad served from AppLovin Exchange via the ad’s dspName property:

func _on_interstitial_ad_loaded(ad_unit_id: String, ad_info: AppLovinMAX.AdInfo):
print("AppLovin Exchange DSP Name: " + ad_info.dsp_name)

Impression-Level User Revenue API

You can access impression-level user revenue data on the client side. You can use this data to compare different sources and campaigns. You can also access this data by using the MAX User Revenue API.

You can share impression-level ad revenue data with your mobile measurement partner of choice, such as Adjust for all supported networks.

You can retrieve the revenue amount in all ad lifecycle callbacks. The following example shows how to do this within the “ad revenue paid” callback:

inter_listener.on_ad_revenue_paid = func(ad_unit_identifier: String, ad_info: AppLovinMAX.AdInfo):
print("Interstitial ad revenue paid: " + ad_info.revenue")
rewarded_listener.on_ad_loaded = func(ad_unit_identifier: String, ad_info: AppLovinMAX.AdInfo):
print("Rewarded ad revenue paid: " + ad_info.revenue")
banner_listener.on_ad_loaded = func(ad_unit_identifier: String, ad_info: AppLovinMAX.AdInfo):
print("Banner ad revenue paid: " + ad_info.revenue")
mrec_listener.on_ad_loaded = func(ad_unit_identifier: String, ad_info: AppLovinMAX.AdInfo):
print("MREC ad revenue paid: " + ad_info.revenue")

Waterfall Information API

The Waterfall Information API tells you about the current waterfall for an ad (one that has loaded or failed to load). The API returns the ad load state, latency, credentials, and mediated network information for each ad in the waterfall. If an ad in the waterfall fails to load, the API provides error information.

AdLoadState Values

0Ad Load Not Attempted
1Ad Loaded
2Ad Failed To Load