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.

Data fields

FieldTypeDescription
urlstringValue exported as url.
videoIdstringValue exported as videoId.
authorUsernamestringValue exported as authorUsername.
descriptionstringValue exported as description.
durationSecondsnumberValue exported as durationSeconds.
languagestringValue exported as language.
transcriptstringValue exported as transcript.
captionUrlstringValue exported as captionUrl.

Input preview

startUrlsTikTok video URLs *
preferredLanguagePreferred caption language
maxItemsMaximum transcripts

API and agents

This actor can be run through Apify API, datasets, webhooks, schedules, and the official Apify MCP server.

How this actor works

See example inputs, outputs, API usage, and practical limits before running this actor on Apify.

Open Apify page

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"
}
Field Meaning
url Canonical public TikTok video URL after redirects
videoId TikTok video identifier
authorUsername Public creator username, when exposed
description Video post description, when exposed
durationSeconds Video duration, when exposed
language Selected caption-track language
transcript Non-empty normalized caption text
captionUrl Source caption-track URL
videoUrl Discovered playable-media URL
captionSource TikTok'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 saves no misleading transcript row, so no result event is charged; the once-per-run start event still applies. It does not generate a speech-to-text transcript when TikTok provides no captions.

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

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.

Common questions

Search-intent answers for buyers comparing Apify actors, API alternatives, and scheduled data workflows.

Can I export TikTok AI Transcript Extractor results to CSV, JSON, Excel, or API?

Yes. Apify datasets support JSON, CSV, Excel, XML, RSS, API access, webhooks, and scheduled exports.

Can this work as an API alternative?

Yes. Use the Apify Actor API for runs and the dataset API for results. The focused MCP URL also exposes this actor for agent workflows.

Does this page replace the Apify actor page?

No. This catalog helps discovery and comparison. Running, billing, storage, and support continue through Apify.