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.
The difference
On the left, what a headless browser hands you. On the right, what the endpoint hands you.
<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"... {"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"}
The payload
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.
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.
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.
Number of public videos on the profile. Drafts and deleted videos are not counted.
Pricing
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 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.
Entry price, side by side
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
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.
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
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
100 trial credits on signup — no card, key on screen immediately.