TikTok Comments Scraper

Four columns, and
not a single comment.

This page opens with the limitation because that is the useful part. In both runs behind it, no comments came back - not even a total. What came back was the URL you submitted and a status column naming the obstacle: TikTok serves its comment list from a request-signed API rather than in the page HTML.

one-time 500 free rows$0.002 per row afterfour columns per videoCSV · JSON · Excel
How it works

A video link in, a row out.

  1. STEP 1Sign in to the platform.
  2. STEP 2Open the TikTok Comments Scraper.
  3. STEP 3Paste the video URLs you want, one per line.
  4. STEP 4Pick your output format (CSV / JSON / XLSX).
  5. STEP 5Run the job.
  6. STEP 6Download the results - and read the status column first.
Read this before you buy

What the two runs actually show.

Not even a count came back

Both runs returned one row with video_id and comment_count empty. Not zero comments - no number at all. A comments tool that cannot tell you how many there are is a different product from the one most people arrive looking for, and you should know that here rather than after paying.

The obstacle is named, not guessed

The status column is a sentence: TikTok loads this list via its request-signed API (not in page HTML) - not available without a TikTok API/signing service; even residential proxies need the signature. That is the service's own text, carried through unchanged.

The same URL, a different answer

Both runs submitted https://www.tiktok.com/@user/video/123 - the identical placeholder our TikTok Videos Scraper was given. That service replied item doesn't exist; this one replied with the signature message. Two services, one URL, two different answers, which tells you these statuses are specific rather than a generic fallback.

It is reproducible

The two runs are a day apart and their payloads are byte-identical - same columns, same values, same status. Whatever this service does today, it does consistently.

What you get back

Four columns, per video.

Read from the header of a real export of this service, in sheet order. Two of the four carried a value in our runs; neither of them is a comment.

query
The video URL exactly as you submitted it, echoed on every row. Ours read https://www.tiktok.com/@user/video/123. Keep it: it is what joins the row back to your input list.
video_id
The numeric id of the video. Empty on both of our runs - an empty string, not a zero.
comment_count
Intended to carry the number of comments on the video. Empty on both of our runs. Not even the total came back, which is the single most important thing on this page.
status
A per-row sentence written by the exporter, not by TikTok. On our runs it read: TikTok loads this list via its request-signed API (not in page HTML) - not available without a TikTok API/signing service; even residential proxies need the signature. Read this column first.

Four columns per row · CSV, JSON or Excel

Two runs sit behind this page, from 14 and 15 July 2026, one row each, and their payloads are byte-identical. Neither returned a comment, an author or a count. We make no claim about how many comments any video has, about what this returns on a real video, or about whether the limitation is permanent - inventing any of that would be worse than publishing the blank.

What to do instead

Where audience research can go today.

Review text

Read what people write elsewhere

If the goal is unprompted opinion in people's own words, review sources return it in volume. The Trustpilot Reviews Scraper and Google Maps Reviews Scraper both hand back full review text.

Research · CX
Demand signal

Measure interest without comments

For whether a topic is rising, Google Trends answers with figures that do come back populated. Not sentiment, but a real signal rather than an empty column.

Research · Strategy
Monitoring

Watch for the day it changes

The status column is a signal in its own right. A small scheduled run that alerts when it stops appearing is the cheapest way to know the moment this service starts returning comments.

Data eng · Monitoring
Pricing

Pay only for what you actually use.

Free tier

The first 500 rows are free

One-time, on signup, with no card. Given what this service currently returns, we would rather you confirmed it with the free tier than with a budget.

One-time, on signup
Rate

$0.002 per row after that

Billed on rows actually returned, at the same rate as every other service here. No service-specific pricing.

Billed on rows returned
No subscription

Nothing recurring

Credits do not expire monthly, so a small monitoring run costs almost nothing and commits you to nothing.

No monthly expiry
Try these instead

Sources that do return text.

The honest bit

Why there are no comments.

A technical limit, named by the export itself rather than inferred by us.

A TikTok comment section looks like part of the page, but it is not in the HTML the server sends. The page arrives without it and then asks TikTok's own API for the thread, and that request carries a signature the browser computes. Without reproducing the signature there is nothing to read, which is why the status text notes that even residential proxies do not help - the obstacle is the signing, not the address the request comes from.

Worth being precise about how we know. The two runs submitted the same placeholder URL our TikTok Videos Scraper was given, and the two services answered differently: videos replied that the item does not exist, comments replied with the signature message. That tells us the statuses are service-specific rather than one generic fallback. What it does not tell us is the internal order of operations, and we are not going to pretend otherwise - we can only report what two exports contain.

Our own terms are the same as on every other service here. Publicly available pages only, nothing behind a login, no third-party trackers on the data layer, and exports auto-delete after 30 days. Your first 500 rows are free and need no credit card - deliberately the cheapest way to confirm all of the above yourself.

livescraper.app · what a run returns today
query - echoed, always present
video_id - empty on both runs!
comment_count - empty on both runs!
status - the reason, in full
Exports auto-delete after 30 days
Two runs, a day apart, byte-identical payloads.
Common questions

Things people ask before signing up.

Will I get the comments?+
Not from the runs we hold. Both returned a single row with video_id and comment_count empty and no comment text at all. The status column explains that TikTok serves the comment list from a request-signed API rather than in the page HTML.
Do I at least get a comment count?+
No. comment_count was empty on both runs - an empty string, not a zero. That is the single most important thing on this page, which is why it is near the top rather than in the small print.
What columns will the export contain?+
Four: query, video_id, comment_count and status. One row per video URL you submit. Only query and status carried a value in our runs.
Would a proxy or a different region fix it?+
The status text addresses that directly: even residential proxies need the signature. The obstacle is the signed request, not where it comes from, so changing the exit address does not change the outcome.
Is this the same problem as the hashtags and search scrapers?+
The status text is identical to the one on our TikTok Hashtags Scraper and TikTok Search Scraper, so it is the same named obstacle across three of TikTok's data surfaces rather than a fault specific to comments.
Your videos scraper got a different message for the same URL. Why?+
Both used https://www.tiktok.com/@user/video/123. The videos service replied item doesn't exist (removed / private); this one replied with the signature message. The statuses are service-specific rather than one shared fallback. We cannot see the internal order of checks, and we are not going to guess at it.
Should I buy this?+
Not if you need comment data today. Your first 500 rows are free, so you can confirm what it returns at no cost, but we would point you at the alternatives listed on this page instead.

Take a look at what does work.

This service does not return comments today, and we have said so plainly. The rest of the catalogue is a different story.

Your first 500 rows are free · no card required

Scrape TikTok comments

The TikTok Comments Scraper takes a video URL and returns a row of four columns: query, video_id, comment_count and status. Two runs sit behind this page, from 14 and 15 July 2026, and their payloads are byte-identical. Neither returned a comment, an author or a date - and neither returned a count. video_id and comment_count were both empty strings, which means the export cannot even tell you how many comments a video has.

The reason travels with the row rather than being inferred. status holds a full sentence: TikTok loads the comment list through its own request-signed API instead of putting it in the page HTML, so it is not available without an API or signing service, and even residential proxies need the signature. That last clause is the important one for anyone planning a workaround - the obstacle is the signed request rather than the address it comes from, so rotating exit nodes will not help.

There is one comparison worth recording, because it rules something out. Both runs submitted the same placeholder URL that our TikTok Videos Scraper was given, and the two services answered differently: the videos service replied that the item does not exist, while this one replied with the signature message. Two services, one URL, two distinct answers - so these status strings are specific to each service rather than a single generic fallback. What that does not establish is the internal order of checks, and this page does not claim to know it. We can report what two exports contain and no more.

The identical status text appears on our TikTok Hashtags Scraper and TikTok Search Scraper, which puts the same named obstacle across three of TikTok's data surfaces. If audience text is what you need today, review sources are the honest alternative - full review text comes back populated from Trustpilot and Google Maps. We make no claim here about how many comments any video has, about what this service returns on a real video, or about whether the limitation is permanent. Publicly available pages only, no third-party trackers on the data layer, and exports auto-delete after 30 days. Your first 500 rows are free and need no credit card.