n8n-nodes-ravi-youtube-transcript
v0.2.1
Published
n8n node to extract YouTube video transcripts with language detection and clean text output
Maintainers
Readme
n8n-nodes-ravi-youtube-transcript
An n8n community node that extracts transcripts from YouTube videos with automatic language detection and clean text output.
Features
- Single Video - Extract transcript from any YouTube video URL
- Playlist - Batch extract transcripts from all videos in a playlist
- Batch URLs - Process multiple video URLs at once
- Language Selection - Choose specific language or auto-detect
- Clean Text Output - Returns clean, readable transcript text
- Video Metadata - Title, channel, duration included in output
- Timestamps - Optional timestamp data for each segment
- YouTube Cookies Support - Bypass bot detection on VPS/datacenter IPs
Requirements
| Requirement | Version | |-------------|---------| | Node.js | >= 20.0.0 | | n8n | >= 1.0.0 |
Installation
Method 1: n8n UI (Recommended)
- Open n8n → Settings → Community Nodes
- Click Install
- Search for
n8n-nodes-ravi-youtube-transcript - Click Install
Method 2: Command Line
n8n install n8n-nodes-ravi-youtube-transcriptMethod 3: Manual Install (Custom Node)
# Go to n8n custom nodes folder
cd ~/.n8n/custom/node_modules
# Clone or copy the node
git clone <repo-url> n8n-nodes-ravi-youtube-transcript
# OR copy the folder manually
# Install dependencies
cd n8n-nodes-ravi-youtube-transcript
npm install
# Build
npm run build
# Restart n8n
n8n startDependencies
Production Dependencies
| Package | Version | Purpose |
|---------|---------|---------|
| youtube-transcript-plus | ^2.0.0 | Fetches YouTube transcripts |
Dev Dependencies (for building from source)
| Package | Version | Purpose |
|---------|---------|---------|
| typescript | ~5.8.0 | TypeScript compiler |
| gulp | ^5.0.0 | Icon build pipeline |
| n8n-workflow | * | n8n type definitions |
| @types/node | ^22.0.0 | Node.js type definitions |
Peer Dependencies
| Package | Version |
|---------|---------|
| n8n-workflow | * |
Usage
Single Video
- Add the YouTube Transcript node to your workflow
- Set Mode to Single Video
- Enter a YouTube video URL or video ID
- Select a language or leave as Auto-Detect
- The node outputs clean transcript text with video metadata
Playlist
- Set Mode to Playlist
- Enter a YouTube playlist URL
- All video transcripts are fetched and returned as separate items
Batch
- Set Mode to Batch URLs
- Enter multiple YouTube video URLs (one per line)
- All valid transcripts are returned
YouTube Cookies Setup (For VPS/Datacenter)
If you're running n8n on a VPS or datacenter, YouTube may block transcript requests. Use cookies to bypass this:
Step 1: Export Cookies from Browser
- Install "Get cookies.txt LOCALLY" browser extension (Chrome / Firefox)
- Go to youtube.com and make sure you're logged in
- Click the extension icon → Export → Save the cookies file
Step 2: Create Credential in n8n
- Open the YouTube Transcript node
- In "Credential to connect with" dropdown, select YouTube Cookies
- Click Create New
- Paste the cookies content in the Cookies field
- Click Save — you'll see a green tick if cookies are valid
- If you see a red warning, cookies are expired — export fresh ones
Step 3: Use in Workflow
The node will automatically use the cookies for all transcript requests. No additional configuration needed.
Cookie Format
Cookies should be in this format (as exported by the extension):
CONSENT=YES+cb.20210328-17-p0.en+FX+299; SOCS=CAISNQgD...Output Fields
| Field | Description |
|-------|-------------|
| videoId | YouTube video ID |
| title | Video title |
| channel | Channel name |
| duration | Video duration (MM:SS) |
| language | Detected transcript language |
| isAutoGenerated | Whether transcript is auto-generated |
| transcript | Clean transcript text |
| segments | (Optional) Array of timed segments with text, offset, duration |
Options
| Option | Default | Description |
|--------|---------|-------------|
| Include Timestamps | false | Include timestamp metadata for each segment |
| Max Videos | 50 | Maximum videos to process (playlist/batch mode, max 200) |
Building from Source
# Clone the repo
git clone <repo-url>
cd n8n-nodes-ravi-youtube-transcript
# Install dependencies
npm install
# Build
npm run build
# The dist/ folder contains the compiled nodeTroubleshooting
"No transcript available"
- Video may not have captions/subtitles enabled
- Try a different video
"Cookie validation failed"
- Cookies may be expired — export fresh ones from browser
- Make sure you're logged into YouTube in the browser
- Try using a different browser
Node not appearing in n8n
- Restart n8n after installation
- Check n8n logs for errors
- Verify the node is in
~/.n8n/custom/node_modules/
VPS/Datacenter blocking requests
- Use YouTube Cookies credential (see setup above)
- Ensure cookies are fresh and not expired
License
MIT
