TikTok Ads Scraper
by lexis-solutions
Ever wonder what ads your competitors are actually running on TikTok? This scraper pulls back the curtain. It taps directly into the TikTok Ads Librar...
Opens on Apify.com
About TikTok Ads Scraper
Ever wonder what ads your competitors are actually running on TikTok? This scraper pulls back the curtain. It taps directly into the TikTok Ads Library, letting you collect current and past ad campaigns to see what's working. You'll get the full picture: the video URL, when and where the ad ran, total impressions, and other key performance details. I use it to download all that data into a structured format, which is perfect for a deep dive. It’s become my go-to for competitive analysis—instead of guessing, I can see exactly which creative styles and targeting strategies are getting traction. For marketers and analysts, it’s a straightforward way to benchmark your own ads and spot emerging trends. Developers will appreciate how it automates a manual process, turning the Ads Library into a usable dataset. If you need to understand the TikTok ad space, this gives you the raw material to build that insight.
What does this actor do?
TikTok Ads Scraper is a web scraping and automation tool available on the Apify platform. It's designed to help you extract data and automate tasks efficiently in the cloud.
Key Features
- Cloud-based execution - no local setup required
- Scalable infrastructure for large-scale operations
- API access for integration with your applications
- Built-in proxy rotation and anti-blocking measures
- Scheduled runs and webhooks for automation
How to Use
- Click "Try This Actor" to open it on Apify
- Create a free Apify account if you don't have one
- Configure the input parameters as needed
- Run the actor and download your results
Documentation
TikTok Ads Scraper
## What is the TikTok Ads Scraper? The TikTok Ads Scraper is designed to extract data from TikTok Ad Library. It enables users to gather information about ads displayed on TikTok. The scraper can be used for competitor analysis, ad copy brainstorming, and more. ## What data can the TikTok Ads Scraper extract? The TikTok Ads Scraper can extract the following data from the TikTok Ad Library: - Ad ID - Ad text - Ad impressions range - Ad shown countries - Impressions share by country (only EU countries) - Advertiser name - Advertiser ID - TikTok Video URL and more. ## What use cases does the TikTok Ads Scraper have? - Ad copy brainstorming and inspiration for your own ads 🧠 - Competitor analysis and benchmarking of your ads 📊 - Advertiser research and analysis 🕵️♀️ ## How to use the TikTok Ads Scraper 1. Create a free Apify account 2. Open TikTok Ads Scraper 3. Add a query to the input field, this could be a company name, domain, or a search string that appears in the ad 4. Click Start and wait for the results 5. Download the results in JSON, XML or CSV format or connect the actor to your backend via API ## 📥 Input To run the actor, you can input a: - adIds (optional) - An array of specific ad IDs to scrape. When provided, the actor will skip the search functionality and directly fetch the detail pages for these ads. Example: ["1848459287600130", "1820197122833570"] - Query - A query to search for ads. This can be a company name, domain, or a search string that appears in the ad. - Advertiser Name - An advertiser name to search for ads. - startDate / endDate (optional) - Date range to filter ads (use ISO format YYYY-MM-DD). If startDate is omitted, it defaults to 1 year ago; if endDate is omitted, it defaults to the current time. If startDate is later than endDate, the default range (1 year ago → now) is applied. If endDate is in the future, the current time is used instead. - timezone (optional) - Timezone string (e.g., Europe/London). If left empty, the server's default timezone (UTC) is used. - quickSearch (optional) - When set to true, the scraper will skip the detail page requests and return data directly from the search results. This is faster but will result in missing fields (see Output section for details). Defaults to false. Note: If adIds is provided, the actor will ignore all other search parameters (query, advertiserName, etc.) and directly fetch the specified ads. You can provide either query, advertiserName, or both. When both are set, the actor prioritizes advertiserName (it tries to resolve the advertiser and, if it cannot, falls back to using the advertiser name as the query). If you leave query empty, set country to a specific region (anything except all). ## 📤 Output The results are stored in the default dataset associated with the actor. Each item is an ad, having the following format: > ⚠️ Note on quickSearch mode: > When quickSearch is enabled, the scraper skips detail page requests for faster execution. However, the following fields will be null or missing: > > - advertiserId > - advertiserName > - advertiserTtUser > - advertiserCountry (not included in output) > - adImpressions (not included in output) > - advertiserPaidForBy > - adTotalRegions > - targetingByLocation > - targetingByAge > - targetingByGender > > Use quickSearch: false (default) to get complete data with all fields populated. > 💡 Note: > The following enum is used for adtype: > > | Type | Value | > | ----- | ----- | > | text | "1" | > | video | "2" | > | image | "3" | json { "adId": "1848112963098658", "adTitle": "上海恩榕电子商务有限公司", "adType": "2", "adSpent": "", "adVideoUrl": "https://library.tiktok.com/api/v1/cdn/1764070053/video/aHR0cHM6Ly92NzcudGlrdG9rY2RuLmNvbS9iYTBmZWU5MWMwMDg5NDI5OWYzNTRlMzNlZGJhMjMyMS82OTI1ZTcxMS92aWRlby90b3MvYWxpc2cvdG9zLWFsaXNnLXZlLTAwNTFjMDAxLXNnL29JUUJsNkR3RkNBNkRzYVhBTmNXQUJLRGlvdVFJUWdmZ3BWSWVFLw==/c012558d-3959-4439-b57b-155dc15e3e57?a=475769&bti=PDU2NmYwMy86&ch=0&cr=0&dr=1&cd=0%7C0%7C0%7C0&cv=1&br=1256&bt=628&cs=0&ds=1&ft=.NpOcInz7ThUvGQPXq8Zmo&mime_type=video_mp4&qs=0&rc=ZTozOGg8Njo7ZWRkZDQ8aUBpM2twZnE5cmdyNzMzODYzNEA0YWEvNmNhXmMxYmAzMmMyYSMvL2RvMmRjMDNhLS1kMC1zcw%3D%3D&vvpl=1&l=20251125192732E13A9A84FCD62ECFD6FF&btag=e000b0000&cc=13", "adVideoCover": "https://p21-ad-sg.ibyteimg.com/origin/tos-alisg-p-0051c001-sg/oMXNy0ERi4zqAi5AFBoEtwAWYevhALB0BIcvmA", "adStartDate": 1762473600000, "adEndDate": 1762992000000, "advertiserId": "7345893407476285441", "advertiserName": "上海恩榕电子商务有限公司", "advertiserTtUserId": { "username": "enroutejewelry", "display_name": "en route jewelry", "avatar_url": "https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/70a6fb0dfd97f5427d020b84a6693575~tplv-tiktokx-cropcenter:168:168.jpeg?dr=9638&refresh_token=ea157d56&x-expires=1764241200&x-signature=RTLSA82JbQ1L6oyG8VBrD%2Fj3vmw%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=8aecc5ac&idc=useast5", "follower_count": "177.5K", "profile_web_link": "https://www.tiktok.com/share/user/6795191399140623365?source=ad_review", "account_type": "VERIFIED_BA" }, "advertiserLocation": "China", "adImpressions": "100K-200K", "advertiserPaidForBy": "BLUEVISION INTERACTIVE LIMITED", "adTotalRegions": 11, "adEstimatedAudience": "100K-200K", "targetingByLocation": [ { "region": "FR", "impressions": "12K" }, { "region": "AT", "impressions": "3K" }, { "region": "NO", "impressions": "4K" }, { "region": "CH", "impressions": "3K" }, { "region": "IT", "impressions": "15K" }, { "region": "DE", "impressions": "10K" }, { "region": "BE", "impressions": "13K" }, { "region": "GB", "impressions": "8K" }, { "region": "DK", "impressions": "3K" }, { "region": "PL", "impressions": "62K" }, { "region": "NL", "impressions": "11K" } ], "targetingByAge": [ { "region": "FR", "13-17": false, "18-24": true, "25-34": true, "35-44": false, "45-54": false, "55+": false }, { "region": "AT", "13-17": false, "18-24": true, "25-34": true, "35-44": false, "45-54": false, "55+": false }, { "region": "NO", "13-17": false, "18-24": true, "25-34": true, "35-44": false, "45-54": false, "55+": false }, { "region": "CH", "13-17": false, "18-24": true, "25-34": true, "35-44": false, "45-54": false, "55+": false }, { "region": "IT", "13-17": false, "18-24": true, "25-34": true, "35-44": false, "45-54": false, "55+": false }, { "region": "DE", "13-17": false, "18-24": true, "25-34": true, "35-44": false, "45-54": false, "55+": false }, { "region": "BE", "13-17": false, "18-24": true, "25-34": true, "35-44": false, "45-54": false, "55+": false }, { "region": "GB", "13-17": false, "18-24": true, "25-34": true, "35-44": false, "45-54": false, "55+": false }, { "region": "DK", "13-17": false, "18-24": true, "25-34": true, "35-44": false, "45-54": false, "55+": false }, { "region": "PL", "13-17": false, "18-24": true, "25-34": true, "35-44": false, "45-54": false, "55+": false }, { "region": "NL", "13-17": false, "18-24": true, "25-34": true, "35-44": false, "45-54": false, "55+": false } ], "targetingByGender": [ { "region": "FR", "female": true, "male": true, "unknown": true }, { "region": "AT", "female": true, "male": true, "unknown": true }, { "region": "NO", "female": true, "male": true, "unknown": true }, { "region": "CH", "female": true, "male": true, "unknown": true }, { "region": "IT", "female": true, "male": true, "unknown": true }, { "region": "DE", "female": true, "male": true, "unknown": true }, { "region": "BE", "female": true, "male": true, "unknown": true }, { "region": "GB", "female": true, "male": true, "unknown": true }, { "region": "DK", "female": true, "male": true, "unknown": true }, { "region": "PL", "female": true, "male": true, "unknown": true }, { "region": "NL", "female": true, "male": true, "unknown": true } ] } ## How many TikTok Ads can the TikTok Ads Scraper extract? The TikTok Ads Scraper uses pagination to extract all ads from the TikTok Ad Library. The scraper can extract 12 ads per page. You can control the number of pages to scrape by setting the maxPages input parameter. Notes: TikTok limits the Ad Library to 300 pages (12 ads per page). Even if more results exist, the actor cannot retrieve beyond that cap because TikTok does not expose additional pages. ## Why use the TikTok Ads Scraper? - ⚡️ Fast - The scraper is fast and efficient, allowing you to scrape ads in a programmatic way. - 🤙 Easy to use - The scraper is easy to use and requires no coding knowledge. All you need to do is input the query you want to scrape and the scraper will do the rest. - ☑️ Well-Maintained - The scraper is maintained by the Lexis Solutions team, ensuring that it is always up-to-date and working properly. ## FAQ - How to find a company's ads on TikTok? To find a company's ads on TikTok, you can use the TikTok Ad Library. This tool allows you to search for ads by advertiser name, domain, or country. - How to search for ads on TikTok? TikTok Ad Library allows you to search for ads by advertiser name, domain. You can also filter ads by date range and format. If you need to obtain the data programmatically, you can use the TikTok Ads Scraper. - What is the TikTok Ad Library? The TikTok Ad Library is a website that allows users to view ads that are displayed on TikTok's advertising network. It also provides information about the advertisers who are running these ads. - What is the TikTok Ads Scraper? The TikTok Ads Scraper is a web scraping tool designed specifically for TikTok Ad Library. This tool offers an effective way to mine valuable data from ads displayed on TikTok's advertising network. - Is Scraping TikTok Ads Legal? Scraping public information from TikTok Ad Library is legal as long as you are not violating any terms of service or privacy policies. However, it is important to note that scraping ads can be considered a violation of the terms of service of some websites, so it is always best to check before scraping. - How much does it cost? The cost for using the TikTok Ads Scraper is shown on the top of this page. You can also check the Apify Store page for more information. ## Need to scrape ads from Google? 👉 Check out our Google Ads Scraper ## Need to scrape ads from Bing? 👉 Check out our Bing Ads Scraper ## Need to scrape ads from Reddit? 👉 Check out our Reddit Ads Scraper ## Need to scrape ads from TikTok? 👉 Check out our TikTok Ads Scraper --- 👀 p.s. Got feedback or need an extension? Lexis Solutions is a certified Apify Partner. We can help you with custom solutions or data extraction projects. Contact us over Email or LinkedIn ## Support Our Work 💝 If you're happy with our work and scrapers, you're welcome to leave us a company review here and leave a review for the scrapers you're subscribed to. It will take you less than a minute but it will mean a lot to us! Image Credit: https://www.socialpilot.co/tiktok-marketing/tiktok-ads
Categories
Common Use Cases
Market Research
Gather competitive intelligence and market data
Lead Generation
Extract contact information for sales outreach
Price Monitoring
Track competitor pricing and product changes
Content Aggregation
Collect and organize content from multiple sources
Ready to Get Started?
Try TikTok Ads Scraper now on Apify. Free tier available with no credit card required.
Start Free TrialActor Information
- Developer
- lexis-solutions
- Pricing
- Paid
- Total Runs
- 84,892
- Active Users
- 487
Related Actors
🏯 Tweet Scraper V2 - X / Twitter Scraper
by apidojo
Instagram Scraper
by apify
TikTok Scraper
by clockworks
Instagram Profile Scraper
by apify
Apify provides a cloud platform for web scraping, data extraction, and automation. Build and run web scrapers in the cloud.
Learn more about ApifyNeed Professional Help?
Couldn't solve your problem? Hire a verified specialist on Fiverr to get it done quickly and professionally.
Trusted by millions | Money-back guarantee | 24/7 Support