Data source

TikTok Ads logo

Collect TikTok Ads data. Deliver reports. Automate AI Insights.

Easily collect TikTok data with OWOX Data Marts, store in your data warehouse, automate reporting across major BI Tools and AI Insights (the ones that matter) delivered straight to corporate messengers on a schedule.

Get started free

TikTok Ads

Trust

Data Partner You Can Trust

users

175K

Executives and data analysts across 20+ industries

G2 rating

4.9★

“A trusted data analytics partner” — verified review

npm installs

156K

In Open Source We Trust

Customers

Available connectors

Endpoints

TikTok Ads endpoints

Documentation

7 TikTok Ads endpoints you can import. Each lands in its own table in your warehouse.

  • Ad Groups

    Ad groups within your campaigns — bid strategy, optimization goal, placement, and targeting schedule.

    45 fields
  • Ad Performance

    Daily ad performance — impressions, clicks, spend, conversions, video views, and engagement.

    39 fieldsTime series
  • Ad Performance by Country

    Daily ad performance broken down by country — impressions, clicks, spend, conversions, and video views.

    40 fieldsTime series
  • Ads

    Individual ads — creative type, format, call to action, status, and links to their campaigns and ad groups.

    46 fields
  • Advertiser Account

    Advertiser account — name, company, and currency.

    4 fields
  • Campaigns

    Your campaigns — objective, type, status, budget, and schedule.

    34 fields
  • Custom Audiences

    Custom audiences — type, size, validity status, and expiration.

    9 fields

Ad Groups schema

TikTok Ads Ad Groups schema

45 fieldstiktok_ads_ad_groupsSchema on GitHub

Ad groups within your campaigns — bid strategy, optimization goal, placement, and targeting schedule.

TikTok Ads Ad Groups fields
FieldTypeDescription
adgroup_idSTRINGAd Group ID
adgroup_nameSTRINGAd Group Name
advertiser_idSTRINGAdvertiser ID
campaign_idSTRINGCampaign ID
campaign_nameSTRINGCampaign Name
operation_statusSTRINGOperation Status
budgetNUMBERAd Group Budget
budget_modeSTRINGBudget Mode (BUDGET_MODE_DAY or BUDGET_MODE_TOTAL)
bid_typeSTRINGBidding Type
bid_priceNUMBERBid Price
optimization_goalSTRINGOptimization Goal
optimization_eventSTRINGOptimization Event
app_idSTRINGID of the app being promoted
app_typeSTRINGType of app
audience_typeSTRINGType of audience
audience_idsARRAYList of audience IDs
excluded_audience_idsARRAYList of excluded audience IDs
genderSTRINGTarget gender
age_groupsARRAYTarget age groups
languagesARRAYTarget languages
location_idsARRAYTarget location IDs
interest_category_idsARRAYInterest category IDs
placementsARRAYAd placements
placement_typeSTRINGType of placement
schedule_start_timeDATETIMESchedule Start Time
schedule_end_timeDATETIMESchedule End Time
schedule_typeSTRINGType of schedule
frequencyINTEGERFrequency cap
billing_eventSTRINGBilling Event Type
conversion_idSTRINGConversion ID
conversion_bid_priceNUMBERConversion Bid Price
conversion_windowINTEGERConversion Window
click_attribution_windowINTEGERClick Attribution Window
view_attribution_windowINTEGERView Attribution Window
is_smart_performance_campaignBOOLEANFlag indicating if the ad group uses smart performance optimization
is_new_structureBOOLEANFlag indicating if the ad group utilizes a new structure
auto_targeting_enabledBOOLEANFlag indicating if auto targeting is enabled
targeting_expansionOBJECTTargeting expansion settings
device_price_rangesARRAYTarget device price ranges
device_model_idsARRAYTarget device model IDs
operating_systemsARRAYTarget operating systems
network_typesARRAYTarget network types
carrier_idsARRAYTarget carrier IDs
create_timeDATETIMECreation Time
modify_timeDATETIMELast Modified Time

Ad Performance schema

TikTok Ads Ad Performance schema

39 fieldsTime seriestiktok_ads_ad_insightsSchema on GitHub

Daily ad performance — impressions, clicks, spend, conversions, video views, and engagement.

TikTok Ads Ad Performance fields
FieldTypeDescription
ad_idSTRINGAd ID
advertiser_idSTRINGAdvertiser ID
campaign_idSTRINGCampaign ID
adgroup_idSTRINGAd Group ID
stat_time_dayDATEStatistics Date
date_startDATEStart Date
date_endDATEEnd Date
impressionsINTEGERImpressions
clicksINTEGERClicks
costNUMBERCost
ctrNUMBERClick-Through Rate
conversionINTEGERConversions
cost_per_conversionNUMBERCost Per Conversion
conversion_rateNUMBERConversion Rate
reachINTEGERReach
engagementINTEGEREngagement
video_viewsINTEGERVideo Views
video_watched_2sINTEGER2s Video Views
video_watched_6sINTEGER6s Video Views
video_completionINTEGERVideo Completion
spendNUMBERSpend
cpcNUMBERCost per click
cpmNUMBERCost per thousand impressions
frequencyNUMBERFrequency of occurrence
video_play_actionsINTEGERNumber of video plays
video_views_p25INTEGERVideo views at 25% completion
video_views_p50INTEGERVideo views at 50% completion
video_views_p75INTEGERVideo views at 75% completion
video_views_p100INTEGERVideo views at 100% completion
profile_visitsINTEGERProfile visits
likesINTEGERLikes count
commentsINTEGERComments count
sharesINTEGERShares count
followsINTEGERFollows count
real_time_conversionINTEGERReal-time conversions
real_time_cost_per_conversionNUMBERCost per conversion in real-time
real_time_conversion_rateNUMBERReal-time conversion rate
resultINTEGERNumber of results
cost_per_resultNUMBERCost per result

Ad Performance by Country schema

TikTok Ads Ad Performance by Country schema

40 fieldsTime seriestiktok_ads_ad_insights_by_countrySchema on GitHub

Daily ad performance broken down by country — impressions, clicks, spend, conversions, and video views.

TikTok Ads Ad Performance by Country fields
FieldTypeDescription
ad_idSTRINGAd ID
advertiser_idSTRINGAdvertiser ID
campaign_idSTRINGCampaign ID
adgroup_idSTRINGAd Group ID
country_codeSTRINGTwo-letter ISO country code (geographic breakdown dimension)
stat_time_dayDATEStatistics Date
date_startDATEStart Date
date_endDATEEnd Date
impressionsINTEGERImpressions
clicksINTEGERClicks
costNUMBERCost
ctrNUMBERClick-Through Rate
conversionINTEGERConversions
cost_per_conversionNUMBERCost Per Conversion
conversion_rateNUMBERConversion Rate
reachINTEGERReach
engagementINTEGEREngagement
video_viewsINTEGERVideo Views
video_watched_2sINTEGER2s Video Views
video_watched_6sINTEGER6s Video Views
video_completionINTEGERVideo Completion
spendNUMBERSpend
cpcNUMBERCost per click
cpmNUMBERCost per thousand impressions
frequencyNUMBERFrequency of occurrence
video_play_actionsINTEGERNumber of video plays
video_views_p25INTEGERVideo views at 25% completion
video_views_p50INTEGERVideo views at 50% completion
video_views_p75INTEGERVideo views at 75% completion
video_views_p100INTEGERVideo views at 100% completion
profile_visitsINTEGERProfile visits
likesINTEGERLikes count
commentsINTEGERComments count
sharesINTEGERShares count
followsINTEGERFollows count
real_time_conversionINTEGERReal-time conversions
real_time_cost_per_conversionNUMBERCost per conversion in real-time
real_time_conversion_rateNUMBERReal-time conversion rate
resultINTEGERNumber of results
cost_per_resultNUMBERCost per result

Ads schema

TikTok Ads Ads schema

46 fieldstiktok_ads_adsSchema on GitHub

Individual ads — creative type, format, call to action, status, and links to their campaigns and ad groups.

TikTok Ads Ads fields
FieldTypeDescription
ad_idSTRINGAd ID
ad_nameSTRINGAd Name
advertiser_idSTRINGAdvertiser ID
campaign_idSTRINGCampaign ID
campaign_nameSTRINGCampaign Name
adgroup_idSTRINGAd Group ID
adgroup_nameSTRINGAd Group Name
operation_statusSTRINGOperation Status
secondary_statusSTRINGSecondary Status
create_timeDATETIMECreation Time
modify_timeDATETIMELast Modified Time
ad_textSTRINGAd Text/Caption
ad_textsARRAYMultiple Ad Text Variations
call_to_actionSTRINGCall To Action Text
call_to_action_idSTRINGCall To Action ID
image_idsARRAYImage IDs Used in the Ad
video_idSTRINGVideo ID Used in the Ad
image_modeSTRINGImage Display Mode
creative_typeSTRINGType of Creative (video, image, etc.)
ad_formatSTRINGFormat of the Ad
landing_page_urlSTRINGLanding Page URL
landing_page_urlsARRAYMultiple Landing Page URLs
deeplinkSTRINGDeep Link URL
deeplink_typeSTRINGType of Deep Link
tracking_pixel_idSTRINGPixel ID for Tracking
impression_tracking_urlSTRINGURL for Impression Tracking
click_tracking_urlSTRINGURL for Click Tracking
video_view_tracking_urlSTRINGURL for Video View Tracking
is_new_structureBOOLEANFlag indicating new ad structure
is_acoBOOLEANFlag indicating Automated Creative Opt.
optimization_eventSTRINGEvent being optimized for
catalog_idSTRINGProduct Catalog ID
product_set_idSTRINGProduct Set ID
sku_idsARRAYSKU IDs for Products
domainSTRINGDomain for the Ad
display_nameSTRINGDisplay Name shown in the Ad
profile_image_urlSTRINGURL for Profile Image
app_nameSTRINGName of the App being promoted
tracking_app_idSTRINGApp ID for Tracking
identity_idSTRINGIdentity ID
identity_typeSTRINGType of Identity
page_idSTRINGTikTok Page ID
tiktok_item_idSTRINGTikTok Item ID
disclaimer_typeSTRINGType of Disclaimer
disclaimer_textSTRINGDisclaimer Text
utm_paramsOBJECTUTM Parameters

Advertiser Account schema

TikTok Ads Advertiser Account schema

4 fieldstiktok_ads_advertiserSchema on GitHub

Advertiser account — name, company, and currency.

TikTok Ads Advertiser Account fields
FieldTypeDescription
advertiser_idSTRINGAdvertiser ID
advertiser_nameSTRINGAdvertiser Name
company_nameSTRINGCompany Name
currencySTRINGAccount Currency

Campaigns schema

TikTok Ads Campaigns schema

34 fieldstiktok_ads_campaignsSchema on GitHub

Your campaigns — objective, type, status, budget, and schedule.

TikTok Ads Campaigns fields
FieldTypeDescription
advertiser_idSTRINGAdvertiser ID
campaign_idSTRINGCampaign ID
campaign_nameSTRINGCampaign Name
app_promotion_typeSTRINGType of app promotion being used in the campaign
operation_statusSTRINGOperation Status
bid_typeSTRINGType of bid strategy being used in the campaign
roas_bidNUMBERReturn on ad spend bid target
is_advanced_dedicated_campaignBOOLEANFlag indicating if this is an advanced dedicated campaign
is_search_campaignBOOLEANFlag indicating if the campaign is for search ads
rf_campaign_typeSTRINGReach and frequency campaign type
rta_bid_enabledBOOLEANFlag indicating if RTA bidding is enabled
secondary_statusSTRINGAdditional status information of the campaign
postback_window_modeSTRINGMode for the postback window
disable_skan_campaignBOOLEANFlag indicating if SKAdNetwork is disabled for the campaign
budget_optimize_onBOOLEANThe metric or event that the budget optimization is based on
budget_modeSTRINGBudget Mode (BUDGET_MODE_DAY or BUDGET_MODE_TOTAL)
objectiveSTRINGCampaign Objective
campaign_product_sourceSTRINGSource of products for the campaign
optimization_goalSTRINGSpecific goal to be optimized for in the campaign
special_industriesSTRINGSpecial industries classification for the campaign
deep_bid_typeSTRINGType of deep bidding strategy
rta_idSTRINGReal-time advertising ID
rta_product_selection_enabledBOOLEANFlag indicating if RTA product selection is enabled
budgetNUMBERCampaign Budget
is_new_structureBOOLEANFlag indicating if the campaign utilizes a new campaign structure
is_smart_performance_campaignBOOLEANFlag indicating if the campaign uses smart performance optimization
modify_timeDATETIMELast Modified Time
app_idSTRINGID of the app being promoted
objective_typeSTRINGType of objective selected for the campaign (e.g., brand awareness, app installs)
campaign_typeSTRINGType of campaign (e.g., awareness, conversion)
campaign_app_profile_page_stateSTRINGApp profile page state for app campaigns
create_timeDATETIMECreation Time
catalog_enabledBOOLEANFlag indicating if product catalog is enabled
bid_align_typeSTRINGType of bid alignment

Custom Audiences schema

TikTok Ads Custom Audiences schema

9 fieldstiktok_ads_audiencesSchema on GitHub

Custom audiences — type, size, validity status, and expiration.

TikTok Ads Custom Audiences fields
FieldTypeDescription
audience_idSTRINGUnique identifier for the audience
advertiser_idSTRINGAdvertiser ID
nameSTRINGName of the audience
audience_typeSTRINGType of audience (e.g., demographic, interest-based)
cover_numINTEGERNumber of audience members covered
create_timeDATETIMETimestamp indicating when the audience was created
is_validBOOLEANFlag indicating if the audience data is valid
is_expiringBOOLEANFlag indicating if the audience data is expiring soon
expired_timeDATETIMETimestamp indicating when the audience data expires

S01 · Why teams pick OWOX

Why collect TikTok Ads data into your warehouse with OWOX?

Your TikTok Ads data shouldn’t be trapped in a platform you can’t query. OWOX collects it into your warehouse on autopilot — no per-connector fees, no vendor lock-in. The entire platform is open-source on GitHub, so you can self-host it today and never worry about losing access to your own data pipelines.

The Set Up Connector dialog in OWOX Data Marts at step 1 of 5, listing the connectors available to choose from.

Collect to your warehouse

No per-connector pricing — connect as many sources as you need, all included

The Create Scheduled Trigger dialog in OWOX Data Marts, setting a connector run to repeat daily at 09:00.

Zero-maintenance syncs

Fully open-source on GitHub — self-host anytime, no vendor lock-in, your data stays yours

The Joined Data Marts SQL dialog in OWOX Data Marts, showing the generated SQL that joins an orders data mart with unified ad spend and reporting it as valid.

Full-funnel joins

Full transparency and control — every query, every schema, every schedule is visible and auditable

Get started free →

How it works

OWOX Data Marts data setup for TikTok Ads, with the TikTok Ads input source feeding Google BigQuery, AWS Athena, Snowflake, Amazon Redshift and Databricks.

R01 · Collect

Collect all your TikTok Ads data with zero engineering

Pull everything your company needs from TikTok Ads without touching code or maintaining custom scripts. OWOX Data Marts handle the heavy lifting.

  • Your TikTok Ads data is stored in one place – your own infrastructure. OWOX Data Marts automatically land your data into BigQuery, Snowflake, or Redshift.
  • Your TikTok Ads data lands on a schedule: clean, complete, and ready to re-use across reports, dashboards, BI tools, and spreadsheets.
  • No API maintenance, no broken scripts — just reliable daily syncs

Explore data marts →

OWOX Data Marts data setup for TikTok Ads, with TikTok Ads data delivered to Google Sheets, Looker Studio, Slack, Microsoft Teams and email.

R02 · Report

Build reports with TikTok Ads data that everyone trusts

Once your TikTok Ads data lands in your warehouse, OWOX Data Marts make it instantly reusable across spreadsheets and BI tools.

  • Pre-built data marts for campaign performance, spend, and conversions
  • Join TikTok Ads with CRM, GA4, and revenue data in one query
  • Self-serve reporting for marketing teams — no analyst tickets needed

Explore data marts →

The OWOX Data Marts side panel open in Google Sheets, building an eCommerce report from a products data mart with its columns selected.

R03 · Visualize

Visualize TikTok Ads data instantly in your BI tools

With OWOX Data Marts, your TikTok Ads data becomes instantly available for charts, dashboards, pivots, and spreadsheets.

  • Whether you use Google Sheets, Looker Studio, Excel, or Power BI, OWOX delivers clean, scheduled TikTok Ads data that just works.
  • Deliver to Looker Studio, Google Sheets, Power BI, or Excel automatically
  • Same numbers everywhere — one source of truth for all stakeholders

Get started free →

S03 · Eight outcomes

Why use OWOX connectors to collect your TikTok Ads data?

Eight outcomes you get the moment your data marts go live.

Full picture, one screen

Send TikTok Ads spend and performance into dashboards from one governed source — fast-moving creative data you can actually keep up with.

Beyond native dashboards

TikTok burns budget fast; in your warehouse you track creative-level performance frequently, not once the money’s gone.

Your questions, your reports

Build reports that answer your questions — creative ROAS, hook rate, spend velocity — on your definitions, not TikTok’s defaults.

Faster decisions, better data

Frequent, scheduled syncs mean you catch a winning or failing creative while it still matters.

Always fresh, always complete

OWOX Data Marts automate TikTok Ads collection on a schedule — campaigns, ads, and spend — with no manual exports.

All sources, one warehouse

Merge TikTok with your other channels and revenue to see real blended ROAS, not siloed platform numbers.

Zero manual work

Automate transfer into BigQuery, Snowflake, or Redshift — governed and reusable across every report, saving time and removing errors.

Blended reports

Once TikTok data lands in governed Data Marts, anyone can ask in their own AI chat — “which creatives paid back this week?” — every number tracing to analyst-written SQL.

What users are saying

Not testimonials. Comment threads.

Real things real customers said — each quote pinned to a specific claim, straight from the quotes database.

A3re: trusting AI
Nodari RizunNodari RizunFounder & CEO, Pürblack®
“AI, by the nature of the models, will hallucinate. And because of that, you need something which will create guardrails to ensure that there are no hallucinations, that you can trust your data.”
C9re: one source of truth
Mark SimmonsMark SimmonsCMO, Pürblack®
“We had six or seven different channels and no single source of truth — it was almost impossible, a lot of guesswork.”
E7re: getting time back
Nodari RizunNodari RizunFounder & CEO, Pürblack®
“We regained time. And time is the one resource that never comes back.”

Start collecting TikTok Ads data for free

Set up your TikTok Ads connector in minutes. No credit card, no engineering team required.

Get started free

TikTok Ads