YouTube Transcript Scraper — Subtitles & Timestamps avatar

YouTube Transcript Scraper — Subtitles & Timestamps

Pricing

Pay per event

Go to Apify Store
YouTube Transcript Scraper — Subtitles & Timestamps

YouTube Transcript Scraper — Subtitles & Timestamps

Get YouTube transcripts and subtitles from any video or Short, with timestamps, SRT, video metadata and translation to 100+ languages. No API key, no login. Built for AI, RAG, LLM agents and content repurposing. Export JSON, CSV, Excel.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Istmobot

Istmobot

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

12 hours ago

Last modified

Share

YouTube Transcript Scraper — subtitles, timestamps, SRT & translation

Get the transcript of any YouTube video or Short as clean text, with timestamped segments, a ready-to-use SRT subtitle file, video metadata and optional translation to 100+ languages. No YouTube API key, no login, no browser. Built for AI, RAG and LLM pipelines, content repurposing, SEO, research and accessibility.

What does YouTube Transcript Scraper do?

Paste YouTube links or video IDs and get one clean record per video:

  • Full transcript text ready for ChatGPT, Claude, embeddings or summaries.
  • Timestamped segments: start time, duration and text of every caption line.
  • SRT subtitles you can upload to any video editor.
  • Translation: get the transcript in Spanish, English, Portuguese, French, German, Japanese or any other language, with timestamps kept.
  • Video metadata: title, channel, duration, views, keywords, description and thumbnail.
  • Every caption language the video has, with manual vs auto-generated flags.
  • Works with watch URLs, youtu.be links, Shorts, live replays and embeds.
  • Export as JSON, CSV, Excel, HTML or use the Apify API.

How to use it

  1. Add one or more YouTube video URLs or IDs.
  2. Optionally choose a preferred language (e.g. en) and a language to translate to (e.g. es).
  3. Click Start and download your transcripts.

Language selection: exact match first (es-419), then same base language (es → es-419), and manual captions before auto-generated ones. With no preference you get the transcript in the language spoken in the video.

How much does it cost?

Pay per result, no subscription:

EventPrice
Actor start$0.005 per run
transcript (one video transcript)$0.004, or $4 per 1,000 transcripts

Videos without captions, private or unavailable videos and blocked attempts are never charged. Proxy costs are included. The Apify free plan's $5 monthly credit covers about 1,200 transcripts.

Input

FieldDefaultDescription
videoUrls–YouTube URLs or 11-character IDs (required)
languagevideo defaultPreferred caption language code
translateTo–Translate the transcript to this language code
includeSegmentstrueTimestamped caption lines
includeSrtfalseSRT subtitle string
maxItems1000Max transcripts per run
proxyConfigurationResidentialYouTube shows a bot check to busy cloud IPs; the Actor retries on a new IP
{
"videoUrls": ["https://www.youtube.com/watch?v=dQw4w9WgXcQ", "https://youtu.be/jNQXAC9IVRw"],
"language": "en",
"translateTo": "es",
"includeSrt": true
}

Output

{
"videoId": "jNQXAC9IVRw",
"url": "https://www.youtube.com/watch?v=jNQXAC9IVRw",
"title": "Me at the zoo",
"channelName": "jawed",
"channelId": "UC4QobU6STFB0P71PMvOGN5A",
"durationSeconds": 19,
"viewCount": 380000000,
"language": "en",
"originalLanguage": "en",
"isAutoGenerated": false,
"isTranslated": false,
"availableLanguages": [{ "code": "en", "name": "English", "isAutoGenerated": false }],
"wordCount": 39,
"transcript": "All right, so here we are, in front of the elephants the cool thing about these guys is that they have really, really, really long trunks and that's cool",
"segments": [{ "start": 1.2, "duration": 2.16, "text": "All right, so here we are, in front of the elephants" }],
"scrapedAt": "2026-10-26T03:00:00.000Z"
}

Error items have errorType: NO_TRANSCRIPT, UNAVAILABLE, AGE_RESTRICTED_OR_PRIVATE, BLOCKED, INVALID_URL or TRANSLATION_FAILED. Error items are free.

Use it with AI and automations

Call it from Python, Node.js, Make, Zapier, n8n or as an MCP tool for AI agents through Apify.

from apify_client import ApifyClient
client = ApifyClient("<YOUR_API_TOKEN>")
run = client.actor("istmobot/youtube-transcript-scraper").call(run_input={
"videoUrls": ["https://www.youtube.com/watch?v=dQw4w9WgXcQ"],
"includeSegments": False,
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item["title"], item.get("transcript", item.get("error"))[:200])

FAQ

Does it work for videos without captions? No. It reads the captions YouTube has, including auto-generated ones. Videos with no captions return a free NO_TRANSCRIPT item.

Is it legal? It reads publicly available captions. You are responsible for how you use the data; respect copyright and YouTube's terms.

Need a channel or playlist? Paste the video URLs; channel and playlist input is on the roadmap. Open an issue to request it.