Youtube Transcript
Pricing
from $0.0005 / actor start
Youtube Transcript
๐ฅExtract complete transcripts with precise timestamps โฑ๏ธ and comprehensive video metadata from any YouTube video โ> โกFast, reliable, and ready to use.
Pricing
from $0.0005 / actor start
Rating
5.0
(21)
Developer
FlowExtract API
Maintained by CommunityActor stats
81
Bookmarked
945
Total users
69
Monthly active users
13 hours ago
Last modified
Categories
Share
๐ฌ YouTube Transcript & Metadata Extractor
Extract YouTube transcripts, subtitles, and complete video metadata in seconds - no manual work, no copy-paste, just pure automated data extraction.
Extract transcripts from any YouTube video in 3 clicks
Paste URL โ Click Start โ Download data. That's it.
Why 1,000+ marketers, researchers, and developers choose this tool
| What You Get | Why It Matters |
|---|---|
| โก 5-second extraction | Process 100 videos while your coffee brews |
| ๐ฏ 100% accurate transcripts | Official YouTube data, not AI guesses |
| ๐ Complete metadata | Views, likes, channel info, thumbnails - everything |
| ๐ฐ Free tier available | Test with 10 videos before paying anything |
| ๐ Never extract twice | Smart caching saves time and money |
| ๐ฅ Export anywhere | JSON, CSV, Excel, or direct API integration |
How It Works
Step 1: Paste Your URLs
{"youtubeUrl": [{ "url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ" }]}
Step 2: Configure (Optional)
- Clean transcript: Remove "um", "uh", filler words
- Include timestamps: Get second-by-second text timing
- Extract comments: Pull top comments with replies (NEW!)
Step 3: Get Your Data
{"videoId": "dQw4w9WgXcQ","Video_title": "Rick Astley - Never Gonna Give You Up","Views": "1,234,567,890 views","transcriptText": "We're no strangers to love...","channel": {"name": "Rick Astley","subscribers": "3.2M subscribers"}}
What You Can Do With This Data
๐ Content Creators & Marketers
- Repurpose videos into blogs - Extract transcript, feed to AI, generate 5 articles
- Create social media posts - Pull key quotes and timestamps
- Generate SEO-optimized content - Turn video content into searchable text
- Subtitle generation - Export timestamps for perfect captions
Real example: Marketing agency extracts 100 competitor videos weekly, identifies trending topics, creates counter-content. Result: 40% traffic increase in 3 months.
๐ฌ Researchers & Academics
- Analyze lecture content at scale - Process entire course catalogs
- Study speaking patterns - Extract timestamps for linguistic analysis
- Sentiment analysis - Feed transcripts into NLP models
- Citation extraction - Find and verify sources mentioned in videos
Real example: PhD student analyzed 500 TED Talks in 2 days instead of 6 months, discovered key patterns in successful presentations.
๐ค Developers & AI Teams
- Train chatbots - Use video transcripts as training data
- Build recommendation engines - Analyze content similarity
- Automated workflows - Trigger actions based on new videos
- Knowledge base creation - Convert video libraries into searchable databases
Real example: SaaS company built AI support bot using 1,000 tutorial video transcripts. Result: 60% reduction in support tickets.
๐ Business Intelligence
- Competitor monitoring - Track what competitors are saying
- Brand sentiment tracking - Analyze mentions across video content
- Market research - Extract insights from industry thought leaders
- Product feedback analysis - Process customer testimonial videos
Real example: E-commerce brand analyzes 200 review videos monthly, identifies pain points, improves product design. Result: 25% reduction in returns.
Complete Feature List
Core Extraction
- โ Full video transcripts with cleaned text
- โ Precise second-by-second timestamps
- โ Video metadata (title, views, likes, date)
- โ Channel information (name, subscribers, verification)
- โ Thumbnail URLs (multiple resolutions)
- โ Video descriptions and tags
- โ Duration and word count analytics
Smart Processing
- โ 3 cleaning levels: None (raw), Mild (remove "um"/"uh"), Aggressive (conversational cleanup)
- โ Automatic deduplication: Never process the same video twice
- โ Batch processing: Handle 1 to 1000+ videos
- โ Error recovery: Auto-retry on temporary failures
- โ Multiple formats: All YouTube URL types (standard, shorts, live, youtu.be)
NEW: Comment Extraction
- โ Top comments with like counts
- โ Comment replies (configurable depth)
- โ Sort by "top" or "newest"
- โ Real-time streaming extraction
- โ Automatic resumption if interrupted
Export & Integration
- โ JSON, CSV, Excel download
- โ Direct API access
- โ Webhook integration
- โ Pre-configured data views
- โ Apify platform integration
Input Configuration
Basic Example (Just Transcripts)
{"youtubeUrl": [{ "url": "https://www.youtube.com/watch?v=VIDEO_ID" }],"transcriptOnly": true,"cleaningLevel": "mild"}
Advanced Example (With Comments)
{"youtubeUrl": [{ "url": "https://www.youtube.com/watch?v=VIDEO_ID" }],"cleaningLevel": "aggressive","includeTimestamps": true,"extractcomments": true,"sortBy": "top","maxComments": 50,"maxRepliesPerComment": 5}
All Parameters
Extraction
| Parameter | Type | Default | What It Does |
|---|---|---|---|
youtubeUrl | array | Required | List of YouTube video URLs (any format) |
transcriptOnly | boolean | false | Skip metadata and return only the transcript. Faster and cheaper when you just need the words |
cleaningLevel | string | "mild" | "none" (verbatim), "mild" (remove uh/um), "aggressive" (also remove conversational fluff) |
includeTimestamps | boolean | true | Include the per-segment timestamp array. Turn off for a smaller result โ word count and duration are still returned |
Comments (optional)
| Parameter | Type | Default | What It Does |
|---|---|---|---|
extractcomments | boolean | false | Enable comment extraction (adds 10-40s per video) |
sortBy | string | "top" | Comment sort: "top" (most relevant) or "newest" (chronological) |
maxComments | integer | 10 | Max top-level comments (10-100,000) |
maxRepliesPerComment | integer | 0 | Max replies per comment. 0 = no replies (10x faster) |
Run control
| Parameter | Type | Default | What It Does |
|---|---|---|---|
useCache | boolean | true | Remember delivered videos so a restarted run resumes instead of re-processing โ and re-charging โ them |
maxConcurrency | integer | 10 | How many videos to process in parallel. Lower it if you hit rate limits |
batchPushSize | integer | 10 | How many videos are processed before results are delivered. Smaller batches surface results sooner |
๐ก Pro tip: Start with maxRepliesPerComment: 0 for 10x faster extraction if you don't need reply threads.
Output Structure
What You Get for Every Video
{"videoId": "kOO31qFmi9A","VideoURL": "https://youtu.be/kOO31qFmi9A","embedUrl": "https://www.youtube.com/embed/kOO31qFmi9A","Video_title": "Introduction to Microsoft Excel 1990 with Jan Brehm","published_Date": "Mar 29, 2013","Views": "9,838,429 views","likes": "180K","channel": {"name": "Jan Brehm","id": "UC_i2UaK1pico7jU0pqZR8fg","url": "https://www.youtube.com/channel/UC_i2UaK1pico7jU0pqZR8fg","subscribers": "9.12K subscribers","verified": false},"thumbnail": "https://i.ytimg.com/vi/kOO31qFmi9A/default.jpg","Description": "Microsoft Excel Video with Jan Brehm...","hasTranscript": true,"transcriptAvailability": { "available": true, "reason": "Available" },"transcriptText": "Hey. Hey, Craig buddy. I just saw Wilson. You're showing her the projections for the new vacation package...","timestamps": [{ "time": "0:01", "text": "[Music]" },{ "time": "0:04", "text": "Hey. Hey, Craig buddy. I just saw" },{ "time": "0:07", "text": "Wilson. You're showing her the" }],"transcriptWordCount": 481,"transcriptDuration": "3:49","charged": true,"_source": "youtube_transcript_metadata_extractor","source_url": "https://youtu.be/kOO31qFmi9A"}
A few fields worth knowing:
| Field | Why it's there |
|---|---|
transcriptAvailability.reason | When a video has no transcript you get the reason โ captions disabled, video unavailable, and so on โ instead of an empty field with no explanation |
transcriptWordCount / transcriptDuration | Always returned, even with includeTimestamps: false |
charged | Whether this row was billed. Videos without a transcript are delivered free โ you still get the full metadata, at no cost, with chargeSkipReason explaining why |
_source / source_url | Provenance, so rows stay traceable after you merge datasets |
In transcriptOnly mode you get videoId, VideoURL, hasTranscript, transcriptAvailability, transcriptText, timestamps and the two transcript stats โ the metadata fields are skipped.
With Comments Enabled
{"videoId": "dQw4w9WgXcQ","Video_title": "Never Gonna Give You Up","transcriptText": "We're no strangers to love...","commentsExtracted": true,"commentCount": 50,"comments": [{"commentId": "UgxQe-6VK3h-LZaul6x4AaABAg","authorName": "@musiclover2024","text": "Still the best song after all these years!","likeCount": "1,543","replyCount": 12,"publishedTime": "2 days ago","replies": [{"commentId": "UgxQe-6VK3h-LZaul6x4AaABAg.9kF7...","authorName": "@throwback90s","text": "Facts! Never gets old.","likeCount": "234","publishedTime": "1 day ago"}]}]}
Pricing & Performance
What You Pay
Two events, and you only pay for videos that come back with a transcript:
| Event | Free | Bronze | Silver | Gold |
|---|---|---|---|---|
| Video with transcript (per video) | $0.015 | $0.010 | $0.009 | $0.008 |
| Actor start (once per run) | $0.009 | $0.0005 | $0.0005 | $0.0005 |
Example โ 100 videos on Bronze: $0.0005 start + 100 ร $0.010 = $1.0005
A video whose captions are disabled still returns its full metadata, and is not charged.
Speed
| Typical | |
|---|---|
| Transcript only | 3-6 seconds per video |
| Full metadata + transcript | 5-12 seconds per video |
| Videos in parallel | 10 by default, tunable via maxConcurrency |
Runs are resumable: if a run is interrupted and restarted, useCache skips videos already delivered so you are never charged twice for the same video.
Comment Extraction (Optional Add-on)
Comments are gathered through YouTube Comments Scraper, which bills separately for parent comments and replies at its own published rates.
Speed impact:
- Without replies: +5-10 seconds per video
- With replies (10 per comment): +20-40 seconds per video
๐ก Cost optimization tip: Set maxRepliesPerComment: 0 if you don't need reply threads - you'll get 10x faster extraction and cut comment costs sharply.
Supported YouTube URL Formats
We handle ALL YouTube URL types:
โ
https://www.youtube.com/watch?v=VIDEO_ID
โ
https://youtu.be/VIDEO_ID
โ
https://www.youtube.com/shorts/VIDEO_ID
โ
https://www.youtube.com/live/VIDEO_ID
โ
https://youtube.com/watch?v=VIDEO_ID (no www)
โ
https://m.youtube.com/watch?v=VIDEO_ID (mobile)
Just paste any YouTube link - we'll figure it out.
Pre-Configured Data Views
Save time with our built-in export templates:
1. ๐ Full Video Metadata, Transcripts & Comments
Everything - Complete metadata, transcripts, timestamps, comments
Use for: Comprehensive analysis, data warehousing
2. ๐ค Pure Transcript Results
Focus: Transcript text, timestamps, word count, duration, availability reason
Use for: Content repurposing, subtitle generation
3. ๐ฌ Comments Only
Focus: Comment threads, counts, and any per-video comment error
Use for: Audience sentiment, community research
4. ๐บ Channels Overview
Focus: Channel name, ID, URL, subscribers, verification
Use for: Influencer research, competitor analysis
Quick Start Examples
Use Case 1: Content Repurposing
Goal: Turn video into blog post
// 1. Extract transcriptconst input = {youtubeUrl: [{ url: "YOUR_VIDEO_URL" }],cleaningLevel: "aggressive",includeTimestamps: false};// 2. Run actor// 3. Get output: feed transcriptText to ChatGPT/Claude// 4. Generate 5 blog posts in 2 minutes
Use Case 2: Competitor Analysis
Goal: Analyze 100 competitor videos
const input = {youtubeUrl: [{ url: "competitor_video_1" },{ url: "competitor_video_2" },// ... paste 100 URLs],cleaningLevel: "mild",extractcomments: true,maxComments: 20};// Export to Excel โ Analyze trends โ Find content gaps
Use Case 3: AI Training Data
Goal: Build chatbot training dataset
const input = {youtubeUrl: YOUR_PLAYLIST_URLS, // from our Playlist ExtractorcleaningLevel: "none", // keep raw data for AIincludeTimestamps: true};// Process 1000 videos โ Clean dataset โ Train model
Integration Examples
JavaScript/Node.js
const ApifyClient = require('apify-client');const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });const input = {youtubeUrl: [{ url: "https://www.youtube.com/watch?v=dQw4w9WgXcQ" }],cleaningLevel: "mild"};const run = await client.actor("dz_omar/youtube-transcript-metadata-extractor").call(input);const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items[0].transcriptText);
Python
from apify_client import ApifyClientclient = ApifyClient('YOUR_API_TOKEN')run_input = {"youtubeUrl": [{ "url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ" }],"cleaningLevel": "mild"}run = client.actor("dz_omar/youtube-transcript-metadata-extractor").call(run_input=run_input)for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item['transcriptText'])
cURL (Direct API)
curl -X POST https://api.apify.com/v2/acts/dz_omar~youtube-transcript-metadata-extractor/runs \-H "Content-Type: application/json" \-H "Authorization: Bearer YOUR_API_TOKEN" \-d '{"youtubeUrl": [{ "url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ" }]}'
โ View full API documentation
Frequently Asked Questions
Technical Details
Comparison: Why Choose This Actor?
| Feature | This Actor | Manual Copy-Paste | Other Tools |
|---|---|---|---|
| Speed | 5-10 sec/video | 5-10 min/video | 30-60 sec/video |
| Accuracy | 100% (official data) | 100% | 70-90% (AI guessing) |
| Batch processing | โ 1000+ videos | โ One at a time | โ ๏ธ Limited (10-50) |
| Timestamps | โ Second-precise | โ Manual work | โ ๏ธ Minute-level only |
| Metadata | โ Everything | โ Manual scraping | โ ๏ธ Basic only |
| Comments | โ With replies | โ Screenshot only | โ Not available |
| API access | โ Full REST API | โ None | โ ๏ธ Limited |
| Cost | $0.001-0.006/video | $5-10/video (labor) | $0.10-0.50/video |
| Setup time | 1 minutes | N/A | 30-60 minutes |
Trust & Reliability
Platform Performance
- โ Actor running smoothly - 100% success rate
- โ Regular updates - Maintained actively
Legal & Compliance
What You Should Know
โ What's allowed:
- Extracting public transcripts for personal use
- Research and academic analysis
- Business intelligence and market research
- Content repurposing with proper attribution
โ ๏ธ What requires caution:
- Large-scale commercial redistribution
- Republishing copyrighted video content
- Using data in ways that violate YouTube's ToS
- Scraping private or restricted content
๐ Privacy & Data:
- We only extract publicly visible data
- No authentication or login required
- No data stored beyond your run duration
- GDPR compliant (EU users)
Disclaimer: This tool extracts publicly available data. Users are responsible for ensuring their usage complies with YouTube's Terms of Service, copyright laws, and applicable regulations. We are not lawyers - consult legal counsel for commercial use cases.
Related Tools from FlowExtract API
Build your complete YouTube data pipeline with our specialized actors:
๐ฌ Video & Content Tools
YouTube Playlist Extractor
Extract all videos from playlists in seconds. Get video URLs, titles, durations. Perfect for feeding into this transcript extractor.
โ Use together: Playlist โ Transcript Extractor = Full channel analysis
YouTube Channel Scraper Pro
Complete channel extraction: videos, shorts, live streams, playlists. Comprehensive creator analytics.
โ Use together: Channel Scraper โ Transcript Extractor = Creator deep-dive
YouTube Comments Scraper
Standalone comment extraction with advanced filtering. Perfect for sentiment analysis.
โ Integrated in this actor - enable with extractcomments: true
๐น Video Platform Tools
Zoom Scraper | Downloader & Transcript
Extract Zoom meeting recordings and transcripts. Perfect for meeting analysis.
Loom Scraper | Downloader & Transcript
Download Loom videos and extract transcripts. Ideal for training content.
๐ Real Estate Data
Idealista Scraper API
Spanish real estate listings with API access. Property data at scale.
๐ ๏ธ Developer Tools
Screenshot | Ultimate Screenshot
Webpage screenshots with custom options. Perfect for monitoring and documentation.
Network Security Scanner
Website security vulnerability scanning. Comprehensive security reports.
โ View all FlowExtract API tools
Get Started Now
Free Trial Available
No credit card required. Test with 5$ to see the quality yourself.
Need Help?
๐ง Email: flowextractapi@outlook.com
๐ Website: flowextractapi.com
๐ฆ Twitter: @FlowExtractAPI
๐ผ LinkedIn: flowextract-api
Response time: Within 24 hours (usually much faster)