AdManage.ai logo

To export TikTok ads to Excel, open Custom reports under the Analytics menu in TikTok Ads Manager, build a report with the dimensions and metrics you need, set the date range, and click Export. You can also set the report to arrive by email on a schedule. TikTok's custom report guide covers both options.

If you need the data in Tableau, PostgreSQL or Redshift, the same file works as your starting point. For anything recurring or very large, use the TikTok reporting API or a data connector instead. This guide covers each route and the limits that catch people out.

Which TikTok export method should you use?

TikTok gives you four routes, and third-party connectors add a fifth. The right one depends on how often you need the data and how many ads are in the account.

Four ways to export TikTok ads data: Export, Scheduled running, Sync API and Async API
Four ways to export TikTok ads data: Export, Scheduled running, Sync API and Async API
MethodBest forOutputMain limit
Ads Manager ExportOne-off analysis in ExcelDownloaded fileManual each time
Scheduled runningRecurring reports for a small teamFile delivered by emailUp to 5 recipients, who need Ads Manager access to download
Synchronous APIScripts, apps and small pipelinesJSON responseUp to 20,000 ads per report
Asynchronous APILarge accounts and long date rangesCSV or XLSX download linkNeeds allowlist approval from TikTok
Third-party connectorSheets, BI and warehouse syncDepends on the toolOne more tool to set up and check

If you want your ad settings rather than performance data, such as names, budgets and targeting, that is a different feature. Bulk Import & Export is built for editing ads in a spreadsheet, and our TikTok ads bulk upload guide explains how it works.

How to export TikTok ads to Excel

TikTok's help center describes this flow for a custom report:

Five steps to export a TikTok ads report: Custom reports, Create report, Pick metrics, Set dates, Export
Five steps to export a TikTok ads report: Custom reports, Create report, Pick metrics, Set dates, Export
  1. In TikTok Ads Manager, click Custom reports under the Analytics menu.
  2. Click Create report for a blank report, or use the dropdown arrow to start from a template.
  3. Select your Dimensions, which become rows (campaigns, ad groups, ads, placements), and your Metrics, which become columns (CPM, CPC, CTR, CVR).
  4. Choose a time range: yesterday, the last 7 days, the last 30 days, or a custom date.
  5. Click Save, name the report, then choose Export to run and download it.

TikTok's help page does not list the file formats. Its API documentation offers CSV and XLSX, and third-party guides from Coupler.io and Coinis report the same two formats for Ads Manager downloads. Choose XLSX if the file is going straight into Excel. Button labels can change, so follow what your account shows.

Users with an analyst, operator or admin role can add several ad accounts to one custom report with the Select accounts control.

Keep long IDs intact in Excel

Campaign, ad group and ad IDs can break when you open a CSV in Excel. Microsoft says Excel keeps 15 significant digits, so in a number with 16 or more digits, every digit past the 15th becomes zero.

TikTok's v1.3 API returns these IDs as strings, and you should treat them the same way in a spreadsheet. Check a few IDs against Ads Manager before you use them as a lookup key. If they have changed, import the column as text rather than opening the CSV directly.

How to schedule TikTok ads exports by email

Scheduled running sends the report automatically, which suits a weekly client or finance report. TikTok's scheduling steps are:

  1. Open a custom report from the Custom reports page.
  2. Click Scheduled running at the top right.
  3. Turn it on, then choose the frequency, recipients and file format.
  4. Click Save.

Four details from TikTok's documentation are worth checking before you rely on it:

  • Recipients: you can add up to 5 email addresses.
  • Access: only users with access to TikTok Ads Manager can download the report. If a client has no access, send them the file yourself.
  • Timing: data processing typically takes about 5 to 6 hours, and emails should arrive around 5-6 AM in the ad account's time zone.
  • Auto-cancel: the schedule is cancelled if no recipient downloads a report for 3 consecutive months.

How to export TikTok ads data with the API

TikTok's API for Business has two reporting modes. Synchronous reports return data in the response almost instantly, while asynchronous reports run as a task that you download when it finishes.

Synchronous reports: quick, with hard limits

Send a GET request to /open_api/v1.3/report/integrated/get/ with your access token, advertiser ID, report type, data level, dimensions and metrics. TikTok's reference sets these limits:

  • Ads: data for up to 20,000 ads. Above that, filter by campaign_ids, adgroup_ids or ad_ids in batches, with up to 100 IDs at a time.
  • Date range: 30 days if your dimensions include stat_time_day, and 365 days if they do not (for non-Business Center reports).
  • Page size: 1 to 1,000 rows, with a default of 10. Remember to set it and page through the results.
  • Multiple accounts: up to 5 IDs in advertiser_ids, all belonging to the same TikTok for Business user.

Check the X-Tt-Ads-Throttle response header in your script. TikTok uses it to warn when a request is over a limit, including when an account has more than 20,000 ads. A script that ignores it can load an incomplete report without noticing.

Asynchronous reports: for large accounts

Asynchronous reports do not time out and have no time range limit, but access is allowlist-only, so apply through TikTok's Allowlist Management page first. The flow has three calls:

  1. Create the task with /report/task/create/, setting output_format to CSV_STRING, CSV_DOWNLOAD or XLSX_DOWNLOAD.
  2. Check progress with /report/task/check/.
  3. Get the output with /report/task/download/.

Supported dimension and metric combinations can differ between the two modes, so a request that works synchronously may need changes here.

Why API numbers can differ from Ads Manager

TikTok states that a report downloaded from Ads Manager should be compared with an asynchronous report, not a synchronous one. Neither applies the 20,000-ad truncation, so totals can differ on large accounts.

Freshness matters too. TikTok's data latency guide says real-time data is adjusted the following day, and some data, such as reach and other unique visitor metrics, usually lags by 16 hours. Reach is also an estimate. For a stable warehouse, reload the last few days on each run rather than treating today's numbers as final. Dates and calculations follow the ad account's time zone, which matters when you combine accounts.

How to export TikTok ads to JSON

The synchronous API responds in JSON, so it is the direct route if you need this format. Ads Manager's export and the asynchronous output_format options cover CSV and XLSX, so you would convert those files yourself.

How to export TikTok ads to Tableau

Export the report as a file, then connect to it in Tableau. Tableau's documentation uses a different connector for each format:

  • XLSX: use the Excel connector. It does not support pivot tables, so export a flat table rather than a pivoted workbook.
  • CSV: use the Text file connector.

For a dashboard that updates by itself, a file you replace by hand will not scale. Load the data into a database that Tableau reads, or use a connector.

How to export TikTok ads to PostgreSQL

Export a CSV, create a table whose columns match the file, and load it with PostgreSQL's COPY command. The table and file names here are examples:

sql
\copy tiktok_ads_daily FROM 'tiktok_ads_report.csv' WITH (FORMAT csv, HEADER true)

\copy is the psql version, which reads the file from your own machine. Server-side COPY FROM needs a superuser or a role such as pg_read_server_files. Store IDs as text to keep them intact, and add your own date column if you load repeated snapshots.

How to export TikTok ads to Redshift

Upload the CSV to Amazon S3, then run Redshift's COPY command with the CSV format option and IGNOREHEADER to skip the header row. Replace the placeholder bucket and role:

sql
COPY tiktok_ads_daily
FROM 's3://your-bucket/tiktok_ads_report.csv'
IAM_ROLE 'arn:aws:iam::123456789012:role/your-redshift-role'
CSV
IGNOREHEADER 1;

COPY appends rows, so a reload of the same dates will create duplicates. Delete the overlapping date range first, or load into a staging table and merge.

Should you use a third-party connector?

A connector is worth considering when you want TikTok data in Sheets, a BI tool or a warehouse on a schedule, and nobody wants to maintain API scripts. Coupler.io, for example, says it connects TikTok Ads to spreadsheets, warehouses and BI tools with automatic refreshes.

Before you commit, compare a recent date range against an Ads Manager download. Check spend, the attribution-related metrics you report on, and whether the tool handles Smart+ and GMV Max campaigns. TikTok's API docs point GMV Max reporting to its own endpoint, /gmv_max/report/get/, so ask how the tool retrieves that data.

Frequently asked questions

Can I export TikTok ads to Excel?

Yes. Build a custom report in TikTok Ads Manager and use Export to download it. Third-party guides report that XLSX and CSV are both available, and either one opens in Excel. Check that long IDs have kept all their digits.

Can I export TikTok ads automatically?

Yes. Turn on Scheduled running on a custom report to receive it by email at your chosen frequency. For loading data straight into another system, use the reporting API or a connector.

Why can't my client download the scheduled TikTok report?

TikTok says only users with access to TikTok Ads Manager can download the report. Give your client the appropriate access, or download the file and send it to them.

Why did my scheduled TikTok report stop arriving?

TikTok cancels a schedule automatically if no recipient downloads a report from it for 3 consecutive months. Check the schedule setting and turn it back on if it is off.

Why does my TikTok API report show different numbers from Ads Manager?

The most common cause is comparing a synchronous API report with an Ads Manager download. TikTok says the download should be compared with an asynchronous report. Data latency and account time zones can also cause differences.

How many ads can the TikTok reporting API return?

The synchronous endpoint returns data for up to 20,000 ads. To get beyond that, filter in batches of up to 100 campaign, ad group or ad IDs. Asynchronous reports don't apply this truncation, but they need allowlist access.

Is exporting TikTok ads the same as Bulk Import & Export?

No. Custom report exports give you performance data. Bulk Import & Export is for creating and editing ads in a spreadsheet. See our bulk upload guide for that workflow.

Export once, then act on what the data shows

An export tells you what worked. Once you can see your winners, compare them against TikTok cost benchmarks and CTR ranges by channel, then launch the next round of tests.

AdManage lets teams launch TikTok ads in bulk from a sheet or folder, and its reports cover TikTok accounts and export to CSV, Excel or PDF. See our guide to TikTok ad automation, or start a free trial.

Cedric Yarish

About the author

Cedric Yarish

Co-founder of AdManage.ai

Cedric is a performance marketer turned founder. He builds AdManage and writes about creative testing, ad operations and automation for teams running ads across Meta, TikTok and Google.