YouTube Transcript Scraper — Captions & Subtitles to Text avatar

YouTube Transcript Scraper — Captions & Subtitles to Text

Pricing

from $0.0025 / transcript scraped

Go to Apify Store
YouTube Transcript Scraper — Captions & Subtitles to Text

YouTube Transcript Scraper — Captions & Subtitles to Text

Get the full transcript of any YouTube video: clean text plus timestamped segments, in any available language (auto-translation supported). Paste video URLs and export as JSON, CSV or Excel — perfect for summaries, subtitles, research and LLMs.

Pricing

from $0.0025 / transcript scraped

Rating

0.0

(0)

Developer

hiper soft

hiper soft

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share

Get the full transcript of any YouTube video — clean, readable text plus timestamped segments — in any available language, with auto-translation when your language isn't published natively. Paste video links and export to JSON, CSV or Excel, or pull straight from the API.

Perfect for video summaries, content repurposing, subtitles and captions, SEO, research, accessibility, and feeding transcripts to LLMs and RAG pipelines.


What you get

One row per video:

FieldDescription
videoId / videoUrl / videoTitleThe video
hasTranscriptWhether a transcript was found
language / langNameTranscript language
isAutoGeneratedAuto (ASR) captions vs. human-written
isAutoTranslatedWhether it was auto-translated to your language
segmentCountNumber of caption lines
durationSecondsLength covered by the transcript
fullTextThe complete transcript as one clean string
segmentsTimestamped lines: { start, end, dur, text } (when timestamps are enabled)
availableLanguagesLanguages offered for the video (when no transcript in your language)
collectedAtWhen the row was scraped

How to use

1. Add videos

{
"videoUrls": [
"https://www.youtube.com/watch?v=arj7oStGLkU",
"https://youtu.be/dQw4w9WgXcQ"
],
"language": "en",
"includeTimestamps": true,
"maxItems": 200
}

2. Options

  • Language — a 2-letter code (en, es, fr, de, pt, hi, ar, ja, …). If the video has no native track in that language, it's auto-translated. Use auto for the video's default track.
  • Include timestamped segments — add per-line {start, end, text} alongside the full text.
  • Max videos — cap the number processed (0 = no limit).

Example output

{
"videoId": "arj7oStGLkU",
"videoTitle": "Inside the Mind of a Master Procrastinator | Tim Urban | TED",
"hasTranscript": true,
"language": "en",
"isAutoGenerated": false,
"isAutoTranslated": false,
"segmentCount": 315,
"durationSeconds": 842.6,
"fullText": "So in college, I was a government major, which means I had to write a lot of papers…",
"segments": [
{ "start": 12.645, "end": 14.015, "dur": 1.37, "text": "So in college," }
],
"collectedAt": "2026-09-20T09:00:00.000Z"
}

Common use cases

  • Summaries & repurposing — turn talks and tutorials into articles, notes or threads.
  • Subtitles & captions — export text for translation, editing or reuse.
  • SEO & content — mine video transcripts for keywords and quotes.
  • Research & analysis — search across many videos' transcripts at once.
  • LLMs & RAG — feed clean transcripts into models and knowledge bases.

Frequently asked questions

Do I need any login, account or key? No. Just paste video links and run.

Which languages are supported? Whatever the video offers, plus auto-translation into your chosen language when a native track isn't available.

Does it work for auto-generated captions? Yes — both human-written and auto-generated (ASR) captions are returned; isAutoGenerated tells you which.

What if a video has captions disabled? The row is returned with hasTranscript: false — the run never fails.

Can I process many videos at once? Yes — list multiple videos and set Max videos.

What format is the data? A flat table you can export as JSON, CSV or Excel, or fetch from the Apify API.


Building a YouTube toolkit? Pair this with our YouTube comments scraper, YouTube channel scraper and YouTube search scraper — all with the same clean, one-row-per-item output.