100 free credits on signup · no card required

TikTok Channel Stats API

One handle in. Clean JSON out.

Give it a TikTok handle, get the creator's follower count, following count, total video count, cumulative likes, bio, verification flag and avatar back as JSON. 3 credits per profile, one GET request, no TikTok developer account. It reads the public profile page, so what you get is what a logged-out visitor sees.

Credits 3 / profile
Input ?handle=
Cache 12h
GET · BEARER
Request composing…
Cached 12 hours
cheap to re-poll
Works with your stack
cURL Python Node.js Zapier n8n Make MCP
One key · one credit balance · plain REST

The difference

Stop parsing markup. Start reading fields.

On the left, what a headless browser hands you. On the right, what the endpoint hands you.

Scraping it yourself raw HTML · every call
<div class="css-1qb2n7d-DivItemContainer e148ts220" data-e2e="recommend-list-item"><div class="css-x6y88p-DivContainer"><a class="css-1g95xhm-AVideoContainer" href="/@tiktok/video/7231338487075638570"><video src="blob:https://www.tiktok.com/8f3a..."></video></a></div><div class="css-1f5bbrz-DivCardFooter"><strong data-e2e="video-views" class="css-ws4x78">1.2M</strong><strong data-e2e="like-count">88.4K</strong><strong data-e2e="comment-count">2,314</strong></div><h3 class="css-1yy6f0h">Behind the scenes of our new feature</h3><script id="__UNIVERSAL_DATA_FOR_REHYDRATION__" type="application/json">{"__DEFAULT_SCOPE__":{"webapp.video-detail"...
×Class names rotate; your selectors break weekly ×Headless browsers, proxies, blocks to babysit ×Counts arrive as strings, not numbers
One GET request 10 typed fields
{
"data": {
"platform": "tiktok",
"handle": "tiktok",
"name": "Example Creator",
"bio": "Tutorials and behind-the-scenes. New video every Tuesday.",
"verified": true,
"metrics": {
"followers": 2450318,
"following": 132,
"posts": 842
}
},
"request_id": "req_01JZX4M8Q2TE9W"
}
Stable field names, documented nulls No proxies, no browser, no login session Counters are integers you can sort on

The payload

What comes back

{ data, meta?, request_id }
01 One object per handle

One object per handle, describing the account rather than any individual video. The four numbers that matter for sizing a creator are followers, following, posts and likes, where likes is the lifetime total across every video on the account and not the count on their latest upload.

02 Profile text and avatar

Alongside the numbers you get the profile text: the display name, the bio as written, whether TikTok has given the account a verification badge, a direct avatar image URL and the canonical profile link. Together that is enough to render a creator card in an app without a second call.

03 Counts lag the live profile

Profile numbers move much more slowly than video numbers, so this endpoint sits in the slow cache class. Repeated calls for the same handle inside the cache window come back in milliseconds and cost the same 3 credits. Pass fresh=true when you need to force a re-read.

Field explorer Pick a key to see its type and the caveats.
number|null Nullable Per item
posts

Number of public videos on the profile. Drafts and deleted videos are not counted.

{
"handle": "tiktok",
"name": "Example Creator",
"followers": 2450318,
"following": 132,
"posts": 842,
"likes": 0,
"bio": "Tutorials and behind-the-scenes. New video every Tuesday.",
"verified": true,
"avatar": "…",
"url": "…"
}
Good fit

Reach for this when

  • Influencer sizing: you have a list of handles from a campaign brief and need follower counts side by side before you decide who to contact.
  • Building creator cards in a product — name, avatar, bio, followers and the verification badge all come from one call.
  • Tracking your own or a competitor's account growth. Store followers with a date stamp daily and you have a growth curve nobody else on the team has to maintain.
  • Fraud screening before you pay anyone. A million followers against a few thousand lifetime likes is a signal worth acting on.
  • Filling in the creator half of a dataset you built from video URLs, since the video endpoint returns only the author's handle and name.
Different job?

There's an endpoint for that

  • You want the creator's actual videos and their per-video numbers — call the TikTok Channel Videos API, which returns a batch of recent videos you can then process.
  • You want the stats for one specific video you already have the URL for. That is the TikTok Video Stats API, which takes a video link rather than a handle.
  • You are looking for creators rather than looking one up. This endpoint needs an exact handle; the TikTok Search API takes a query string.
  • You need a follower list or audience demographics. We do not return either, and no public page exposes them.

Pricing

Start free, pay for what comes back

One profile lookup is 3 credits — about 1.5¢ on the monthly plan. $5 covers roughly 333 handles, cached repeats cost the same, and failed calls are never charged.

Estimate your bill
$10/ month
30 profiles/day × 3 credits × 365 days = 32,850 credits/yr, or $117/yr on the annual plan plus 21 top-up blocks Whichever plan is cheaper for that volume, divided by 12.
30
102,000
Credits / yr 32,850
Plan Annual $54/yr
Per profile

Estimate only, on a full-year basis. 3 credits per returned profile. Monthly: $5 per 1,000 credits with $4/1,000 top-ups. Annual: $54 per 12,000 credits with $3/1,000 top-ups. We show whichever plan is cheaper for your annual volume, divided by 12. Failed calls are never charged; cache hits cost the same as fresh calls.

Free trial
100 credits

On signup, no card. Your key is on screen immediately.

Get your free API key
Monthly $5/mo 1,000 credits. Top-ups $4 per extra 1,000.
Annual $54/yr 12,000 credits. Top-ups $3 per extra 1,000.

Entry price, side by side

Cheapest way to start

Verified July 2026 from each vendor's live pricing page
ScraperSocial
$5 / mo 1,000 credits · 100 free credits, no card
Supadata
$5 / mo 300 credits, annual commitment · 100 free/mo
SocialKit
$29 / mo 12,000 credits · 20 free credits
Dumpling AI
$40 / mo Billed annually · free tier size unpublished
ScrapeCreators
$47 pack 25,000 credits, no subscription · 100 free once

Credits are not equivalent units across vendors — each meters differently. Price your own workload on both before deciding on entry price alone. At high volume, several of these are cheaper per credit than we are.

Engineering notes

Docs you can build on

We document exactly how every endpoint behaves — nulls, caching, billing — so what you ship on day one is still running in month six. No surprises, no support tickets.

Failed calls are never charged Public data only, no login session Built for parallel traffic

Input is the @username, not the display name. TikTok display names change freely and are not unique; handles are the addressable identifier. Pass it with or without the leading @ — both are accepted — but a typo returns a not-found error rather than a fuzzy match, and errors are not charged.

Handles can also be changed by the creator. If a handle that worked last month stops resolving, the account was probably renamed or removed, not blocked. Store the handle as your key but expect to repair it occasionally.

TikTok shows one big heart number on a profile. That is the sum of likes across every public video the account has ever posted, which means it only ever goes up while videos stay up, and it drops when a creator deletes an old hit. Do not compare it against a single video's like count from the video endpoint — they measure different things.

There is no view count on a profile. TikTok does not publish an account-level view total, so we cannot return one. If you need views you have to go video by video.

TikTok rounds public counters for larger accounts and refreshes them on its own delay. Treat a returned follower count as the platform's published figure at call time, not an audited number. Day-over-day deltas on a small account can be noise; on an account with millions of followers, rounding can hide a week of real change.

A creator profile is public, but bio text and avatars still describe an identifiable person, and many creators put contact details in their bio. If you are storing this in the EU or UK, that storage has a lawful-basis obligation attached. Keep a retention window, honour deletion requests, and do not build a contact database out of scraped bios.

Avatar URLs point at TikTok's CDN and stop resolving after a while. Fetch the image at ingest time if you need it to survive.

We read logged-out public pages only. A private account, a suspended account or one that is region-blocked from our vantage point returns an error rather than a half-filled object, and the call is not billed. Individual fields can still be null on a perfectly healthy account — an empty bio is normal, not a failure.

Questions

Frequently asked

Send a GET to /v1/tiktok/channel-stats with the handle and your API key. The response includes followers, following, posts and lifetime likes as plain numbers. You do not need a TikTok developer account or OAuth. TikTok's own Display API only reaches accounts that have authorised your app, which rules it out for competitor or influencer research.

3 credits per handle. Credits are $0.005 each on monthly billing and $0.0045 on annual, so a lookup is about 1.5 cents and $5 covers roughly 333 profiles. Cached responses cost the same as fresh ones. Calls that error — bad handle, private account — are not charged.

It is the total hearts the account has received across all of its public videos, for the life of the account. It is not likes on the newest video and it is not a monthly figure. Dividing likes by posts gives a rough average per video, but it skews high for accounts with one old viral hit and low for accounts posting daily.

Yes. The verified field is true when TikTok shows the blue badge on the profile. Bear in mind that verification signals identity, not audience quality — plenty of large genuine creators are unverified. For vetting, read verified alongside the follower-to-likes ratio rather than on its own.

TikTok refreshes public profile counters on its own schedule and rounds larger numbers, so figures lag live reality by an unpredictable amount. Because profiles move slowly, we cache them in the slow class; a repeat call for the same handle inside the window returns in milliseconds. Add fresh=true to force a new read when you are starting a monitoring run.

No, it is one handle per call. Run them concurrently instead — each call is independent and the API handles parallel traffic. For a list of 500 creators, a small worker pool finishes in well under a minute and costs 1,500 credits.

Only if they wrote it in their public bio, and we return the bio verbatim rather than parsing contacts out of it. We do not access private data, and there is no hidden contact field on a TikTok profile to expose. If you are building outreach lists, check the creator's own stated terms and your local privacy rules before storing anything.

Next

Pairs well with

Full TikTok API reference →
/v1/tiktok/channel-videos
TikTok Channel Videos API Latest videos from a TikTok account with per-video metrics. 3 cr / video
/v1/tiktok/stats
TikTok Stats API Views, likes, comments and shares for a single TikTok video. 3 cr / video
/v1/instagram/channel-stats
Instagram Channel Stats API Follower counts, bio and profile metadata for an Instagram account. 3 cr / profile
/v1/linkedin/profile
LinkedIn Profile API Public profile data for a LinkedIn member: headline, positions, education. 10 cr / profile

More TikTok endpoints

/v1/tiktok/transcript Full transcript of a TikTok video with timestamped segments. 8 credits / video /v1/tiktok/summary Short AI summary of a TikTok video, built on its transcript. 10 credits / video /v1/tiktok/stats Views, likes, comments and shares for a single TikTok video. 3 credits / video /v1/tiktok/comments Paginated comments on a TikTok video; charged per comment returned. 2 credits / comment /v1/tiktok/channel-videos Latest videos from a TikTok account with per-video metrics. 3 credits / video /v1/tiktok/search Keyword search over TikTok videos. 4 credits / result /v1/tiktok/hashtag-search Videos posted under a TikTok hashtag. 3 credits / result /v1/tiktok/download Resolves a downloadable media URL for a TikTok video (URL expires within 1h). 7 credits / video

Try the TikTok Channel Stats endpoint free

100 trial credits on signup — no card, key on screen immediately.

1 Sign up free no card · 30 seconds
2 Copy your key sk_live_...
3 GET the endpoint /v1/tiktok/channel-stats
Get your free API key