TikTok Comment Viewer, Scraper, and CSV Export Guide

TikTok does not provide a built-in CSV export for video comments. For one video, a free TikTok comment viewer can load, search, and download the comments. For recurring research or thousands of comments, a TikTok comment scraper API is the more reliable route.
This guide covers both workflows and shows how to export normalized comment data for sentiment analysis, content research, influencer vetting, and brand monitoring.
TikTok comment viewer vs scraper vs exporter
| Method | Best for | Output |
|---|---|---|
| Comment viewer | Browsing and searching comments from one video | Searchable browser list |
| CSV exporter | One-off spreadsheet analysis | Downloadable CSV |
| Comment scraper API | Bulk extraction, monitoring, and product integrations | Paginated JSON |
Why export TikTok comments?
Here are the most common use cases:
Sentiment analysis
Want to know how people feel about your brand, a competitor, or a product launch? Export the comments from relevant videos and run them through a sentiment analysis pipeline. You will get a clear read on positive, negative, and neutral sentiment that no dashboard metric can provide.
Content ideas
TikTok comments are full of questions, requests, and suggestions. Export comments from your top-performing videos and look for patterns. What are people asking for? What confuses them? What do they want more of? These are direct content ideas from your audience.
Competitor research
Export comments from competitor videos to understand their audience's pain points, complaints, and praise. This gives you positioning insights you cannot get any other way.
Brand monitoring
Track how your brand is mentioned in comments across TikTok. Export comments from videos that mention your brand or product and monitor sentiment over time.
Influencer vetting
Before partnering with a creator, export comments from their recent videos. Are the comments genuine or full of bot-like responses? Do their followers actually engage with the content? Comment quality tells you more about an influencer's audience than follower count.
Academic research
Researchers studying social media behavior, content virality, or online discourse need comment data in structured formats for analysis. Exporting to CSV or JSON makes it possible to run statistical analysis, NLP, and other research workflows.
What data do you get from exported TikTok comments?
Each exported comment includes:
| Field | Description |
|---|---|
| Comment text | The full comment content |
| Author username | The TikTok handle of the commenter |
| Author nickname | The display name of the commenter |
| Like count | Number of likes on the comment |
| Reply count | Number of replies to the comment |
| Timestamp | When the comment was posted (ISO 8601) |
| Is pinned | Whether the video creator pinned this comment |
| Is author reply | Whether the comment was written by the video creator |
| Parent ID | Parent comment identifier when the record is a reply |
Method 1: Use the free TikTok comment viewer and exporter
The fastest way to export TikTok comments is with the free TikTok Comments Tool on CreatorCrawl. No sign-up required for basic usage.
- Open the TikTok comment viewer
- Paste a TikTok video URL
- Load and search the comments
- Click Export CSV to download the loaded results
This is perfect for one-off exports when you just need comments from a single video.
Method 2: Export TikTok comments with the API
For recurring exports, bulk analysis, or integration into your own tools, use the CreatorCrawl API.
Setup
- Sign up for CreatorCrawl (50 free credits, no card required)
- Generate an API key from your dashboard
Basic comment export
Python:
import requests
API_KEY = "your_api_key_here"
BASE_URL = "https://app.creatorcrawl.com/api"
video_url = "https://www.tiktok.com/@charlidamelio/video/7321456789012345678"
response = requests.get(
f"{BASE_URL}/tiktok/video/comments",
params={"url": video_url},
headers={"x-api-key": API_KEY}
)
payload = response.json()
comments = payload["data"]
total = payload.get("page", {}).get("total", len(comments))
print(f"Total comments: {total}")
for comment in comments:
print(f"@{comment['author']['handle']}: {comment['text']}")
print(f" Likes: {comment['like_count']} | Replies: {comment.get('reply_count', 0)}")
JavaScript:
const API_KEY = 'your_api_key_here'
const BASE_URL = 'https://app.creatorcrawl.com/api'
const videoUrl = 'https://www.tiktok.com/@charlidamelio/video/7321456789012345678'
const response = await fetch(
`${BASE_URL}/tiktok/video/comments?url=${encodeURIComponent(videoUrl)}`,
{ headers: { 'x-api-key': API_KEY } }
)
const payload = await response.json()
const total = payload.page?.total ?? payload.data.length
console.log(`Total comments: ${total}`)
for (const comment of payload.data) {
console.log(`@${comment.author.handle}: ${comment.text}`)
console.log(` Likes: ${comment.like_count} | Replies: ${comment.reply_count ?? 0}`)
}
Export all comments with pagination
Most videos have more comments than a single API call returns. Use the cursor to paginate through all of them:
def export_all_comments(video_url):
all_comments = []
cursor = None
while True:
params = {"url": video_url}
if cursor:
params["cursor"] = cursor
response = requests.get(
f"{BASE_URL}/tiktok/video/comments",
params=params,
headers={"x-api-key": API_KEY}
)
response.raise_for_status()
payload = response.json()
batch = payload.get("data", [])
page = payload.get("page", {})
all_comments.extend(batch)
print(f"Fetched {len(all_comments)} of {page.get('total', '?')} comments")
if not page.get("has_more"):
break
cursor = page.get("cursor")
return all_comments
comments = export_all_comments(
"https://www.tiktok.com/@charlidamelio/video/7321456789012345678"
)
print(f"Exported {len(comments)} total comments")
Save to CSV
Export your comments to a CSV file for analysis in Excel, Google Sheets, or a data tool:
import csv
def save_comments_to_csv(comments, filename="comments.csv"):
with open(filename, "w", newline="", encoding="utf-8") as f:
writer = csv.writer(f)
writer.writerow([
"username", "nickname", "comment", "likes",
"replies", "timestamp", "pinned", "is_author_reply", "parent_id"
])
for comment in comments:
writer.writerow([
comment["author"]["handle"],
comment["author"]["name"],
comment["text"],
comment["like_count"],
comment.get("reply_count", 0),
comment["created_at"],
comment.get("is_pinned", False),
comment.get("is_author_reply", False),
comment.get("parent_id"),
])
print(f"Saved {len(comments)} comments to {filename}")
save_comments_to_csv(comments)
Tips for analyzing exported TikTok comments
Look at pinned comments and creator replies first
Pinned comments and replies written by the video creator often identify the threads that matter most. Filter for is_pinned == True or is_author_reply == True.
Sort by like count for top reactions
The most-liked comments represent the strongest audience reactions. Sort your export by like_count descending to find the comments that resonated most.
Track reply threads
Comments with high reply_count values indicate topics that sparked conversation. These are often the most valuable for understanding audience opinions.
Run basic sentiment at scale
Export comments from multiple videos and use a simple sentiment library (like TextBlob for Python or Sentiment for Node.js) to score each comment. Aggregate scores give you a sentiment trend over time.
from textblob import TextBlob
positive, negative, neutral = 0, 0, 0
for comment in comments:
sentiment = TextBlob(comment["text"]).sentiment.polarity
if sentiment > 0.1:
positive += 1
elif sentiment < -0.1:
negative += 1
else:
neutral += 1
total = len(comments)
print(f"Positive: {positive/total*100:.1f}%")
print(f"Negative: {negative/total*100:.1f}%")
print(f"Neutral: {neutral/total*100:.1f}%")
Next steps
Now that you can export and analyze TikTok comments:
- Try the free tool at TikTok Comments Exporter
- Read the API reference for the comments endpoint
- Explore more comment use cases in the TikTok comments guide
Get started with 50 free credits and start exporting TikTok comments today.
Explore CreatorCrawl
Try the free social media tools
Test transcripts, comments, profiles, channels, and tweets in your browser before moving to bulk API access.
More from the Blog
YouTube Transcript API: Get Video Transcripts in Python
Get a YouTube transcript through an API using Python, JavaScript, or curl. Includes timestamped JSON, language selection, and error handling.
Read article
INSTAGRAMHow to Download Instagram Data in 2026
Four ways to download Instagram data in 2026: in-app export, official Graph API, third-party data APIs, and DIY scrapers. With code and limits.
Read article
COMPAREInstagram API Cost and Pricing in 2026
How much does the Instagram API cost? Compare the free official Graph API with third-party profile, Reel, comment, and transcript APIs.
Read article