Tiktok Ads
Pricing
from $2.00 / 1,000 results
Tiktok Ads
Extract TikTok ads by keyword, advertiser, or ID. Get creatives, CTR, targeting & reach data. Export to JSON/CSV/Excel. No login required.
Pricing
from $2.00 / 1,000 results
Rating
0.0
(0)
Developer
DataFusionX
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
TikTok Ads Scraper — Ad Library Data Extractor (Fast & No-Code)
Extract TikTok ads by keyword, advertiser, region, and date range. Get video URLs, cover images, audience size, targeting data, and campaign details — exported to JSON, CSV, or Excel. No login required. No TikTok API approval needed.
What Is This Actor? (Quick Answer)
The TikTok Ads Scraper extracts structured data from the TikTok Ad Library. You provide a keyword, advertiser name, region, and date range — the actor returns a complete dataset of matching ads including video/image creatives, audience size estimates, impression data, ad status, and (optionally) full targeting intelligence like age groups, genders, and geographic reach. Output is available as JSON, CSV, Excel, or via the Apify API.
What Data Does It Extract?
Every ad record returned by this actor contains the following fields:
| Field | Type | Description |
|---|---|---|
ad_id | String | Unique TikTok Ad Library identifier |
advertiser_name | String | Name of the brand or business running the ad |
status | String | Ad audit status: active, removed, or rejected |
sor_status | String | Secondary review status from TikTok's moderation system |
is_active | Boolean | true if both audit and sor_status are active |
creative_type | String | single_video or image_carousel |
ad_format | String | TikTok ad format type code |
video_urls | Array | Direct CDN URLs for video creatives |
image_urls | Array | Direct CDN URLs for image creatives (carousel ads) |
cover_images | Array | Thumbnail/cover image CDN URLs |
first_shown_date | ISO 8601 | Date the ad first ran on TikTok |
last_shown_date | ISO 8601 | Most recent date the ad was served |
estimated_audience | String | TikTok's estimated reach: e.g. 0-1K, 1K-10K, 100K-1M |
impression | Integer | Impression count (where disclosed) |
spent | String | Ad spend range (where disclosed by TikTok) |
rejection_info | String | Pipe-separated rejection reasons (if ad was rejected) |
Additional Fields (when resolveAdDetails: true)
| Field | Type | Description |
|---|---|---|
adv_biz_ids | String | Registered business IDs of the advertiser |
registry_location | String | Country where the business is registered |
sponsor | String | "Paid for by" disclosure label |
tt_user | String | Linked TikTok account handle |
target_regions | Array | Countries the ad was targeted to |
target_impressions_by_region | Object | Impression share per country { "US": "45%" } |
target_age_groups | Array | Age demographics: e.g. ["18-24", "25-34"] |
target_genders | Array | Gender targeting: ["male"], ["female"], or both |
target_audience_size | String | Estimated target audience size, e.g. 5.2M-6.4M |
has_custom_audience | Boolean | Whether custom or lookalike audience was used |
interest_targeting | String | Interest categories used for targeting |
video_interactions | String | Video engagement targeting parameters |
creator_interactions | String | Creator engagement targeting parameters |
Sample Output
Below is a real sample from a live scrape of the TikTok Ad Library:
{"ad_id": "1863408574079313","advertiser_name": "kuranikerimden","status": "active","sor_status": "active","is_active": true,"creative_type": "single_video","ad_format": "2","video_urls": ["https://library.tiktok.com/api/v1/cdn/1777100680/video/..."],"image_urls": [],"cover_images": ["https://p16-sign-sg.tiktokcdn.com/tos-alisg-p-0037/..."],"first_shown_date": "2026-04-25T02:44:20Z","last_shown_date": "2026-04-25T02:44:20Z","estimated_audience": "-","impression": 0,"spent": null,"rejection_info": ""}
Key Features
- No TikTok account or API approval required — works entirely via the public TikTok Ad Library
- Global coverage — scrape ads from 47+ countries or use
region: "all"for worldwide results - Keyword + advertiser search — filter by brand name (e.g.
shopify), domain, or keyword - Date range filtering — extract ads shown between any
startDateandendDate - Flexible sort order — sort by
last_shown_date,create_time, orimpressions - Two scrape modes — fast search-results mode or enriched full-detail mode with targeting data
- Creative URL extraction — get direct CDN video and thumbnail URLs for every ad
- Pagination handled automatically — fetch up to 100,000 ads in a single run
- Export to JSON, CSV, Excel, or XML — via Apify dataset or API
- Residential proxy support — built-in Apify proxy integration for reliable, unblocked scraping
- No-code UI — configure all inputs visually in the Apify console, no programming needed
- Maintained by a Lead Technical Consultant — actively updated and production-grade
How to Use This Actor (Step-by-Step)
Step 1 — Open the Actor
Go to apify.com/devil_port369-owner and open the TikTok Ads Scraper actor. Click Try for free.
Step 2 — Configure Your Input
Fill in the input form in the Apify console, or paste a JSON config directly:
{"query": "shopify","region": "all","startDate": "2026-01-01","endDate": "2026-04-25","order": "create_time,desc","limit": 1000,"resolveAdDetails": false}
| Input Field | Required | Description |
|---|---|---|
query | ✅ Yes | Keyword or brand name to search (e.g. "nike", "shopify") |
region | No | Country code or "all" for global (default: "all") |
startDate | ✅ Yes | Ads shown on or after this date (YYYY-MM-DD) |
endDate | ✅ Yes | Ads shown on or before this date (YYYY-MM-DD) |
order | No | Sort order (default: "last_shown_date,desc") |
limit | No | Max ads to scrape, min 12 (default: 50) |
resolveAdDetails | No | Fetch full targeting data per ad (slower, default: false) |
proxyConfiguration | No | Proxy settings (Apify residential recommended) |
Step 3 — Run the Actor
Click Start. The actor will begin scraping the TikTok Ad Library and stream results directly into your Apify dataset in real time.
Step 4 — Export Your Data
When the run completes, go to the Dataset tab and export to:
- JSON — for developers and API integrations
- CSV / Excel — for analysts and marketing teams
- XML — for enterprise pipelines
- Apify API — query results programmatically via REST
Step 5 — Schedule or Automate (Optional)
Use Apify's built-in Scheduler to run this actor daily, weekly, or on any cron schedule. Pipe results to Google Sheets, Slack, Airtable, or any webhook via Apify's native integrations.
Input Schema Reference
Sort Order Options
| Value | Description |
|---|---|
last_shown_date,desc | Most recently active ads first |
last_shown_date,asc | Oldest last-shown ads first |
create_time,desc | Newest created ads first |
create_time,asc | Oldest created ads first |
impressions,asc | Lowest impression count first |
impressions,desc | Highest impression count first |
Supported Regions (47 Countries)
all · US · GB · AU · CA · IN · BR · MX · JP · KR · DE · FR · IT · ES · NL · PL · SE · NO · DK · FI · AT · BE · BG · CY · CZ · EE · GR · HR · HU · IE · LT · LU · LV · MT · PT · RO · SI · SK · CH · ID · TH · PH · VN · SG · MY · ZA · AE · SA
Use Cases
🕵️ Competitor Ad Intelligence
Monitor what your competitors are running on TikTok. Search by brand name, filter by region, and see exactly which creatives they're pushing — video URLs included.
📊 Market Research & Trend Analysis
Identify which product categories, industries, and advertisers are most active on TikTok Ads in any market. Track ad volume trends over time using date range filtering.
🎯 Ad Creative Inspiration
Download video and image URLs from top-performing ads in your niche. Use as reference material for your own TikTok ad creative briefs.
📋 DSA / EU Transparency Compliance Research
Access Ad Library data required for Digital Services Act (DSA) compliance research. Filter by EU/EEA country codes and retrieve sponsor and registry information.
🤖 AI & LLM Training Data
Build advertising datasets for fine-tuning models on ad copy, CTAs, creative formats, and campaign patterns across industries.
📈 Agency Client Reporting
Automate weekly competitor ad monitoring for clients. Schedule the actor, pipe results to Google Sheets, and build live dashboards.
🔬 Academic & Journalism Research
Investigate advertising patterns, political ad spending, or industry-specific ad activity on TikTok using structured, exportable data.
Fast Mode vs. Enriched Mode
Fast Mode (resolveAdDetails: false) | Enriched Mode (resolveAdDetails: true) | |
|---|---|---|
| Speed | ⚡ Very fast | 🐢 Slower (1 extra request per ad) |
| Data | Core ad fields + creative URLs | All core fields + full targeting intelligence |
| Cost | Lower compute units | Higher compute units |
| Best for | Large-scale scraping, creative research | Targeting analysis, audience intelligence |
| Records | Ad schema (16 fields) | AdDetails schema (29 fields) |
Pricing & Performance
This actor is priced based on Apify compute units (CUs):
| Scrape Volume | Approx. CUs | Estimated Cost |
|---|---|---|
| 100 ads (fast mode) | ~0.01 CU | <$0.01 |
| 1,000 ads (fast mode) | ~0.05 CU | ~$0.01 |
| 10,000 ads (fast mode) | ~0.4 CU | ~$0.08 |
| 1,000 ads (enriched mode) | ~0.5 CU | ~$0.10 |
Costs depend on Apify subscription tier. See Apify pricing.
Frequently Asked Questions
Does this actor require a TikTok account or API key?
No. This actor scrapes the public TikTok Ad Library at library.tiktok.com. No TikTok account, login, or API approval is required.
How many ads can I scrape in one run?
Up to 100,000 ads per run. Set limit: 0 for no cap, or specify any number ≥ 12.
What is the difference between status and sor_status?
status is TikTok's primary moderation audit result. sor_status is a secondary review layer. An ad is truly active only when both are "active" — reflected in the is_active: true field.
Why are some impression values 0?
TikTok only discloses impression counts for ads that meet a minimum threshold. Ads with very low reach show impression: 0 by design.
Can I scrape a specific advertiser's ads?
Yes. Set query to the advertiser's TikTok name (e.g. "shoeodditorium") to see all their ads in the Ad Library.
Can I filter by ad format (video vs. image)?
The TikTok Ad Library API does not expose a server-side format filter. However, the creative_type field in every record tells you whether it's a single_video or image_carousel, which you can filter post-scrape.
Is this actor maintained and kept up to date?
Yes. This actor is actively maintained by Manoj Karki, a Lead Technical Consultant and Data Engineer with expertise in large-scale web scraping and data engineering. Updates are pushed whenever TikTok modifies their Ad Library API.
Can I use this on a schedule to monitor competitors daily?
Absolutely. Use Apify's built-in Scheduler to run this actor automatically. Combine with the Apify → Google Sheets integration to populate a live competitor dashboard.
Related Actors by the Same Author
Looking for more data extraction tools? Check out other actors maintained by the same Lead Technical Consultant:
Technical Details
- Language: Python 3.12+
- HTTP Engine:
curl_cffiwith Chrome TLS fingerprint impersonation - Proxy: Apify Residential Proxy (built-in) with scrape.do fallback
- Source: TikTok Ad Library API (
library.tiktok.com/api/v1) - Pagination: Automatic offset +
search_idcursor pagination - Output: Apify Dataset (JSON/CSV/Excel/XML/RSS)
- Memory: Streaming mode — no RAM spike on large scrapes
Changelog
v2.2.0 (2026-04-25)
- Added
resolveAdDetailstoggle for fast vs. enriched mode - Added scrape.do proxy fallback when Apify proxy fails
- Improved retry logic with exponential back-off
- Dataset schema unified across both modes
v1.0.0 (Initial Release)
- TikTok Ad Library search with keyword, region, and date filters
- Core ad fields: video URLs, cover images, audience, status
Support & Feedback
Found a bug or have a feature request? Use the Issues tab on this actor's Apify page or reach out via the Apify community forum.
If this actor saved you time, please leave a ⭐ review on the Apify Store — it helps other users discover it.
Built and maintained by Manoj Karki — Lead Technical Consultant & Data Engineer. Expertise: Web Scraping · Data Engineering · API Integration · Automation