TikTok Creative Center Scraper for Top Ads avatar

TikTok Creative Center Scraper for Top Ads

Pricing

from $1.25 / 1,000 top ads

Go to Apify Store
TikTok Creative Center Scraper for Top Ads

TikTok Creative Center Scraper for Top Ads

Collect ranked public TikTok Creative Center Top Ads and trending hashtags for creative and competitor research. Choose a market, time window, CTR ranking, and useful filters, then save structured rows with source links and public metrics.

Pricing

from $1.25 / 1,000 top ads

Rating

0.0

(0)

Developer

Maxime Dupré

Maxime Dupré

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

🎯 Public TikTok Creative Center research for marketers

This TikTok Creative Center scraper helps marketing teams, creative researchers, and competitor analysts collect ranked public TikTok Creative Center Top Ads and trending hashtags. Choose a market and time window, rank Top Ads by CTR, and save source links, creative details, public performance data, and hashtag popularity in an Apify Dataset. Public Creative Center access does not require a user-supplied source credential.

Each Dataset row represents one eligible public Creative Center result. Top Ads rows can include source identity, caption, rank, market, creative details, public performance values, media links, landing-page context, and target countries. Trending hashtag rows can include rank, market, category, public video and view counts, and source or analytics links. Optional fields appear only when TikTok provides them, and unavailable source values are not invented.

▶️ Run a Focused TikTok Creative Center Collection

  1. Choose Top Ads or Trending hashtags in resultType.
  2. For Top Ads, choose a ranking signal and add any matching keyword, industry, objective, language, format, or likes filter.
  3. Choose the market and timeWindow. Set maxItems when you want to stop after a chosen number of returned rows.
  4. Start the Actor and open the results link to review the Dataset.

The Actor uses public Creative Center surfaces and does not require a user-supplied source credential.

⚙️ Input

Choose one public result type. Filters for the other result type are ignored.

Input fields

FieldTypeWhat it does
resultTypestring: topAds or trendingHashtagsChooses ranked public Top Ads or ranked public trending hashtags.
topAdsRankingstring: ctr, engagement, impressions, conversion, viewRate, or forYouChooses the signal used to rank Top Ads.
topAdsKeywordoptional stringSearches Top Ads with one brand or product keyword. Leave it empty for all keywords.
topAdsIndustryoptional stringFilters Top Ads by one Creative Center industry value. Leave it empty for all industries.
topAdsObjectiveoptional stringFilters Top Ads by one campaign objective value. Leave it empty for all objectives.
topAdsLanguageoptional stringFilters Top Ads by one ad language value. Leave it empty for all languages.
topAdsFormatstring: all, spark, or nonSparkChooses whether Top Ads can include all formats, Spark ads, or non-Spark ads.
topAdsLikesBandoptional stringFilters Top Ads by one source likes band, such as 10K-100K. Leave it empty for all bands.
trendingHashtagCategoryoptional stringFilters trending hashtags by one industry or category. Leave it empty for all categories.
marketstringSets the Creative Center market, such as US.
timeWindowstring: 7d or 30dSets the lookback window for Top Ads or trending hashtags.
maxItemsoptional integer, minimum 1Stops after this many returned rows. Leave it empty to return all available results until the public source is exhausted.

Example input

This is the public input from a successful current-beta default-input run.

{
"resultType": "topAds",
"topAdsRanking": "ctr",
"topAdsFormat": "all",
"market": "US",
"timeWindow": "30d",
"maxItems": 25
}

🧾 Output

The run output exposes a link to the successful Dataset.

Run output

FieldTypeWhat it does
resultsURL stringOpens the successful Creative Center results in the default Dataset view.

Top Ads rows

FieldTypeWhat it does
resultTypestringIdentifies this row as topAds.
adIdstringSource identifier for the Top Ad.
rankintegerRank reported by the public source.
marketstringCreative Center market reported for the row.
captionstringSource caption for the Top Ad.
industrystringSource industry when available.
campaignObjectivestringSource campaign objective when available.
videoDurationSecondsnumberSource video duration in seconds when available.
videoDimensionsobjectVideo dimensions when available.
videoDimensions.widthintegerVideo width in pixels.
videoDimensions.heightintegerVideo height in pixels.
advertiserobjectAdvertiser identity when available.
advertiser.namestringAdvertiser or brand name.
performanceobjectPublic performance values reported for the Top Ad.
performance.ctrnumberSource-reported click-through rate.
performance.likesintegerSource-reported like count.
performance.commentsintegerSource-reported comment count.
performance.sharesintegerSource-reported share count.
performance.relativeCostnumberRelative cost signal reported by the source.
mediaobjectSource-hosted media links.
media.coverImageUrlURL stringDirect source URL for the ad cover image.
media.videoUrlURL stringMain direct source URL for the ad video.
media.alternateVideoUrlsarray of URL stringsDirect source URLs for other available video resolutions.
landingPageobjectLanding-page context when available.
landingPage.urlURL stringPublic landing-page URL.
landingPage.titlestringLanding-page title when available.
targetCountriesarray of stringsCountries targeted by the Top Ad when reported.
hashtagsarray of stringsHashtags in the Top Ad creative when exposed.
mentionsarray of stringsMentions in the Top Ad creative when exposed.
sourceUrlURL stringPublic Creative Center source URL for the row.

This complete row is from a successful current-beta default-input run.

{
"resultType": "topAds",
"adId": "7449696075790336017",
"rank": 1,
"market": "US",
"caption": "Hardcore Gamer? Entropia is a Real Cash Economy MMO, meaning every item has a real world value.",
"industry": "label_23125000000",
"campaignObjective": "campaign_objective_traffic",
"videoDurationSeconds": 23.546,
"videoDimensions": {
"width": 720,
"height": 1280
},
"advertiser": {
"name": "EntropiaUniverseOfficial"
},
"performance": {
"ctr": 0.03,
"likes": 904,
"comments": 1,
"shares": 12,
"relativeCost": 2
},
"media": {
"coverImageUrl": "https://p16-common-sign.tiktokcdn.com/tos-alisg-p-0051c001-sg/o8CbbeGNEWGelWDDIQEJoo1IBKVLIGVTDQAALf~tplv-noop.image?dr=18692&refresh_token=acecf39f&x-expires=1790129594&x-signature=ZvSocHVBWXToKIRV7VZ4hFEG1RM%3D&t=9276707c&ps=14f1eb3e&shp=9e36835a&shcp=317596d8&idc=my2&VideoID=v14033g50000da439enog65la0i39vig",
"videoUrl": "https://v16m-default.tiktokcdn.com/77a29cbb2b09e41fcef6f1644fd3f923/6ab335ba/video/tos/alisg/tos-alisg-ve-0051c001-sg/owxZQgEfXGAnRoIgZULODbOgbGDAMC9xIZeeFI/?a=0&bti=NTU4QDM1NGA%3D&&bt=1460&ft=cApXJCz7ThWHJUhHLGZmo0P&mime_type=video_mp4&rc=NzM5OTs0ZWloNTY8NDszZ0Bpank2M285cmg2ZDMzODYzNEBjNS4vLzBfXzUxYWBfNTQuYSNmNmZeMmRrNjFhLS1kMDFzcw%3D%3D&vvpl=1&l=20260923041251D0538D8FBBB0CACB24BE&btag=e000b8000",
"alternateVideoUrls": [
"https://v16m-default.tiktokcdn.com/9f85b9db2bd0cc80b8d7a87fab8664b0/6ab335ba/video/tos/alisg/tos-alisg-ve-0051c001-sg/ogMIiAAihIBzxmQwvSBsmGEVXCoVBfMAo0Uz0i/?a=0&bti=NTU4QDM1NGA%3D&&bt=2792&ft=cApXJCz7ThWHJUhHLGZmo0P&mime_type=video_mp4&rc=OjY6OTo6ODdmZ2Q1ZmYzM0Bpank2M285cmg2ZDMzODYzNEBeNDUtYS4yXjAxNTUzMy9jYSNmNmZeMmRrNjFhLS1kMDFzcw%3D%3D&vvpl=1&l=20260923041251D0538D8FBBB0CACB24BE&btag=e000b8000",
"https://v16m-default.tiktokcdn.com/78500cc25b801d8f4a8fc8339bd1ff7f/6ab335ba/video/tos/alisg/tos-alisg-ve-0051c001-sg/oARVGzQCIimMuWBAVozBiBzAsE20ohdfwAviFm/?a=0&bti=NTU4QDM1NGA%3D&&bt=506&ft=cApXJCz7ThWHJUhHLGZmo0P&mime_type=video_mp4&rc=ZzZkNDc6NTo4Ojs1MzU7ZUBpank2M285cmg2ZDMzODYzNEA1MmAyYTMwNjQxNGM2Xl4tYSNmNmZeMmRrNjFhLS1kMDFzcw%3D%3D&vvpl=1&l=20260923041251D0538D8FBBB0CACB24BE&btag=e000b8000",
"https://v16m-default.tiktokcdn.com/eb50e5bcd13d840a9330ad662f560756/6ab335ba/video/tos/alisg/tos-alisg-ve-0051c001-sg/o4AJABzzoiVQCmKEGCifAiosdBzvvVIzm1hM0w/?a=0&bti=NTU4QDM1NGA%3D&&bt=747&ft=cApXJCz7ThWHJUhHLGZmo0P&mime_type=video_mp4&rc=Ozw6Z2UzZTo0ZmU7Mzg4aEBpank2M285cmg2ZDMzODYzNEBhLS9gLl42X18xNl8tXjMvYSNmNmZeMmRrNjFhLS1kMDFzcw%3D%3D&vvpl=1&l=20260923041251D0538D8FBBB0CACB24BE&btag=e000b8000",
"https://v16m-default.tiktokcdn.com/a30f5a6c768c53b539ae7f42ffc2ca70/6ab335ba/video/tos/alisg/tos-alisg-ve-0051c001-sg/oMmzoz3BfAAAQ0BVBz9iGvEwMimsVsIChoiIAC/?a=0&bti=NTU4QDM1NGA%3D&&bt=995&ft=cApXJCz7ThWHJUhHLGZmo0P&mime_type=video_mp4&rc=Z2VoZTlnNDZmaDU2NzVkOUBpank2M285cmg2ZDMzODYzNEBgLjU1YzMyXy0xMTUwLjY0YSNmNmZeMmRrNjFhLS1kMDFzcw%3D%3D&vvpl=1&l=20260923041251D0538D8FBBB0CACB24BE&btag=e000b8000"
]
},
"landingPage": {
"url": "https://www.entropiauniverse.com/?ccode=tiktok&utm_source=tiktok&utm_medium=paid",
"title": "Entropia Universe - The Ultimate MMO Experience"
},
"targetCountries": [
"GB",
"US",
"FR",
"DE",
"PL",
"SE",
"IE",
"BE",
"NO",
"HU",
"FI",
"DK",
"RO"
],
"sourceUrl": "https://ads.tiktok.com/business/creativecenter/topads/7449696075790336017/pc/en?countryCode=US&period=30"
}

Trending hashtag rows

FieldTypeWhat it does
resultTypestringIdentifies this row as trendingHashtags.
hashtagstringSource name of the trending hashtag.
rankintegerRank reported by the public source.
marketstringCreative Center market reported for the row.
categorystringSource category for the trending hashtag.
popularityobjectPublic popularity metrics for the hashtag.
popularity.videoCountintegerSource-reported number of public videos for the hashtag.
popularity.viewCountintegerSource-reported public view count for the hashtag.
sourceUrlURL stringPublic source URL for the hashtag.
analyticsUrlURL stringPublic analytics URL when available.

This complete row is from a successful current-beta trending-hashtag run.

{
"resultType": "trendingHashtags",
"hashtag": "securepayeveryday",
"rank": 1,
"market": "US",
"category": "14000000000",
"popularity": {
"videoCount": 51580,
"viewCount": 52239570
},
"sourceUrl": "https://ads.tiktok.com/creative/creativeCenter/trends/hashtag/7619137204643856414?region=US&period=30",
"analyticsUrl": "https://ads.tiktok.com/creative/creativeCenter/trends/hashtag/7619137204643856414?region=US&period=30"
}

💳 Pricing

This Actor uses pay-per-event pricing. A primary event covers one successfully returned public row of its matching type. Current tier prices are shown in the Apify pricing panel.

EventWhat it covers
Top AdOne public Top Ad saved to your Dataset.
Trending HashtagOne public trending hashtag with its available trend metrics saved to your Dataset.

🔌 Integrations

Open the results link in Apify, use the default Dataset API, or export the saved rows in a standard Apify format.

❓ FAQ

Which public data can I collect?

Choose ranked public Top Ads or ranked public trending hashtags. Top Ads can include creative, performance, media, landing-page, and targeting fields. Hashtag rows can include category, popularity, and source links.

Do I need a TikTok account or API key?

No. This Actor uses public Creative Center surfaces and does not require a user-supplied source credential.

How are Top Ads ranked?

CTR is the default ranking signal. The input also offers engagement, impressions, conversion, view rate, and For You choices for the selected Top Ads collection.

Can one run collect both result types?

No. Choose one resultType per run. Filters for the other result type are ignored.

What happens when TikTok does not provide a field?

Optional fields are omitted from that row. The Actor keeps source values as available and does not create replacement values.

What does an empty maxItems value do?

Leaving maxItems empty returns all available results until the public source is exhausted.

They are source-hosted links, so the source may change or expire them. The Actor does not promise long-term media storage.

Can one run combine several independently configured ad searches?

No. A run uses one selected result type and one set of input filters.

📝 Changelog

v0.0 (22-09-2026)

  • Initial release.

🆘 Support

For issues, questions, or feature requests, file a ticket and I'll fix or implement it in less than 24h 🫡

Made with ❤️ by Maxime Dupré