Skip to main content

TikTok Basic Report

Last updated 10/05/2026
tip

Note that data generated by third-party data integration counts toward the cluster's data consumption

Summary​

Interface overview​

InterfaceTypeGranularityAttributionCostRevenueImpressionsClicksConversions
Basic ReportAPIAggregated metrics✅✅✅✅

TikTok Basic Report provides aggregated grouping by ad dimensions. The returned data covers a range of metrics such as impressions, clicks, conversions, and user acquisition cost.

Integration process​

  1. Log in to the TikTok API Business platform, register a developer account, create an app, and get the authorization information
  2. Log in to the AE backend, go to the Third-party Integration module, add a TikTok Basic Report plan, and complete the related configuration
  3. Change the authorization URL of the TikTok API app and complete the authorization
  4. Check whether the AE system receives the data successfully, and build reports

1. Get the authorization information​

  1. First, visit the TikTok API Business page. You need to log in to or register a TikTok ads account

  2. Next, follow the steps to register as a developer

  3. After you register as a developer, you need to create an app, as shown in the image below. You can configure the parameters as follows when you create it:

    • Application name: the project name. Name it after your project
    • App Description: the project description. You can add some notes
    • Callback Address: the callback URL. When you create the app, you can enter https://www.thinkingdata.cn/, and change it to the data callback URL of the AE system later
    • Scope of Permission: the data permissions that can be accessed. Be sure to select the Reporting permission here, and configure other permissions as needed
  1. After you click Confirm, your app is initially in a pending state. In about one to two days, the app can pass the review (that is, its status becomes Approved). Get the App ID and Secret of your app

2. Plan configuration​

After you complete the preparation on the TikTok platform, log in to the AE system and configure the new plan in the Third-party Integration module. The image below shows the configuration page of TikTok Basic Report. Follow this section to create the plan

2.1 Authorization information configuration​

Click the Configure authorization information button under Authorization Information and enter the authorization information you obtained in the previous step in the pop-up:

APP ID and App Secret are obtained in the previous step. For Account ID, enter the ID of the TikTok ads account whose data you want to pull

2.2 Sync Schedule​

In the Sync Schedule module, you can set the policy for the AE system to pull TikTok Basic Report data on a schedule. You can choose to pull data for a period of time at a specific time every day. Because pulled data also counts toward the data volume, avoid pulling data for overly long periods on a schedule

2.3 Receive Settings​

You can control whether the data is written as events. If you turn this off, the data is not written to the event table, so do not turn off this setting.

2.4 Configuration​

Finally, in the Configuration module, you can control the detailed settings of data pulling, including the time aggregation granularity of the data, the metric fields and dimensions to pull, and the event name after ingestion.

The content of the configuration is a JSON, which you can customize as follows:

ModuleNameDescription
sink_eventevent_nameEvent name after ingestion; customizable; string type.
source

report_types

Aggregation dimension of the data; list type. You can enter only one element, that is, pull only one aggregation dimension at a time. See below for details

time_granularity

Time aggregation granularity of the data, that is, whether the pulled data is aggregated by day or by hour

Valid values: day, hour

metricsMetrics in the data; list type
group_byGrouping dimensions in the data; list type
  • Aggregation dimensions

Basic Report provides the following aggregation dimensions. Note that you can select only one dimension for Basic Report. To group by country (region), you can use only the country_code dimension:

Dimension typeDimension fieldDescriptionDefault

Ad dimensions

advertiser_idAdvertiser level
campaign_idCAMPAIGN level
adgroup_idADGROUP level
ad_idAD levelYes
Country (region) dimensioncountry_codeGroup by country (region)
warning

Note that the metric fields you can get and the filter conditions supported differ between ad dimensions. Pay close attention to the notes on returned fields and filters to understand the data capabilities of the ad dimension you choose.

Basic Report supports a very rich set of fields. The following shows only the most common grouping dimensions and metric fields. For the complete field list, see TikTok's metrics list.

  • Grouping dimensions

The following table shows the grouping dimensions that AE currently pulls by default. To adjust them, enter the field names in source.group_by:

FieldDisplay nameNotes
advertiser_idAd account IDAlways ingested
campaign_nameCampaign nameSupported only at the CAMPAIGN, ADGROUP, and AD levels
campaign_idCampaign IDSupported only at the ADGROUP and AD levels
adgroup_nameAd group nameSupported only at the ADGROUP and AD levels
adgroup_idAd set IDAd group ID; supported only at the AD level
placement_typePlacementSupported only at the ADGROUP and AD levels

aeo_type

AEO ad typeEnum values are Auto Bid, Multi Bid, and IAEO; returns - for non-AEO ad groups. Supported only at the ADGROUP level
ad_nameAd nameSupported only at the AD level
ad_textAd titleSupported only at the AD level
tt_app_idPromoted app IDSupported only at the ADGROUP and AD levels; has a value when the promoted object is an App
tt_app_namePromoted app nameSupported only at the ADGROUP and AD levels; has a value when the promoted object is an App
mobile_app_idApp IDID of the app in Google Play or the Apple App Store. Supported only at the ADGROUP and AD levels; has a value when the promoted object is an App
promotion_typePromotion typeValid values are app, website, and others. Supported at the ADGROUP and AD levels. Both synchronous and asynchronous reports support this metric.
dpa_target_audience_typeTarget audience type of DPA adsSupported at the ADGROUP and AD levels. Both synchronous and asynchronous reports support this metric.

currency

CurrencyCurrency code, such as USD. Note that for currency to take effect, the 'dimensions' field in the request must contain adgroup_id/ ad_id/campaign_id/advertiser_id.
  • Metric fields

The following table shows the metric fields that AE currently pulls by default. To adjust them, enter the field names in source.metrics:

FieldDisplay nameNotes
spendTotal spendAmount spent on ads within the selected time.
cash_spend

Cash spend

Cash spent on ads within the selected time range. Supported only at the Advertiser level; lifetime and hourly queries are not supported.

Note: Metric updates may be delayed by 24-48 hours

voucher_spend

Voucher spend

Voucher amount spent on ads within the selected time range. Supported only at the Advertiser level; lifetime and hourly queries are not supported.

Note: Metric updates may be delayed by 24-48 hours

cpcCPCAverage cost per click of the ad spend.
cpmCPMAverage amount you spend per 1,000 impressions.
impressionsNumber of impressionsNumber of ad impressions.
clicksClicksNumber of ad clicks.
ctrCTR (%)Percentage of ad impressions that resulted in clicks.
reachReachNumber of people who saw the ad at least once. This metric is estimated.
cost_per_1000_reachedCost per 1,000 people reachedAverage cost to reach 1,000 people. This metric is estimated.
conversionConversionsNumber of times the ad achieved the target conversion. The target conversion varies with the delivery settings at creation (counted based on the impression time).
cost_per_conversionConversion costAverage cost per conversion of the ad spend (counted based on the impression time).

conversion_rate

Conversion rate (%)Percentage of ad clicks that resulted in conversions (counted based on the impression time).
real_time_conversionReal-time conversionsNumber of times the ad achieved the target conversion. The target conversion varies with the delivery settings at creation (counted based on the time the conversion event occurred)
real_time_cost_per_conversionReal-time cost per conversionAverage cost per conversion of the ad spend (counted based on the time the conversion event occurred)
real_time_conversion_rateReal-time conversion rate (%)Percentage of ad clicks that resulted in conversions (counted based on the time the conversion event occurred)
resultResultsNumber of results the ad ultimately achieved, corresponding to your optimization goal. (Counted based on the impression time)
cost_per_resultCost per resultCost of each result. (Counted based on the impression time)
result_rateResult rate (%)Percentage of ad views or clicks that produced results. (Counted based on the impression time)
real_time_resultReal-time resultsNumber of results the ad ultimately achieved, corresponding to your optimization goal. (Counted based on the time the conversion event occurred)
real_time_cost_per_resultReal-time cost per resultCost of each result. (Counted based on the time the conversion event occurred)
real_time_result_rateReal-time result rate (%)Percentage of ad views or clicks that produced results. (Counted based on the time the conversion event occurred)
secondary_goal_result

Secondary goal result

Number of times the ad achieved the secondary goal, corresponding to your secondary goal. Because the same campaign can correspond to different secondary goals, the total number of results at the campaign dimension cannot be disclosed for now. Go to the ad group dimension to view the corresponding number of secondary goal results.
cost_per_secondary_goal_resultCost per secondary goal resultCost of each secondary goal result. Because the same campaign can correspond to different secondary goals, the cost per secondary goal result at the campaign dimension cannot be disclosed for now. Go to the ad group dimension to view the corresponding cost per secondary goal result.
secondary_goal_result_rateSecondary goal result rate (%)Number of secondary goal results as a percentage of ad impressions.
frequencyFrequencyAverage number of times each reached user viewed the ad.
real_time_app_installReal-time app installsNumber of times users activated the app and were attributed to your ad. (Counted based on the time the conversion event occurred)
real_time_app_install_costReal-time cost per app installCost per app install. (Counted based on the time the conversion event occurred)
app_installApp installsNumber of times users activated the app and were attributed to your ad. (Counted based on the impression time.)
cost_per_app_installCost per app installCost per app install. (Counted based on the impression time.)
registration

Unique registrations

Number of times deduplicated users registered in the app and were attributed to your ad. (Counted based on the impression time.)
cost_per_registrationCost per unique registrationCost per deduplicated registration. (Counted based on the impression time.)
registration_rateRegistration rate (%)Ratio of deduplicated user registrations to app activations. (Counted based on the impression time.)

2.5 Data ingestion rules​

By default, we write the pulled data to the AE project as events:

  • Because TikTok Marketing API returns aggregated data, we use a fixed value as the user identifier of the data. You can think of all data as attached to a single virtual user
  • We use the stat_time_day or stat_time_hour field in the data as the #event_time of the aggregated data
  • The default event name is -- tiktok_marketing_api_data

2.6 Standardized fields​

If the following event properties exist in the data, we standardize them automatically:

Original fieldStandardized fieldDescription
advertiser_idte_ads_object.ad_account_idAd account ID
campaign_namete_ads_object.campaign_nameCampaign name
campaign_idte_ads_object.campaign_idCampaign ID
adgroup_namete_ads_object.ad_group_nameAd group name
adgroup_idte_ads_object.ad_group_idAd group ID
ad_namete_ads_object.ad_nameAd name
ad_idte_ads_object.ad_idAd ID
placement_typete_ads_object.placementAd placement
mobile_app_idte_ads_object.app_idApp ID
tt_app_namete_ads_object.app_nameApp name
country_codete_ads_object.countryCountry or region code
currencyte_ads_object.currencyCurrency of the cost or revenue
impressionste_ads_object.impressionsImpressions
clickste_ads_object.clicksClicks
app_installte_ads_object.installsConversions (installs)
spendte_ads_object.costUser acquisition cost

2.7 Complete authorization​

After completing the configuration, click Save and authorize in the upper right corner to save the plan configuration. Next, you need to complete the final authorization:

First, in the Authorization Information page that pops up, copy the URL in the first step

Go back to the TikTok API Business page, edit the app you created earlier, edit Advertiser redirect URLs, and paste in the authorization URL you just copied.

Finally, go back to the AE interface and click Go to authorization. The TikTok authorization page opens. Follow the instructions on the authorization page to complete the authorization

After completing the authorization, in Authorization Information, click I have completed the above two steps in the lower left corner, and then click Complete Authorization in the lower right corner to finish the configuration. You have now completed the TikTok Basic Report data integration.

Was this page helpful?