Note: Effective April 20th, 2023, AppLovin will be updating the reporting API request window to 45 days. More information here. |
Note: AppLovin will be deprecating our External App ID for advertisers on May 1st, 2023. Here's the timeline:
|
Use this Reporting API to get aggregated campaign data in either JSON or CSV format.
Request Format
Make report requests by sending HTTP GET
requests to one of the following base URLs:
https://r.applovin.com/report
https://r.applovin.com/probabilisticReport
(For advertising only. All values derived from installs and spend are based on probabilistic install data.)https://r.applovin.com/skaReport
(For advertising only. This is a filtering of billable numbers to just SKA-derived values. This endpoint has limited dimensions and metrics)
Required Parameters
Parameter | Purpose |
---|---|
api_key |
the advertiser’s API key for Reporting (a.k.a. Report Key) You can find this Report Key in the Keys tab of the account page in your AppLovin dashboard. If the value is missing, please send an email to support@applovin.com and include the email address associated with your account. |
start |
the start date of the report Accepts a date in YYYY-MM-DD format or a Unix timestamp. For example, |
end |
the end date of the report Accepts date in YYYY-MM-DD format or a Unix timestamp. For example, |
format |
the format for the report Accepts |
columns |
a comma-separated list of columns for the report See the allowed columns below. For example, |
report_type |
tells the API to respond with If this parameter is omitted, the API will default to |
Optional Parameters
Parameter | Purpose |
---|---|
limit |
the limit on the number of rows returned, for example, 500 |
offset |
the offset to begin fetching rows at, for example, 100 |
having |
allows complex filtering on numeric values This parameter accepts URL-encoded values of numeric columns, comparison operators, and logical operators, for example: Note: This will slow down the response and increase the likelihood of timeouts. |
Allowed Publisher Columns
Column Name | Contains |
---|---|
day |
date of reporting data |
hour |
hour of reporting data (only available for the past 30 days) |
impressions |
number of impressions |
clicks |
number of clicks |
ctr |
number of clicks ÷ number of impressions |
revenue |
money earned |
ecpm |
money earned per 1000 impressions |
country |
two letter country code |
ad_type |
GRAPHIC , PLAY , VIDEO , REWARD , APPOPEN , or MRAID |
size |
ad size (INTER , BANNER , MREC , LEADER , or NATIVE ) |
device_type |
phone , tablet , or other |
platform |
android , ios , fireos , or tvos |
application |
app name |
package_name |
apps package name or bundle ID |
store_id |
the numeric portion of the iTunes ID on iOS, or the If the iTunes ID is not known to AppLovin, the Bundle ID will be returned instead |
placement |
placement name |
application_is_hidden |
is the app hidden in the dashboard |
zone |
Zone name, if available to your account |
zone_id |
Zone ID, if available to your account Please contact your account manager if you are interested in using Zones. |
bidding_integration |
the integration that AppLovin is bidding through to serve ads (e.g. MAX or Admob Open Bidding) If you have a traditional integration, this column will contain |
Allowed Advertiser Columns
Column Name | Contains |
---|---|
day |
date of reporting data |
impressions |
number of impressions |
clicks |
number of clicks |
ctr |
number of clicks ÷ number of impressions |
conversions |
number of conversions (installs) |
conversion_rate |
number of conversions ÷ number of clicks |
average_cpa |
average cost per conversion |
average_cpc |
average cost per click |
ad |
ad name |
ad_id |
ad ID. This does not change if the ad name changes |
creative_set |
creative set name |
creative_set_id |
creative set ID. This does not change if the creative set name changes |
custom_page_id |
the iOS Custom Product Page or Android Store Listing associated with the creative set |
country |
two letter country code |
campaign |
campaign name |
app_id_external |
hashed application ID (commonly referred to as “site ID”). Deprecated, will stop populating on July 31st, 2023 |
|
encrypted application ID (Used with API Source bidding) |
traffic_source |
AppLovin , or the name of the exchange |
ad_type |
GRAPHIC , VIDEO , REWARD , APPOPEN , or PLAY |
cost |
advertiser spend |
sales |
count of attributed sales events (requires setting up revenue postbacks) |
first_purchase |
count of users that made their first purchase (requires setting up revenue postbacks) |
size |
ad size (INTER , BANNER , MREC , LEADER , PRELOAD , or NATIVE ) |
device_type |
phone , tablet , or other |
platform |
android , ios , fireos , or tvos |
campaign_package_name |
package name or Bundle ID of the app being promoted |
campaign_store_id |
the numeric portion of the iTunes ID of the promoted app on iOS and the camaign_package_name otherwise |
campaign_id_external |
unique reference to a campaign This doesn’t change when the campaign is renamed. It is the same value as the |
campaign_ad_type |
ua for user acquisition, or rt for retargeting |
application |
source application name |
installs |
SKAdNetwork derived installs with redownload=false. /skaReport only, for other reports, use |
redownloads |
SKAdNetwork derived installs with redownload=true. /skaReport only, for other reports, use |
Filtering Columns
You can filter reports by any column. When you do so, you search for a direct match to any of the filters.
To filter by a column, add the following URL parameter: filter_columnname=onefilter,anotherfilter,thirdfilter
For example, if you want to see data only for the Android platform, set the following URL parameter: filter_platform=Android
See the table above for a list of all columns.
Some columns support negative filters via filter_not_columnname=onefilter,anotherfilter
. Additionally, the custom_page_id
dimension supports filter_null_custom_page_id
, filter_blank_custom_page_id
, filter_not_null_custom_page_id
, and filter_not_blank_custom_page_id
options. These options do not require a value, ie ...&filter_not_null_custom_page_id=&filter_not_blank_custom_page_id=&...
Sorting Columns
You sort reports in a similar way to how you filter reports.
For example, to sort a report by campaign_name
, add the following URL parameter: sort_campaign_name=ASC
The accepted values are ASC
for ascending or DESC
for descending. All sorts are lexicographical sort.
Report Formats
You can request reports in two formats: JSON or CSV.
Time Zone
All data in the reporting API is in UTC (Coordinated Universal Time).
Example Requests
Example advertiser request:
https://r.applovin.com/report?api_key=YOUR_API_KEY&start=2015-04-20&end=now&columns=day,campaign,impressions,clicks,ctr,conversions,conversion_rate,app_id_external,cost,sales&format=json&report_type=advertiser
Example publisher request:
https://r.applovin.com/report?api_key=YOUR_API_KEY&start=2016-07-01&end=2016-07-07&columns=day%2Cplatform%2Ccountry%2Capplication%2Cpackage_name%2Csize%2Cad_type%2Cimpressions%2Cclicks%2Crevenue,device_type&having=impressions%20%3E%200%20AND%20revenue%20%3E%200&format=csv