YouTube Video Downloader & Metadata Extractor
Pricing
$4.99/month + usage
YouTube Video Downloader & Metadata Extractor
Downloads YouTube videos with support for multiple quality levels (144p-4K), various formats (MP4, WebM, MP3, etc.), and cloud storage uploads. Extracts comprehensive video metadata including title, description, channel info, views, likes, comments, tags, and technical details.
Pricing
$4.99/month + usage
Rating
0.0
(0)
Developer

codingfrontend
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
A powerful Apify actor that downloads YouTube videos using yt-dlp with support for various quality levels, formats, and cloud storage uploads. Also extracts comprehensive video metadata including title, description, channel info, statistics, tags, categories, chapters, and technical details.
Features
- Multiple Quality Options: Download videos in 144p, 240p, 360p, 480p, 720p, 1080p, 1440p, or 2160p
- Various Formats: Support for video formats (mp4, webm, mkv, avi, mov, flv) and audio formats (mp3, aac, ogg, opus, flac, wav, m4a, etc.)
- Cloud Storage Integration: Upload directly to AWS S3, Azure Blob Storage, or Google Cloud Storage
- Customizable Filenames: Include video title, uploader name, and/or timestamp in filenames
- Key-Value Store Fallback: If no cloud storage is configured, files are saved to Apify's Key-Value Store
- Comprehensive Metadata: Extracts detailed video information including:
- Basic info: title, description, thumbnail, video ID
- Channel info: name, ID, URL, subscriber count
- Statistics: views, likes, comments count
- Categories and tags
- Duration, upload date, release date
- Technical details: resolution, fps, codecs, bitrate, file size
- Chapters and available subtitles
- Playlist information (if applicable)
Input
| Field | Type | Description | Default |
|---|---|---|---|
videos | Array | List of YouTube video URLs (required) | - |
preferredQuality | String | Video quality (144p-2160p) | 720p |
preferredFormat | String | Output format (mp4, webm, mp3, etc.) | mp4 |
filenameTemplateParts | Array | Parts to include in filename | ["title"] |
AWS S3 Configuration (Optional)
| Field | Type | Description |
|---|---|---|
s3AccessKeyId | String | AWS Access Key ID |
s3SecretAccessKey | String | AWS Secret Access Key |
s3Bucket | String | S3 Bucket Name |
s3Region | String | S3 Region (e.g., us-west-1) |
Azure Blob Storage Configuration (Optional)
| Field | Type | Description |
|---|---|---|
azureConnectionString | String | Azure Storage connection string |
azureContainerName | String | Container name (auto-created if doesn't exist) |
Google Cloud Storage Configuration (Optional)
| Field | Type | Description |
|---|---|---|
googleCloudServiceKey | String | Service account JSON key |
googleCloudBucketName | String | GCS bucket name |
Example Input
{"videos": [{ "url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ" }],"preferredQuality": "1080p","preferredFormat": "mp4","filenameTemplateParts": ["title", "uploader"]}
Output
Each downloaded video produces a dataset item with the following fields:
{"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ","success": true,"filename": "dQw4w9WgXcQ_Never_Gonna_Give_You_Up_Rick_Astley.mp4","videoId": "dQw4w9WgXcQ","title": "Never Gonna Give You Up","uploader": "Rick Astley","duration": 213,"uploadDate": "20091025","viewCount": 1500000000,"likeCount": 15000000,"format": "mp4","quality": "1080p","s3Url": "https://bucket.s3.region.amazonaws.com/filename.mp4","azureUrl": "https://account.blob.core.windows.net/container/filename.mp4","googleCloudUrl": "https://storage.googleapis.com/bucket/filename.mp4","keyValueStoreUrl": "https://api.apify.com/v2/key-value-stores/{storeId}/records/filename.mp4"}
Supported Formats
Video Formats
- mp4, webm, mkv, avi, mov, flv
Audio Formats
- mp3, aac, ogg, opus, flac, wav, m4a, aiff, alac, mka, vorbis
Notes
- Higher quality videos (>720p) may take longer to download and process
- Audio-only formats will extract audio from the video
- Filenames are automatically sanitized and truncated to 252 characters
- Non-ASCII characters in filenames are transliterated to ASCII