YouTube Transcript and Subtitle Data Scraper
Pricing
from $5.00 / 1,000 transcript extracteds
YouTube Transcript and Subtitle Data Scraper
Extract YouTube transcripts from video URLs, channels, or search queries. Receive timestamped segments, plain text, SRT subtitles, language details, video metadata, token estimates, and LLM-ready context.
Pricing
from $5.00 / 1,000 transcript extracteds
Rating
0.0
(0)
Developer
Khadin Akbar
Maintained by CommunityActor stats
0
Bookmarked
37
Total users
8
Monthly active users
19 hours ago
Last modified
Categories
Share
Extract YouTube transcripts from individual videos, URL lists, channels, or search queries. Each record can include timestamped segments, plain transcript text, SRT subtitles, video metadata, language details, word and token estimates, and an LLM-ready context field.
Use the Actor for research, content analysis, searchable knowledge bases, subtitle workflows, RAG pipelines, topic discovery, and AI agents that need structured spoken-video content.
Best fit
- Research teams collecting spoken evidence from public YouTube videos.
- Content teams turning video material into searchable source documents.
- AI and RAG pipelines that need clean transcript text plus metadata.
- Analysts comparing themes across channels or search topics.
- Subtitle workflows that need timestamped segments or SRT output.
A practical content-research scenario
A research agent starts with a YouTube search query and discovers videos around a market topic. The Actor extracts each transcript together with the title, channel, publication context, language, and token estimate. The agent can place llmContext directly into a summarization step, keep transcriptSegments for timestamp citations, and retain videoId as the stable reference for later comment or channel research.
This provides both readable text and machine-friendly evidence in one dataset.
Input modes
The Actor selects a workflow from the supplied input:
| Input | Workflow |
|---|---|
videoUrls | Extracts transcripts from individual or bulk YouTube URLs. |
channelUrl | Discovers videos from a channel or handle, then extracts transcripts. |
searchQuery | Discovers videos for a topic, then extracts transcripts. |
Quick start
Extract a video transcript
{"videoUrls": ["https://www.youtube.com/watch?v=dQw4w9WgXcQ"],"language": "en","outputFormat": "all","includeMetadata": true}
Research a channel
{"channelUrl": "https://www.youtube.com/@mkbhd","maxResults": 20,"language": "en","outputFormat": "plain_text"}
Discover transcripts by topic
{"searchQuery": "how to use AI for customer research","maxResults": 10,"language": "en","outputFormat": "all"}
Input reference
| Field | Purpose |
|---|---|
videoUrls | YouTube watch, short, embed, or shortened URLs. |
channelUrl | Channel URL, channel ID URL, custom channel URL, or handle. |
searchQuery | Topic used to discover YouTube videos. |
maxResults | Upper bound for videos processed in channel and search workflows. |
language | Preferred transcript language code. |
dateFrom, dateTo | Narrows channel discovery by publication date. |
includeMetadata | Adds video and channel metadata. |
outputFormat | Selects all fields, segments, plain text, or SRT. |
customProxyUrl | Optional private proxy URL supplied through the input surface. |
proxyConfiguration | Controls Apify residential routing. |
Output data
Each video record can include:
videoId,videoUrl,title,channelName,channelId, andchannelUrlpublishedAt,durationSeconds, view, like, and comment countsthumbnail,description, and tagstranscriptSegments,transcriptText, andtranscriptSrtllmContext,tokenEstimate, andwordCountlanguageUsed,availableLanguages, andisAutoGeneratedinputMode,status,scrapedAt, andsourceUrl
{"videoId": "dQw4w9WgXcQ","videoUrl": "https://www.youtube.com/watch?v=dQw4w9WgXcQ","title": "Example video","channelName": "Example channel","transcriptText": "Transcript text appears here.","transcriptSegments": [{"text": "Transcript text appears here.","start": 0,"duration": 3.5}],"languageUsed": "en","status": "success"}
AI agent workflows
The Actor works as a focused transcript tool through Apify MCP and the Apify API. llmContext packages title, channel, publication context, video metrics, and transcript text into a convenient downstream string, while the raw transcript fields remain available for precise processing.
Example agent request:
Find YouTube videos about customer research, extract English transcripts, return titles, channels, token estimates, and timestamped segments, then summarize recurring methods with source video IDs.
Useful routing guidance:
- Use
videoUrlswhen the agent already has specific sources. - Use
channelUrlfor creator or publisher research. - Use
searchQueryfor topic discovery. - Choose
plain_textfor compact semantic processing. - Choose
segmentsorallwhen timestamp citations matter. - Preserve
videoId,languageUsed, andstatusin downstream evidence.
Run through the API
curl -X POST "https://api.apify.com/v2/acts/khadinakbar~youtube-transcript-extractor/runs" \-H "Authorization: Bearer YOUR_APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"searchQuery": "how to use AI for customer research","maxResults": 10,"language": "en","outputFormat": "all"}'
The Apify token stays in the Authorization header. Results are available from the run's default dataset in JSON, CSV, Excel, and other supported formats.
Transcript sourcing and fallback
The primary route uses the Actor's native YouTube transcript stack. It combines Android-client caption retrieval, embedded page data, InnerTube methods, signed caption URLs, timed-text formats, language selection, rotating residential sessions, custom proxy support, and direct routing.
When the native strategies complete without transcript segments, the implemented final recovery route calls ScrapeCreators for the same public YouTube video and language. ScrapeCreators results are normalized into the same segment, text, language, SRT, and dataset contract before delivery. This is a real source-level fallback and remains secondary to the native path.
Pricing
This Actor uses Pay per event pricing with platform usage passed through. A transcript event is charged when the corresponding dataset record is written through the Actor's coupled data-and-billing path. Treat the live Pricing tab as the current source of truth for event prices and billing details.
Use maxResults and outputFormat to align each run with the workflow's scope and context budget.
Best results
- Supply direct video URLs for the most focused transcript workflow.
- Use channel or search discovery with a practical result cap before expanding a research batch.
- Set the preferred language and inspect
languageUsedin every returned record. - Choose timestamped segments for evidence citation and plain text for compact analysis.
- Keep metadata enabled when channel, publication, and engagement context matter.
Related Actors
- Start with YouTube Search Scraper when discovery needs richer video, channel, and playlist filters, then pass selected video URLs here.
- Pair transcripts with YouTube Comments Scraper when the workflow combines spoken content with audience reactions.
Builder's note
I designed this Actor to return both human-readable transcript text and source-aware fields for machines. The native multi-strategy path handles caption variation, the ScrapeCreators recovery route adds an independent provider path, and the output formats let an agent choose compact text or timestamp-level evidence without changing tools.
Responsible use
This Actor collects publicly available YouTube transcript and video information. Use the results for legitimate research and content workflows in line with applicable laws, source terms, copyright requirements, and your organization's data-governance policies.