TikTok Ad Library Scraper
Pricing
from $0.90 / 1,000 results
TikTok Ad Library Scraper
Scrape the TikTok Commercial Content Library for ad creatives, advertiser info, and campaign metadata. Monitor competitor ad strategies on TikTok.
Pricing
from $0.90 / 1,000 results
Rating
0.0
(0)
Developer
Rastriq — Structured data from the world
Maintained by CommunityActor stats
0
Bookmarked
30
Total users
19
Monthly active users
15 days ago
Last modified
Categories
Share
✅ Update — 2026-07-04: "system busy" / 421 error fixed
If your runs recently failed with
421 Misdirected Request/system busyon the search step, this is now resolved. The cause was a change on TikTok's side that started gating the search endpoints behind a browser TLS/HTTP2 fingerprint check. The Actor's HTTP client has been updated to pass this check — no configuration change is needed on your side. Just re-run as usual.If you still see
421on a run, please open an issue on the Actor's Issues tab.
What data can you scrape from TikTok Ad Library?
Extract ad creatives, advertiser data, and campaign intelligence from the TikTok Ad Library — TikTok's official transparency platform for paid ads across 33 EU/EEA regions.
- Three scraping modes — Search ads by keyword, look up specific advertisers, or discover new advertisers via brute-force prefix search
- Full ad details — Video URLs, thumbnails, audience estimates, impressions, spend, targeting by age/gender/location
- Export anywhere — JSON, CSV, Excel, or via the Apify API and integrations
Output: TikTok Ad Library data structure
| Field | Label | Format |
|---|---|---|
adId | Ad ID | text |
adType | Ad type | text |
adVideoUrl | Video URL | link |
adVideoCover | Video cover | image |
adImageUrls | Image URLs | array |
adStartDate | First shown | date |
adEndDate | Last shown | date |
adEstimatedAudience | Audience | text |
adSpent | Ad spend | text |
adImpressions | Impressions | text |
advertiserName | Advertiser | text |
advertiserId | Advertiser ID | text |
advertiserLocation | Location | text |
advertiserPaidForBy | Paid for by | text |
advertisingObjective | Objective | text |
targetingAgeRange | Age targeting | text |
targetingGender | Gender targeting | text |
targetingLocations | Location targeting | array |
Example output (one record)
{"adId": "1848459287600130","adType": "video","adVideoUrl": "https://library.tiktok.com/api/v1/cdn/...","adVideoCover": "https://p21-ad-sg.ibyteimg.com/...","adStartDate": "2026-06-15","adEndDate": "2026-07-10","adEstimatedAudience": "100K-200K","adImpressions": "500K-1M","advertiserName": "Nike","advertiserId": "7345893407476285441","advertiserLocation": "United States","advertiserPaidForBy": "Nike Inc.","advertisingObjective": "Traffic","targetingAgeRange": "18-34","targetingGender": "All","targetingLocations": ["Spain", "France", "Germany"]}
🚀 Quick start
- Click Start with the default input to test with a small sample (~20 Nike ads, under 30 seconds).
- Open the Output tab to preview results.
- Export as CSV / Excel / JSON, or connect via API.
How to scrape TikTok Ad Library — input options
Option 1: Paste a URL (easiest)
Copy a URL from your browser at library.tiktok.com and paste it in TikTok Ad Library URL. The Actor extracts all parameters (region, keyword, dates) automatically.
Example:
https://library.tiktok.com/ads?region=ES&search_key=nike&query_type=1
When you paste a URL, the filter fields below are skipped.
Option 2: Use filters
| Field | Description | Default |
|---|---|---|
| Scraping mode | search_ads — search by keyword/advertiser. discover_advertisers — brute-force discover advertisers. | search_ads |
| Search query | Keyword (e.g. running shoes) or advertiser name (e.g. Nike). | nike |
| Query type | keyword — searches ad text and titles. advertiser — finds by advertiser name. | keyword |
| Region | Country filter. Select all for all 33 EU/EEA regions. | all |
| Max results | Hard cap on results. TikTok limits searches to ~3,600 per query. | 100 |
| Start / End date | Date range. Accepts YYYY-MM-DD or relative like 31 days. | Last 31 days |
| Include ad details | Fetch targeting, audience, spend data. Slower (1 extra request per ad). | false |
| Ad IDs | Direct lookup by comma-separated ad IDs. Skips search. | — |
| Advertiser IDs | Filter by advertiser business IDs. | — |
| Request delay | Delay between API requests (ms). Increase to 1000–2000 if rate-limited. | 500 |
How much does it cost to scrape TikTok Ad Library?
This Actor uses Pay-Per-Event pricing — you pay only for results delivered, not for compute time.
| Plan | What you get |
|---|---|
| Free tier | $5/month of platform credits — enough for thousands of ad results |
| Paid plans | Scale to tens of thousands of results per run |
Use cases
- Competitive ad intelligence — Monitor what ads your competitors are running, their creatives, messaging, and targeting across EU markets.
- Brand protection — Detect unauthorized use of your brand name or trademarks in TikTok ads.
- Market research — Analyze ad spend, audience targeting, and creative trends for any industry or category.
- Influencer marketing — Discover which brands are running paid partnerships and sponsored content on TikTok.
- Compliance monitoring — Track ad transparency data for regulatory compliance across EU/EEA regions.
🔄 Integrations & scheduling
- Schedule daily/weekly runs from the Apify Console for automated data collection.
- Push results to Google Sheets, Slack, Zapier, Make, webhooks or any database.
- Fetch datasets via the Apify REST API or the official JavaScript/Python clients.
Is it legal to scrape TikTok Ad Library?
This Actor collects only publicly available data from TikTok's official Ad Library transparency platform. The Ad Library was created specifically to provide public access to advertising data for transparency purposes. You are responsible for using the extracted data in compliance with TikTok's Terms of Service and applicable data protection laws (including GDPR where relevant).
❓ FAQ
Can I access the data via API? Yes. Every run stores its dataset on Apify. Fetch it via REST API or use the official JavaScript/Python clients.
What export formats are supported? JSON, CSV, Excel (XLSX), XML, and HTML table. You can also push data directly to Google Sheets or any webhook endpoint.
Do I need proxies? Not required for standard usage. The Actor works without proxies for most runs. Enable residential proxies only for very large scraping jobs or if you encounter rate limiting.
What regions are supported? All 33 EU/EEA regions available in TikTok's Ad Library: Austria, Belgium, Bulgaria, Croatia, Cyprus, Czech Republic, Denmark, Estonia, Finland, France, Germany, Greece, Hungary, Iceland, Ireland, Italy, Latvia, Liechtenstein, Lithuania, Luxembourg, Malta, Netherlands, Norway, Poland, Portugal, Romania, Slovakia, Slovenia, Spain, Sweden, and the United Kingdom.
Can I download the ad videos?
Yes. The adVideoUrl field contains a direct link to the ad video file. You can download videos programmatically using the URLs from the dataset.
Related Scrapers by Rastriq
- Google Ads Scraper — Google Ads Transparency Center