YouTube Transcript Scraper
Pricing
from $10.00 / 1,000 result items
YouTube Transcript Scraper
Scrapes YouTube video transcripts by URL or video ID. Returns full transcript text, segmented lines with timestamps, and optional SRT subtitle export. No API key required.
Pricing
from $10.00 / 1,000 result items
Rating
0.0
(0)
Developer
ParseForge
Maintained by CommunityActor stats
0
Bookmarked
29
Total users
7
Monthly active users
9 days ago
Last modified
Categories
Share
YouTube Transcript Scraper
Scrape YouTube video transcripts from any URL or video ID, up to a million per run. Get the full transcript as segmented JSON with timestamps, plus optional SRT subtitle export. No API key, no quotas. Export to CSV, JSON, Excel, or XML.
YouTube's official API needs OAuth, quotas, and only returns captions for your own videos. This reads the public transcript feeds directly from any video URL or ID, filters by language, and returns each transcript in one fixed schema. It works for videos with manually uploaded or auto-generated captions.
| Who uses it | What they scrape YouTube for |
|---|---|
| Content marketers | Repurpose video content into blog posts, social snippets, or SEO articles |
| Market researchers | Analyze what competitors say in their videos without watching them |
| Podcast producers | Turn video interviews into searchable text and show notes |
| Data scientists | Build datasets of spoken content for NLP and sentiment analysis |
| Accessibility teams | Generate accurate captions and transcripts for video libraries |
What it does
This Actor collects YouTube video transcripts by URL or video ID, and returns each one as a flat row with the full transcript text, segmented lines with timestamps, and optional SRT subtitle export.
- ๐ Segmented JSON transcript: every line with its start time, duration, and text, ready for analysis.
- ๐๏ธ SRT subtitle export: optional SRT file per video, billed per video, for direct use in players.
- ๐ Language selection: pick any ISO language code (en, es, fr...) or leave empty for the video's default.
- ๐ Flexible input: feed video URLs, video IDs, or both, and cap the run with maxItems.
Results export to CSV, JSON, Excel, or XML, or straight from the API.
What you can do with YouTube data
๐ Repurpose video content.
A content marketer feeds a list of YouTube video URLs and gets full transcripts to turn into blog posts, newsletters, and social media copy.
๐ Competitor research.
A market researcher scrapes transcripts from competitor videos to identify talking points, product mentions, and messaging without watching hours of footage.
๐๏ธ Podcast transcription.
A podcast producer extracts transcripts from video interviews to create searchable show notes and improve SEO.
๐ NLP dataset building.
A data scientist collects thousands of transcripts by video ID to train sentiment analysis or topic modeling models.
โฟ Accessibility compliance.
An accessibility team scrapes transcripts and SRT files to add captions to an existing video library.
Why choose this scraper
| What you get | |
|---|---|
| No API key or quotas | Reads public transcript feeds directly, no OAuth or daily limits. |
| Full transcript text | Returns the complete transcript as one string plus segmented lines with timestamps. |
| SRT subtitle export | Optional SRT file per video for use in video players and editors. |
| Language control | Request a specific language or get the video's default transcript. |
| Bulk scraping | Process up to a million transcripts per run with a simple input list. |
How it compares
This Actor focuses on transcript extraction with a clean segmented JSON output and optional SRT export, while the competitors below either cover broader YouTube scraping or offer transcript extraction with different feature sets.
| Feature | ParseForge | YouTube Scraper | YouTube Transcript Ninja โก๏ธ๐ฅทโก | Youtube Transcript Scraper |
|---|---|---|---|---|
| Full transcript text | Yes | Not listed | Yes | Yes |
| Segmented JSON with timestamps | Yes | Not listed | Not listed | Not listed |
| SRT subtitle export | Yes | Not listed | Not listed | Not listed |
| Language selection | Yes | Not listed | Not listed | Not listed |
| Bulk input via video IDs | Yes | Not listed | Not listed | Not listed |
| No API key required | Yes | Yes | Not listed | Not listed |
Configure the run
Drive the Actor from YouTube video URLs and video IDs, alone or together, set a preferred language, and cap the run with maxItems. The includeSrt toggle adds SRT subtitle export per video. The Input tab lists every parameter.
A first run with the defaults:
{"startUrls": [{"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ"}],"maxItems": 10}
A larger pull:
{"startUrls": [{"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ"}],"maxItems": 200}
Pricing
Pay-per-result: $0.015 per result collected. You pay only for the results written to your dataset.
| Results collected | Approximate cost |
|---|---|
| 100 results | $1.50 |
| 1,000 results | $15.00 |
| 10,000 results | $150.00 |
New Apify accounts start with $5 in free credit.
Free users
Free-plan runs return up to 10 results as a preview. Upgrade your Apify plan to collect up to 1,000,000 results per run.
Run it
- Create a free Apify account with $5 in credit.
- Open the YouTube Transcript Scraper.
- Set your inputs and any filters, then click Start.
- Export the results as CSV, Excel, JSON, or XML from the Dataset tab.
Run it programmatically through the Apify API (run-sync-get-dataset-items) or the ApifyClient for JavaScript and Python.
Use with AI agents (MCP)
Give an AI agent live access to YouTube through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:
$claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/youtube-transcript-scraper"
Then prompt it in plain language to run the scraper and read back the results.
Troubleshooting
Why am I getting no results?
Check that the video URLs or IDs are correct and publicly accessible. Some videos have no captions at all, in which case the Actor returns an empty transcript. Try a different video to confirm.
Why is the transcript in the wrong language?
Set the language field to the desired ISO code. If that language is not available, the Actor uses the video's default. You can also leave language empty to always get the default.
Why is the SRT file missing?
Make sure includeSrt is set to true. SRT export is billed per video, so if you disabled it to save costs, only the JSON transcript is returned.
Why did the run stop before processing all my videos?
Check the maxItems setting. The Actor stops after collecting that many transcripts. Increase maxItems if you need more.
Why do I get an error for a video that has captions?
The video may be region-locked or have captions disabled for embedding. Try a different video or check the video's settings on YouTube.
FAQ
| Question | Answer |
|---|---|
| Does this work for auto-generated captions? | Yes, it retrieves both manually uploaded and auto-generated transcripts when available. If a video has no captions at all, the Actor returns an empty transcript with a status flag. |
| Can I get the transcript in a specific language? | Yes, set the language field to an ISO code like en, es, or fr. If that language is not available, the Actor falls back to the video's default transcript. |
| What is the difference between the JSON transcript and the SRT export? | The JSON transcript is a structured array of segments with start time, duration, and text. The SRT export is a standard subtitle file you can use directly in video players. SRT export is billed per video and can be disabled. |
| How many videos can I scrape in one run? | You can set maxItems up to 1,000,000. The Actor processes URLs and video IDs from your input list until it reaches that limit. |
| Do I need a YouTube API key? | No. The Actor reads public transcript feeds directly, so there are no API keys, OAuth, or daily quotas. |
| Can I input a YouTube channel URL? | No, this Actor accepts individual video URLs or video IDs. To get all videos from a channel, use a YouTube channel scraper first and then feed the video URLs here. |
| What output formats are supported? | The dataset can be exported to CSV, JSON, Excel, or XML from the Apify platform. The SRT file is stored as a separate attachment per video. |
| Does it work with age-restricted or private videos? | It works with any publicly accessible video that has captions. Private or age-restricted videos may not return transcripts. |
| Is the transcript returned as one string or segmented? | Both. The output includes the full transcript text as one string and a segmented array with timestamps for each line. |
| Can I run this on a schedule? | Yes, you can schedule recurring runs in Apify to collect new transcripts automatically. |
Related actors
Browse the full ParseForge collection for more scrapers.
๐ Need help? Email parseforge@protonmail.com with your run ID, your input, and what you expected.
โ ๏ธ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by YouTube LLC. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.
