TikTok AI Transcript Extractor avatar

TikTok AI Transcript Extractor

Pricing

from $0.23 / 1,000 result extracteds

Go to Apify Store
TikTok AI Transcript Extractor

TikTok AI Transcript Extractor

Extract public TikTok captions, transcript text, timestamped segments, video metadata, creator details, hashtags, music, and clear skip reasons from video URLs.

Pricing

from $0.23 / 1,000 result extracteds

Rating

0.0

(0)

Developer

Fetch Cat

Fetch Cat

Maintained by Community

Actor stats

0

Bookmarked

11

Total users

3

Monthly active users

13 days ago

Last modified

Share

Extract caption transcripts and useful metadata from public TikTok video URLs. Each successful result contains non-empty transcript text from a caption track exposed by TikTok—never a placeholder URL/title row.

What it returns

  • Caption transcript text and language
  • TikTok video ID, creator username, description, and duration
  • Public caption-track and playable-media URLs discovered from the video page
  • JSON, CSV, Excel, API, webhook, and MCP-compatible dataset output

Input

{
"startUrls": [
{ "url": "https://www.tiktok.com/@creator/video/1234567890123456789" }
],
"preferredLanguage": "en",
"maxItems": 1
}

startUrls accepts direct public tiktok.com/@creator/video/{id} links and TikTok's vm.tiktok.com or vt.tiktok.com short links. Profiles, search pages, and non-TikTok URLs are rejected before fetching. preferredLanguage selects a matching caption track when available; otherwise the first available track is used.

Output

{
"url": "https://www.tiktok.com/@creator/video/1234567890123456789",
"videoId": "1234567890123456789",
"authorUsername": "creator",
"description": "Video description",
"durationSeconds": 28,
"language": "en",
"transcript": "The complete caption transcript appears here.",
"captionUrl": "https://...",
"videoUrl": "https://...",
"captionSource": "auto"
}
FieldMeaning
urlCanonical public TikTok video URL after redirects
videoIdTikTok video identifier
authorUsernamePublic creator username, when exposed
descriptionVideo post description, when exposed
durationSecondsVideo duration, when exposed
languageSelected caption-track language
transcriptNon-empty normalized caption text
captionUrlSource caption-track URL
videoUrlDiscovered playable-media URL
captionSourceTikTok's caption source label, when exposed

A public video must expose a caption track. If the video has no captions, is private, removed, or region restricted, the Actor reports a clear error and does not charge or save a misleading transcript item. It does not generate a speech-to-text transcript when TikTok provides no captions.

Ready-to-run examples

API usage

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('fetch_cat/best-tiktok-ai-transcript-extractor').call({
startUrls: [{ url: 'https://www.tiktok.com/@creator/video/1234567890123456789' }],
preferredLanguage: 'en',
maxItems: 1,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items[0].transcript);

MCP endpoint: https://mcp.apify.com?tools=fetch_cat/best-tiktok-ai-transcript-extractor

Pricing

The Actor charges the configured start event once per run and one result event only for each transcript row actually saved. Use maxItems to bound a run.

Responsible use and limits

Process only public videos you are allowed to use. The Actor does not bypass login walls, private-video controls, or geographic restrictions. TikTok can change its public page and caption formats; include the run ID and one reproducible public video URL in support reports.