TikTok Ads Library: scrapers and the official API, compared

Commercial content and ad transparency data from TikTok's public libraries.

Short answer

For most TikTok Ads Library jobs, start with TikTok DSA Ads Transparency Library Scraper: it covers 2 of 5 core fields (advertiser, started at) at $0.99 per 1,000 results on Apify's Free plan. The top published score for TikTok Ads Library goes to TikTok Ads Library Scraper by fetch_cat (81 of 100), a Store tool from another publisher, listed for reference.

From published Store listings, output schemas and the official documentation. Checked 2026-11-12. How the ranking works.

TikTok DSA Ads Transparency Library Scraper: inputs, code and costOpen in Apify Store

1 catalogue Actor 9 other Store tools Official API: Limited access Lowest rate  $0.21 per 1K

Route map

Each line is one way to get TikTok Ads Library data; each stop is a field you probably need. Green lines are catalogue Actors, ranked by the published formula.

Route diagram for TikTok Ads Library dataTikTok DSA Ads Transparency Library Scraper: stops at 2 of the 10 fields shown; Other Store tools (8): stops at 8 of the 10 fields shown; TikTok Commercial Content Library / Research API: limited, field coverage not compared.TikTok Ads Librarycreative urladvertiserad copystarted atmarketlikesaudit statusestimated audi…image urlsindustry1+API

Stops are fields. A ring means the field is in that route's published output schema; no ring means the line passes without it. Bold labels are the core fields for this website, the rest are fields that differ between routes. A white capsule means every data line stops there. The red line is the official API; its field coverage is not compared. A crossed red line means there is no open official API.

Catalogue Actors for TikTok Ads Library

TikTok DSA Ads Transparency Library Scraper

Search TikTok's EU/EEA ad transparency database by keyword, advertiser or ad ID. Get creative media, advertiser identity, impression buckets,…

2/5 core fields 31 output fields $0.99 per 1K Open in Apify Store

Field matrix: who returns what

Every tool with a published output schema, against the 5 fields most TikTok Ads Library jobs need. A dot means the field name appears in the schema; rows can still leave it empty.

Which tools return each core TikTok Ads Library field, from published output schemas
Tooladvertiserad copycreative urlstarted atmarketFields
TikTok DSA Ads Transparency Library Scraper●––●–2/5
TikTok Ads Library ScraperReference only, by fetch_cat●–●––2/5
Tiktok Ads Library Creative Center ScraperReference only, by coregent●––●–2/5
TikTok Ads Library FASTReference only, by data_xplorer●––––1/5
TikTok Ads Library ScraperReference only, by s-r●––––1/5
TikTok Ads Library Scraper: EU Ads, No LoginReference only, by automation_craft●––––1/5
TikTok Ads Library ScraperReference only, by aiscraperdev●––––1/5
TikTok Ads Library ScraperReference only, by brilliant_gum●––––1/5
TikTok Ads Library ScraperReference only, by jy-labs●––●–2/5
Tools returning it90130

Field dictionary: the exact keys

The same core field has a different key in each Actor's output. Map these before you merge datasets; a dash means the published schema has no matching key. Need a field that is not listed here, such as email? Search every TikTok Ads Library Actor by field.

Output keys for each core TikTok Ads Library field in the top catalogue Actors
Core field TikTok DSA Ads Transparency…
advertiser advertiserName
ad copy –
creative url –
started at adStartDate
market –

Download this comparison: CSV · JSON (every tool with a published schema, matching keys per core field, price and score).

All 10 tools, scored

Catalogue Actors link to their detail pages; the score (0 to 100) is the published formula, identical for every tool. Other Store tools follow in their own table, for reference. Price is the published primary-result rate per 1,000 (the Free-plan rate where the price is tiered; higher Apify plans pay less); start events and platform usage are excluded.

Catalogue Actors for TikTok Ads Library, ranked by the published method
Sample fields
69
TikTok DSA Ads Transparency Library Scraper Catalogue Actor, pay per event
advertiserName, adStartDate, adId 31 $0.99 18 runs, too few to rate Oct 2026

Other Store tools, for reference

Scored with the same published formula and listed for comparison only; this site does not link or recommend them.

Other Store tools for TikTok Ads Library, for reference
Sample fields
81
TikTok Ads Library Scraper Reference only, by fetch_cat
advertiserName, detailUrl, adId 31 $0.21 98% of 1,233 runs Nov 2026
78
Tiktok Ads Library Creative Center Scraper Reference only, by coregent
advertiserName, startDate, sourceSurface 40 $3.00 99% of 550 runs Nov 2026
74
TikTok Ads Library FAST Reference only, by data_xplorer
Advertiser Name, AD ID, Ad Title 15 $1.50 93% of 8,786 runs Nov 2026
73
TikTok Ads Library Scraper Reference only, by memo23
No published schema – $0.90 95% of 6,346 runs Nov 2026
72
TikTok Ads Library Scraper Reference only, by s-r
advertiser_name, ad_id, ad_type 18 $3.00 100% of 5,303 runs Oct 2026
70
TikTok Ads Library Scraper: EU Ads, No Login Reference only, by automation_craft
advertiserName, adId, libraryUrl 19 $1.00 96% of 279 runs Nov 2026
67
TikTok Ads Library Scraper Reference only, by aiscraperdev
advertiser_name, ad_id, advertiser_id 36 $3.50 80% of 138 runs Aug 2026
60
TikTok Ads Library Scraper Reference only, by brilliant_gum
advertiserName, adId, advertiserBusinessId 37 $15 99% of 5,065 runs Aug 2026
58
TikTok Ads Library Scraper Reference only, by jy-labs
advertiserName, adStartDate, adId 12 $20 94% Oct 2026

What to check before you choose

Teams use TikTok advertising transparency records to study advertiser activity, compare creative themes and examine reported reach. Keeping the source and record type with each ad helps preserve context when combining results. Approved research access suits work that meets the official eligibility and permitted-use requirements. A scraping route needs closer inspection of the library it covers and whether its output supports creative research, reach analysis or both.

Checklist

  • Check source and recordType before combining results; confirm which library and record categories the Store listing covers.
  • Distinguish adImpressions from adImpressionsMin and adImpressionsMax, and confirm how the tool represents reported reach.
  • For creative research, check whether adTitle and adUrl are sufficient; the published schema does not explicitly list a market column or direct media URL.

Where the data is incomplete

The published schema also does not explicitly identify a market column, so geographic coverage needs confirmation before comparing markets.

Check missing values and the meaning of impression ranges before comparing advertiser performance.

Official API route

TikTok Commercial Content Library / Research API

TikTok's research and commercial-content library products provide ad transparency data to approved researchers and eligible users.

Price. No public self-serve price; eligibility rules apply.

Limits. Application, eligibility and rate limits apply.

Official documentation

Check TikTok's terms and the permitted uses attached to the relevant transparency or research product before collecting or reusing records. This is general information, not legal advice.

Read TikTok Ads Library's terms. Keep to public data, do not bypass logins or access controls, and check whether personal data is involved before you collect it. The can-I-scrape checklist walks through it.

How to start

  1. Choose a narrow supported query and keep the initial search focused on the record category you need.
  2. Review source, recordType, advertiser identity, dates and available creative links in the resulting dataset before collecting a broader sample.

Call TikTok DSA Ads Transparency Library Scraper from code

The example input uses the Actor's published defaults; set your own TikTok Ads Library query before you run it. You need an Apify API token.

Python

from apify_client import ApifyClient

client = ApifyClient("<YOUR_APIFY_TOKEN>")
run_input = {
    "mode": "library",
    "keyword": "Nike",
    "adIds": [],
    "startUrls": [],
    "region": "DE",
    "sortBy": "last_shown_date,desc",
    "adType": "all",
    "adStatus": "active",
    "age": [],
    "gender": "all",
    "uniqueReach": "all",
    "exactPhrase": False,
    "includeDetails": False,
    "countOnly": False,
    "maxItems": 3,
    "ccCountry": "US",
    "ccPeriod": "30",
    "ccOrderBy": "for_you",
    "ccObjective": "all",
    "ccIndustry": "all",
    "ccLanguage": "all",
    "ccSweep": False,
    "ccIncludeDetails": False
}

run = client.actor("vexaloom-labs/tiktok-dsa-ads-transparency-library-scraper").call(run_input=run_input)
if run is None:
    raise RuntimeError("The Actor run was not found.")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

pip install apify-client

JavaScript

import { ApifyClient } from "apify-client";

const client = new ApifyClient({ token: "<YOUR_APIFY_TOKEN>" });
const input = {
    "mode": "library",
    "keyword": "Nike",
    "adIds": [],
    "startUrls": [],
    "region": "DE",
    "sortBy": "last_shown_date,desc",
    "adType": "all",
    "adStatus": "active",
    "age": [],
    "gender": "all",
    "uniqueReach": "all",
    "exactPhrase": false,
    "includeDetails": false,
    "countOnly": false,
    "maxItems": 3,
    "ccCountry": "US",
    "ccPeriod": "30",
    "ccOrderBy": "for_you",
    "ccObjective": "all",
    "ccIndustry": "all",
    "ccLanguage": "all",
    "ccSweep": false,
    "ccIncludeDetails": false
};

const run = await client.actor("vexaloom-labs/tiktok-dsa-ads-transparency-library-scraper").call(input);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

npm install apify-client

cURL

curl -X POST "https://api.apify.com/v2/actors/vexaloom-labs~tiktok-dsa-ads-transparency-library-scraper/run-sync-get-dataset-items"   -H "Authorization: Bearer $APIFY_TOKEN"   -H "Content-Type: application/json"   -d '{"mode":"library","keyword":"Nike","adIds":[],"startUrls":[],"region":"DE","sortBy":"last_shown_date,desc","adType":"all","adStatus":"active","age":[],"gender":"all","uniqueReach":"all","exactPhrase":false,"includeDetails":false,"countOnly":false,"maxItems":3,"ccCountry":"US","ccPeriod":"30","ccOrderBy":"for_you","ccObjective":"all","ccIndustry":"all","ccLanguage":"all","ccSweep":false,"ccIncludeDetails":false}'

Waits for the run and returns the dataset items (runs over 300 seconds return HTTP 408; start an async run instead).

MCP (AI agents)

{
  "mcpServers": {
    "apify": {
      "url": "https://mcp.apify.com?tools=vexaloom-labs/tiktok-dsa-ads-transparency-library-scraper",
      "headers": {
        "Authorization": "Bearer <YOUR_APIFY_TOKEN>"
      }
    }
  }
}

Adds this Actor as a tool in an MCP client that takes a remote server URL (Cursor, VS Code, Claude Code) through Apify's hosted MCP server. OAuth sign-in also works without the header. Clients that only start local servers can wrap the URL with npx mcp-remote.

Questions people ask

Can anyone use TikTok's official research access?

Official research and commercial-content access is limited to approved researchers and eligible users. Application requirements, eligibility rules and rate limits apply.

Does an ad link include the creative file?

The published schema lists adUrl and landingPageUrl but does not explicitly list a direct image or video URL. Check the returned destination before treating an ad link as a media asset.

How should I handle impression ranges?

Preserve adImpressionsMin and adImpressionsMax as separate values. Confirm how adImpressions relates to those bounds before using it in comparisons.

Can I compare targeting across markets?

The published schema does not explicitly list a market column or detailed audience-targeting columns. Confirm geographic coverage and available targeting information in the Store listing before choosing this route for market comparisons.

What is the cheapest catalogue Actor for TikTok Ads Library data?

TikTok DSA Ads Transparency Library Scraper lists $0.99 per 1,000 results (pay per event), with 31 fields in its published output schema. Start events and platform usage are billed separately. Checked 2026-11-12.

Which TikTok Ads Library scraper returns the most core fields?

TikTok DSA Ads Transparency Library Scraper covers 2 of the 5 core TikTok Ads Library fields this page tracks (advertiser, ad copy, creative url, started at, market), based on its published output schema.

Does TikTok Ads Library have an official API?

Limited access: TikTok's research and commercial-content library products provide ad transparency data to approved researchers and eligible users. No public self-serve price; eligibility rules apply.

Is it legal to scrape TikTok Ads Library?

It depends on what you collect and how. Check TikTok's terms and the permitted uses attached to the relevant transparency or research product before collecting or reusing records. Read TikTok Ads Library's terms (https://www.tiktok.com/legal/page/us/terms-of-service/en) before you collect, and check whether personal data is involved. This is general information, not legal advice.

More on TikTok Ads Library

Sources

Text updated 2026-11-12 Data checked 2026-11-12
Cite this page

Scraper Finder. "How to get TikTok Ads Library data." https://scraperfinder.com/sites/tiktok-ads-library/ (data checked 2026-11-12).

Highest-scoring catalogue Actor

TikTok DSA Ads Transparency Library Scraper: 2 of 5 core fields, $0.99 per 1,000 results, score 69. The highest score overall is 81 (TikTok Ads Library Scraper, a Store tool from another publisher); both are in the table above.

Open in Apify Store