The Ultimate Guide to Scraping TikTok Ads for Free (2023)
In this article, we'll learn how to scrape TikTok's top ads without coding. But why do we need to scrape TikTok ads in the first place? đ€
TikTok has 2.1 billion monthly users. As an advertiser you can reach around 885 million people on TikTok. Scraping popular TikTok ads has a lot of use cases for:
But is it legal âïž to extract data from TikTok ads? Letâs answer this first.
Collecting TikTok data, including ads, is legal, but you must follow data protection and privacy laws. Important considerations include:
Purpose of Data Collection
Itâs important to understand the ethical use of data. You can not collect data in a way that violates the companyâs terms of services or copyright ownership. For example:
Personal Identifiable Information (PII)
You must refrain from collecting sensitive information without usersâ consent. For example:
In our case, we collect data from TikTok's Creative Center. Top ads are accessible to everyone. Weâre not collecting any sensitive data. So this practice is well within legal boundaries.
Read our guide on the legality of web scraping for more information.
OK so scraping TikTok ads is legal and has many vital use cases.
But why not use TikTok's official API? đ
TikTok offers various APIs in its developer portal. For ads, use the Commercial Content API to access public data on ads, advertisers, and other commercial content.
Plus, the official API is entirely free.
Then why arenât we using it?
The TikTok official API has 3 flaws:
Letâs learn more about these limitations.
Accessing TikTok's official API isn't straightforward. You need to apply, state a valid reason, and provide a clear use case. TikTok decides whether to grant you access or not.
Even if you get access, there's another challenge. TikTok's free APIs have usage restrictions. The commercial content API allows a maximum of 600 requests per day.
If itâs acceptable for you, there's one more limitation to consider. The API provides data only from EU, EEA, and Continental European countries.
Ad data from all countries is accessible in the Creative Center, but the API is limited to the EU. Therefore, no data from Asia, the Middle East, or any other region is available.
These 3 major limitations make the API a useless option for us. So what other options do we have? Well we can either code a TikTok ads scraper or use a no-code solution.
If you know Python, you can write code to scrape TikTok ads. I might explain TikTok data scraping using python in a future article.
There are also scripts on GitHub, but not everyone is an expert coder. Dealing with HTML, css, and javascript is not everyoneâs cup of tea.
Not everyone can reverse engineer TikTok to find backend API endpoints. As you can see, itâs code, not plain English.
So what if you want a more straightforward solution? Thatâs where no-code scrapers enter the chat. But there are too many options. đ Well Iâve got the best TikTok ads spy tool for you.
Our TikTok Top Ads scraper is a powerful tool. It's designed to easily extract top ads from TikTok's creative center. Let's explore some key features of this hot boi.
But the real question is⊠how much does it cost?
Lobstrâs pricing is simple and clear:
Now letâs jump to the fun part⊠scraping TikTok top ads without writing a single line of code.
Alright, letâs get started! Weâre going to do it in 5 simple steps:
Iâll be using a relevant real-life example to help you understand the process better. Weâll scrape top ads for âiPhone casesâ in the US.
Also check out our step by step guide on scraping leads from LinkedIn sales navigator.
Letâs go đ
First, make sure you have an active account on Lobstr.io. Donât have one yet? What are you waiting for? đ§ I mentioned we have a free forever plan. Go sign up right now. đ
After signing up, find the "create new squid" button on the dashboard. Click it, search for "TikTok," choose "TikTok Top Ads Scraper," and congratulations, your squid is now ready.
Next step is to add tasks. Weâll add the keyword or brand name weâve targeted. You can also add hashtags. But what if we have 100 brands or keywords? đ€
Adding tasks in bulk that too manually can be time consuming. In this case, we can use the âUpload Fileâ option. This allows you to upload a file full of tasks in a second.
You can upload a file full of keywords and brand names in txt, csv, or tsv format. Make sure youâve at least 1 column named âkeywordâ.
Suppose, I sell iPhone Cases online, shipping them all across the USA. How can I see what type of ads performed well on TikTok related to my niche?
Iâll enter all relevant keywords in the scraper. For this task, Iâm adding keywords like: iPhone Case, customized iPhone Cases in the tasks.
Once youâve added all tasks, click the âsaveâ button to move to settings parts.
Letâs start with the basic settings. Firstly, youâll see options similar to TikTok's Top Ads Dashboard. Choose your preferred region, industry, goal, likes, time range, and sorting order.
In my case, I aim to extract ads from the USA within the last 30 days. I'm targeting the top 20% based on likes count, sorted by reach.
Then youâll see the âWhen to end runâ option. This is where you specify when the scraping should stop.
In the âwhen to end runâ setting, we have 2 options.
The first option i.e. âEnd run once no credits leftâ ends the run once youâve consumed all your daily credits. This is best for getting fresh data.
If you have limited keywords, this option is perfect for you. The scraper will fetch fresh ads from those keywords every time it runs.
For example, if youâre on a free account, you have 15 minutes of execution time daily. With up to 150 ads collected per minute, extract around 2200+ ads per day, and the run will end.
The second option is âEnd run once all tasks completeâ. If you have 100s of keywords and want to scrape ad data from all, this option is best for you.
It pauses the run when you consume all your daily credits, and resumes it next day when credits refill.
Suppose you have a list of 500 keywords and youâre on the free plan. At a speed of 150 results per minute, itâll scrape 2k+ results on the first day and pause the job.
When your credits refill, itâll resume the job and again scrape 2k+ ads the next day.
Since Iâve less than 1000 ads to scrape, Iâll leave this option as it is.
After selecting this preference, weâll move to the advanced settings. Here we can set concurrency, and deal with duplicate results. Hereâs how it works:
The first option is concurrency. It means number of bots deployed per run. More concurrency equals faster scraping.
To remove duplicated results by toggling âUnique Resultsâ. To make the output file Excel-friendly by removing the line breaks.
Iâm using a free account, so the concurrency in my case will remain 1. Because you canât increase concurrency in the free plan.
After adjusting settings, click save, then go to notifications. Turn on "on success" for successful run alerts and opt for error notifications if it stops.
After setting notifications, click save and move to the final step.
Now, let's launch our tool đ to fetch that valuable data. You can do it manually by clicking "Save and Extract," or use the schedule feature. Here's how it works.
Letâs say you want to spy on your competitor brands or an industry leaderâs ads. You want to track which ads performed best for them every week or month.
In my case, Iâm tracking ads within a 30 day time range, so Iâd like to schedule this squid to run on the 30th day of every month.
Letâs launch our beast⊠đ
Once you've launched the scraper, it'll start collecting ads data.
You can keep looking at the hot console or close the tab and do some other work. It will notify you once the run completes successfully.
To access data, you can either view it in the results tab or download the csv file. Oh, did I tell you how to export it to a 3rd party service like Google Sheets?
It's easy. Click the "delivery" icon on the top right and configure your preferred service.
Let's see what our boi fetched for me. Here goes the Excel snapshot of our data:
That's it. It was this simple to extract top ads from TikTok Top ads dashboard. Give it a try for Free. Let me answer some questions you may still have in your mind.
Can I download the results as JSON?
This tool only supports exporting results to csv. But, you can convert csv to JSON using this website.
Can I download TikTok videos using this scraper?
TikTok top ads scraper extracts data for you to study ad performance. Itâs not a TikTok video downloader.
Can I use Selenium to scrape TikTok data
Yes, you can use Selenium automation, but it's not as efficient as ready-made scrapers like lobstr.io. Itâs slow and needs more resources.
If you want a step-by-step tutorial, let us know through live chat or submit your idea here.
What are the limitations of this scraping tool?
Till now, I havenât encountered no limitation. You can push it to the limits to find out more. Do give us your feedback.
Can I scrape TikTok profiles using this scraper?
This tool scrapes TikTok top ads data only. If you want to scrape user profiles of TikTok users, you can share your idea here.
So, this was my step-by-step guide on scraping TikTok ads. Lobstr.io simplifies scraping TikTok ads without coding, making it easy for all users.
Not convinced yet? Give the free forever plan a shot â no trials, no credit card needed. Use it until you're ready to join the Lobstr family.
Self-proclaimed Head of Content @ lobstr.io. I write all those awesome how-tos, listicles, and (they deserve) troll our competitors.