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
5.0
(1)
Developer
Rastriq — Structured data from the world
Maintained by CommunityActor stats
0
Bookmarked
41
Total users
20
Monthly active users
3 days ago
Last modified
Categories
Share
✅ Update — 2026-08-22: "system busy" / 421 error fixed (v0.1.40)
Over the past few weeks, some runs failed with
421 "system busy"errors. TikTok tightened their security and started blocking all non-browser connections to the Ad Library API.This is now fixed. The Actor has been reworked to use a real browser engine internally, so it connects to TikTok exactly the way a normal browser does. No input changes needed on your side — just re-run as usual.
One change: minimum memory is now 2048 MB (the browser engine needs it). Runs started from the console use this automatically. If you set memory manually in a schedule or API call, update it to at least 2048 MB.
If you still see errors, 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).
About the data
This actor is part of Rastriq's ad libraries coverage. See the full source list, the normalised output fields and the use cases behind it: ad library datasets.
❓ 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? Yes — residential proxies are recommended. The Actor uses Apify's residential proxy pool by default, which works reliably. If you provide your own proxy, make sure it is a residential (not datacenter) proxy, as TikTok blocks datacenter IP ranges.
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