Download from Any Website: YouTube, TikTok, IG & 1000
Pricing
$9.99/month + usage
Download from Any Website: YouTube, TikTok, IG & 1000
The most powerful way to download videos from any website on Apify. Extract direct download URLs, metadata, thumbnails, and audio from YouTube, TikTok, Instagram, Facebook, Twitter/X, Reddit, Vimeo, Twitch, and 1000+ more platforms โ . No browser. No login. Just results.
Pricing
$9.99/month + usage
Rating
0.0
(0)
Developer
Scrape Pilot
Actor stats
0
Bookmarked
5
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
๐ฌ Download Videos from Any Website โ YouTube, TikTok, Instagram & 1000+ Sites
The most powerful way to download videos from any website on Apify. Extract direct download URLs, metadata, thumbnails, and audio from YouTube, TikTok, Instagram, Facebook, Twitter/X, Reddit, Vimeo, Twitch, and 1000+ more platforms โ powered by yt***. No browser. No login. Just results.
๐ Table of Contents
- What Is This Actor?
- Why Use This Tool to Download Videos?
- Supported Platforms
- Use Cases
- Supported Input Types
- Output Fields (Full Reference)
- Input Parameters
- Example Inputs & Outputs
- How Download Videos Extraction Works
- Video Quality Options
- Audio-Only Extraction
- Playlist & Channel Extraction
- Proxy Configuration
- Performance & Rate Limits
- FAQ
- Changelog
- Legal & Terms of Use
๐ What Is This Actor?
Universal Video Downloader is a production-grade Apify actor that lets you download videos from any website โ or more precisely, extract the direct signed download URLs, full metadata, and available quality formats for any publicly accessible video on the internet.
Built on top of yt-dlp, the world's most trusted open-source video extraction engine, this actor supports over 1000 websites out of the box. Provide one or many URLs โ from YouTube, TikTok, Instagram, Facebook, Twitter/X, Reddit, Vimeo, Twitch, Dailymotion, Snapchat, Pinterest, LinkedIn, Threads, and hundreds more โ and receive back clean, structured records with everything you need: title, uploader, view count, thumbnail, duration, and ready-to-use download URLs for every available resolution.
No browser automation. No Playwright overhead. No login required. Just fast, clean, direct extraction that works at scale.
๐ Why Use This Tool to Download Videos?
| Feature | This Actor | Browser Scrapers | Manual Tools | Platform APIs |
|---|---|---|---|---|
| Download videos from 1000+ sites | โ | โ ๏ธ Limited | โ One-by-one | โ Platform-specific |
| Bulk URL processing | โ | โ ๏ธ Slow | โ | โ |
| Direct download URL returned | โ All formats | โ ๏ธ Partial | โ | โ |
| Audio-only extraction | โ | โ | โ ๏ธ | โ |
| Playlist / channel scrape | โ | โ ๏ธ | โ | โ ๏ธ Quota |
| 4K / 1080p quality selection | โ | โ | โ | โ |
| No login required | โ | โ | โ | โ |
| Residential proxy support | โ Built-in | โ ๏ธ Extra setup | โ | โ |
| Metadata (views, likes, tags) | โ Rich | โ ๏ธ Partial | โ | โ Limited |
| Bot detection triggered | โ Never | โ ๏ธ Frequently | โ | โ |
Bottom line: If you need to download videos from multiple platforms at scale โ with full metadata, multiple quality options, and zero logins โ this actor is the fastest and most reliable solution available.
๐ Supported Platforms
This actor can download videos from 1000+ websites via yt-dlp. Key supported platforms include:
๐ฑ Social Media
| Platform | Videos | Reels/Shorts | Stories | Live |
|---|---|---|---|---|
| YouTube | โ | โ Shorts | โ | โ |
| TikTok | โ | โ | โ | โ |
| โ | โ Reels | โ | โ | |
| โ | โ | โ | โ | |
| Twitter / X | โ | โ | โ | โ |
| โ | โ | โ | โ | |
| Threads | โ | โ | โ | โ |
| Snapchat | โ | โ | โ | โ |
| โ | โ | โ | โ | |
| โ | โ | โ | โ |
๐ฅ Video Hosting
| Platform | HD | 4K | Live | Subtitles |
|---|---|---|---|---|
| Vimeo | โ | โ | โ | โ |
| Dailymotion | โ | โ | โ | โ |
| Twitch | โ | โ | โ | โ |
| Rumble | โ | โ | โ | โ |
| Odysee / LBRY | โ | โ | โ | โ |
| Bitchute | โ | โ | โ | โ |
๐ต Music & Audio
Bandcamp, SoundCloud, Mixcloud, and many more โ extract audio streams directly.
๐บ News & Media
CNN, BBC, NBC, Fox News, The Guardian, and major broadcast network video players.
For the complete list of 1000+ supported sites, visit: yt-dlp supported sites
๐ฏ Use Cases
๐ฅ Content Archiving & Backup
- Download videos from channels or playlists before they are deleted or made private
- Archive news broadcast clips, public interest statements, or viral moments with timestamped metadata
- Preserve educational content from online courses and tutorial channels at scale
๐ค AI & Machine Learning Datasets
- Extract download URLs for thousands of videos to build training datasets for video AI models
- Collect video metadata (duration, views, tags, categories) for content classification systems
- Download audio streams from videos for speech recognition, music analysis, or sentiment NLP
๐ Social Media Research & Analytics
- Download videos and metadata from TikTok, Instagram, and Twitter/X for academic research
- Track view count and engagement metrics across platforms for viral content analysis
- Collect thumbnail URLs for visual trend analysis across social media platforms
๐ Education & E-Learning
- Build automated pipelines to download videos from online courses for offline access
- Extract lecture recordings from Vimeo, Dailymotion, or private video platforms
- Collect educational video metadata for learning management system integrations
๐ ๏ธ Developer Integrations
- Integrate video download URLs into your own app without hitting platform API rate limits
- Build a multi-platform video player backend that resolves stream URLs on demand
- Create automated content pipelines that monitor channels and download new uploads
๐ฐ Journalism & Evidence Preservation
- Download videos from social media as evidence for investigative journalism
- Preserve public statements, interviews, and news clips with full metadata records
- Archive content from platforms that may remove it after reporting
๐ Supported Input Types
Single Video URL
Provide any direct video URL from any supported platform.
https://www.youtube.com/watch?v=dQw4w9WgXcQhttps://www.tiktok.com/@username/video/1234567890https://www.instagram.com/reel/ABC123/https://twitter.com/username/status/1234567890https://vimeo.com/123456789https://www.reddit.com/r/sub/comments/abc/title/https://www.facebook.com/watch/?v=1234567890
Multiple URLs (Batch)
Pass a list of URLs to download videos from multiple platforms in one run.
{"urls": ["https://www.youtube.com/watch?v=VIDEO1","https://www.tiktok.com/@user/video/VIDEO2","https://vimeo.com/123456789"]}
YouTube Playlist or Channel
Pass a playlist or channel URL to extract up to max_results videos from it.
https://www.youtube.com/playlist?list=PLxxxxxxxxxxxxxxxxxxhttps://www.youtube.com/@ChannelHandlehttps://www.youtube.com/channel/UCxxxxxxxxxxxxxxxxxxhttps://www.twitch.tv/username/videos
๐ Output Fields (Full Reference)
Every record returned when you download videos with this actor contains:
๐ฌ Core Video Fields
| Field | Type | Description | Example |
|---|---|---|---|
title | string | Full video title (max 500 chars) | "Never Gonna Give You Up" |
original_url | string | The URL you provided as input | "https://youtu.be/dQw4w9WgXcQ" |
webpage_url | string | Canonical URL for the video | "https://www.youtube.com/watch?v=..." |
platform | string | Source platform name (yt-dlp extractor) | "Youtube", "TikTok", "Vimeo" |
video_id | string | Platform-specific video ID | "dQw4w9WgXcQ" |
duration_seconds | integer | Duration in seconds | 212 |
duration | string | Human-readable duration | "3:32" |
upload_date | string | Raw upload date (YYYYMMDD) | "20091025" |
upload_date_formatted | string | ISO formatted date | "2009-10-25" |
is_live | boolean | Whether the video is a live stream | false |
was_live | boolean | Whether this was a past live stream | false |
age_limit | integer | Age restriction (0 = none, 18 = adult) | 0 |
๐ค Uploader Fields
| Field | Type | Description | Example |
|---|---|---|---|
uploader | string | Channel or creator name | "Rick Astley" |
uploader_url | string | URL to uploader's channel/profile | "https://www.youtube.com/@RickAstley" |
๐ Engagement Fields
| Field | Type | Description | Example |
|---|---|---|---|
view_count | integer | Total views | 1450000000 |
like_count | integer | Total likes | 16000000 |
comment_count | integer | Total comments | 850000 |
repost_count | integer | Shares/reposts (where available) | 45000 |
๐ผ๏ธ Media Fields
| Field | Type | Description | Example |
|---|---|---|---|
thumbnail | string | Best thumbnail URL | "https://i.ytimg.com/vi/.../maxresdefault.jpg" |
description | string | Video description (max 2000 chars) | "The official video for..." |
tags | array | Video tags (max 20) | ["pop", "80s", "music"] |
categories | array | Platform categories | ["Music"] |
โฌ๏ธ Download URL Fields
| Field | Type | Description |
|---|---|---|
best_video_url | string | Best combined video+audio stream URL (highest resolution available) |
best_audio_url | string | Best audio-only stream URL (highest bitrate available) |
formats_available | array | Up to 10 format objects with individual download URLs per quality level |
๐๏ธ Format Object (inside formats_available)
Each entry in formats_available lets you download videos at a specific quality:
{"format_id": "137","ext": "mp4","resolution": "1920x1080","fps": 30,"vcodec": "avc1.640028","acodec": "none","filesize": 156000000,"tbr": 3120.5,"url": "https://rr3---sn-xxxx.googlevideo.com/..."}
โ๏ธ Input Parameters
{"urls": ["https://www.youtube.com/watch?v=dQw4w9WgXcQ"],"url": "","quality": "best","max_results": 20,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}}
| Parameter | Type | Default | Description |
|---|---|---|---|
urls | array or string | [] | List of video URLs to download videos from (one URL per item, or newline-separated string) |
url | string | "" | Single video URL shortcut โ added to urls automatically |
quality | string | "best" | Preferred quality: "best", "1080p", "720p", "480p", "audio_only" |
max_results | integer | 20 | Max videos to extract per playlist or channel URL |
proxyConfiguration | object | Residential | Apify proxy config โ recommended for TikTok, Instagram, and high-volume runs |
Note: When both
urlandurlsare provided,urlis prepended to theurlslist. All are processed in order.
๐ฆ Example Inputs & Outputs
Example 1: Download Videos โ Single YouTube Video
Input:
{"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ","quality": "best"}
Output:
{"title": "Rick Astley - Never Gonna Give You Up (Official Music Video)","original_url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ","webpage_url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ","platform": "Youtube","video_id": "dQw4w9WgXcQ","duration_seconds": 212,"duration": "3:32","upload_date_formatted": "2009-10-25","uploader": "Rick Astley","uploader_url": "https://www.youtube.com/@RickAstleyVEVO","view_count": 1450000000,"like_count": 16000000,"thumbnail": "https://i.ytimg.com/vi/dQw4w9WgXcQ/maxresdefault.jpg","description": "The official video for 'Never Gonna Give You Up' by Rick Astley...","tags": ["Rick Astley", "Never Gonna Give You Up", "OfficialMusicVideo"],"categories": ["Music"],"best_video_url": "https://rr3---sn-xxxx.googlevideo.com/videoplayback?...","best_audio_url": "https://rr3---sn-xxxx.googlevideo.com/videoplayback?...","formats_available": [{"format_id": "137","ext": "mp4","resolution": "1920x1080","fps": 30,"vcodec": "avc1.640028","acodec": "none","filesize": 156000000,"url": "https://..."},{"format_id": "22","ext": "mp4","resolution": "1280x720","fps": 30,"vcodec": "avc1.64001F","acodec": "mp4a.40.2","filesize": 78000000,"url": "https://..."}]}
Example 2: Download Videos โ Multi-Platform Batch
Input:
{"urls": ["https://www.tiktok.com/@charlidamelio/video/7123456789012345678","https://vimeo.com/123456789","https://twitter.com/username/status/1234567890123456789"],"quality": "720p"}
Output: 3 separate records โ one per platform โ each with platform-specific metadata, thumbnail, and best_video_url for direct download.
Example 3: Download Videos โ YouTube Playlist
Input:
{"url": "https://www.youtube.com/playlist?list=PLbpi6ZahtOH6Ar_3GPy3workS_ij8","max_results": 25,"quality": "1080p"}
Output: Up to 25 video records from the playlist, each with title, video ID, duration, thumbnail, uploader, and download URL.
Example 4: Download Videos โ Audio Only (Podcast/Music)
Input:
{"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ","quality": "audio_only"}
Output: Full metadata record with best_audio_url pointing to the highest-bitrate M4A/WebM audio stream โ ready for transcription, music analysis, or podcast archiving.
โ๏ธ How Download Videos Extraction Works
This actor uses a metadata-first approach โ it never actually downloads the video file to the server. Instead, it extracts the signed direct URLs that point to the video hosted on the platform's CDN. Here is exactly how it works:
Step 1 โ URL Detection
The actor automatically detects whether each URL is a single video, a playlist, or a channel page. YouTube playlists, Twitch VOD archives, and channel pages are all handled with the correct extraction mode.
Step 2 โ yt-dlp Extraction
yt-dlp communicates directly with the platform's internal API or web endpoint โ no browser, no Playwright, no Puppeteer. It negotiates the video manifest, deciphers any obfuscation, and retrieves the full list of available format streams with their signed URLs.
Step 3 โ Format Selection
Based on your quality preference, the actor selects the best matching format. For "best", it prioritizes combined MP4 streams (video+audio in one file). For high resolutions like "1080p" or "4K", it returns the video-only and audio-only streams separately for maximum quality.
Step 4 โ Metadata Enrichment
All available metadata is extracted and cleaned: title, uploader, view count, like count, comment count, tags, categories, description, thumbnail, upload date, duration, and more โ unified into a single clean record.
Step 5 โ Output
Results are pushed to the Apify dataset and saved as results.json in the Key-Value Store. Every record contains best_video_url and best_audio_url as ready-to-use direct download links.
โ ๏ธ Important: Direct download URLs are signed and time-limited by the hosting platform (typically valid for 6โ12 hours). Use them immediately or re-run the actor to refresh them.
๐ฌ Video Quality Options
Control the output quality when you download videos using the quality parameter:
| Value | Description | Format Strategy | Best For |
|---|---|---|---|
"best" | Highest available combined stream | bestvideo+bestaudio/best | General use, recommended |
"1080p" | Full HD (max 1080p) | bestvideo[height<=1080]+bestaudio | HD archiving |
"720p" | HD (max 720p) | bestvideo[height<=720]+bestaudio | Balanced quality/size |
"480p" | SD (max 480p) | bestvideo[height<=480]+bestaudio | Mobile, low bandwidth |
"audio_only" | Audio-only stream | bestaudio[ext=m4a]/bestaudio | Podcast, music, transcription |
Tip: Even when you select a specific quality, the
formats_availablearray always contains all available resolutions so you can choose programmatically from the output.
๐ต Audio-Only Extraction
When you need to download videos purely for their audio content, set quality: "audio_only". The actor returns:
best_audio_urlโ direct URL to the highest-bitrate audio stream (M4A, WebM, or Opus format)- All other metadata fields (title, uploader, duration, thumbnail, etc.)
Common audio extraction use cases:
- Podcast archiving from YouTube
- Music extraction for personal listening
- Speech-to-text transcription pipelines
- Sentiment analysis on spoken content
- Language learning audio datasets
To convert the audio stream to MP3 using FFmpeg after downloading:
$ffmpeg -i "audio_stream_url" -codec:a libmp3lame -qscale:a 2 output.mp3
๐ Playlist & Channel Extraction
When the provided URL is a playlist or channel, the actor runs in flat extraction mode for speed:
What You Get Per Item
titleโ video titlevideo_idโ platform video IDwebpage_urlโ direct URL to the video (use this to re-run for full metadata + download URL)platformโ source platformdurationโ video durationthumbnailโ thumbnail URLuploaderโ creator nameview_countโ view count (where available in flat mode)upload_dateโ upload dateplaylist_titleโ parent playlist or channel nameplaylist_idโ playlist or channel ID
Note on Flat Mode
Flat extraction returns lightweight records without best_video_url or best_audio_url. This is by design for speed โ extracting full download URLs for 50+ videos sequentially would be very slow. Instead:
- Use flat/playlist mode to get the list of
webpage_urlvalues - Feed those URLs back into this actor (or another run) with
quality: "best"to download videos with full format data
This two-step approach is the most efficient pattern for large channel or playlist processing.
๐ Proxy Configuration
Recommended Setup
{"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}}
When Is a Proxy Required?
- TikTok โ residential proxy strongly recommended; TikTok blocks datacenter IPs aggressively
- Instagram โ residential proxy recommended for Reels and video pages
- High-volume runs โ any run with 50+ videos benefits from proxy rotation
- Geo-restricted content โ use a proxy in the appropriate region to access region-locked videos
When Is Proxy Optional?
- YouTube โ yt-dlp typically works without a proxy for YouTube at moderate volumes
- Vimeo, Dailymotion, Reddit โ generally accessible without proxy
- Single video runs โ proxy usually not needed for 1โ5 videos from major platforms
No Proxy Setup
{"proxyConfiguration": {"useApifyProxy": false}}
Leave proxy disabled for low-volume runs on YouTube, Vimeo, or Reddit to save proxy credits.
โก Performance & Rate Limits
Speed Benchmarks (with residential proxy)
| Mode | Count | Estimated Time |
|---|---|---|
| Single video (any platform) | 1 | ~5โ15 seconds |
| Multi-platform batch | 5 | ~30โ60 seconds |
| Multi-platform batch | 20 | ~2โ4 minutes |
| YouTube playlist (flat) | 50 | ~30โ60 seconds |
| YouTube playlist (full metadata) | 20 | ~2โ4 minutes |
| TikTok batch (with proxy) | 10 | ~1โ2 minutes |
Reliability Features
- 3 automatic retries with backoff on failed requests
- 30-second socket timeout to prevent hanging on slow platforms
- Graceful error handling โ private, deleted, or age-restricted videos are skipped with a warning instead of crashing the run
- Per-URL isolation โ a failure on one URL never prevents other URLs from being processed
Concurrent Runs
Multiple instances of this actor can run simultaneously โ for example, one run per platform or one run per playlist โ without conflicts.
โ FAQ
Q: Does this actually download the video file to Apify's servers? A: No. The actor extracts and returns the direct signed URL for the video hosted on the platform's CDN. The video file itself is never downloaded to Apify. You use the URL to download videos to your own system.
Q: How long are the download URLs valid? A: Signed video URLs typically expire in 6โ12 hours depending on the platform. Use them immediately after the run, or re-run the actor to generate fresh URLs.
Q: Why is best_video_url returning a video-only stream (no audio)?
A: For high-resolution videos (1080p+), YouTube and some other platforms serve video and audio as separate streams. Use best_video_url for the video track and best_audio_url for the audio, then merge them with FFmpeg:
$ffmpeg -i video.mp4 -i audio.m4a -c:v copy -c:a aac output_merged.mp4
Q: Can I download videos from private Instagram or TikTok accounts? A: No. This actor only works with publicly accessible video content. Private accounts and login-gated content require cookies/authentication, which is not supported.
Q: TikTok extraction is failing โ what should I do? A: Enable residential proxy. TikTok is one of the most aggressive platforms at blocking datacenter IPs. With a residential proxy, TikTok extraction works reliably.
Q: Can I download videos in 4K?
A: Yes โ for platforms that offer 4K (like YouTube). Set quality: "best" and the formats_available array will include 4K streams where available. The best_video_url will point to the highest resolution available.
Q: Does this work for live streams? A: Yes. For active live streams, yt-dlp returns the HLS/DASH stream manifest URL. Note that live stream URLs work differently โ they are not pre-recorded file URLs.
Q: Can I extract subtitles? A: The current version does not return subtitle files. Subtitle availability can be added in a future version.
Q: What happens if a URL is deleted or private? A: The actor logs a warning and skips that URL gracefully, continuing to process all remaining URLs in the batch.
Q: Is there a limit on how many URLs I can process per run? A: No hard limit. For very large batches (500+ URLs), consider splitting into multiple runs for better reliability and speed.
๐ Changelog
v1.0.0 (Current)
- โ yt-dlp integration supporting 1000+ platforms to download videos
- โ Single video, playlist, and channel extraction modes
- โ Multi-URL batch processing in one run
- โ Quality selection: best / 1080p / 720p / 480p / audio_only
- โ
best_video_urlandbest_audio_urlin every record - โ
formats_availablearray with up to 10 quality options per video - โ Full metadata: views, likes, comments, tags, categories, description
- โ Auto URL type detection (video / playlist / channel)
- โ Residential proxy support for TikTok, Instagram, and others
- โ Graceful handling of private, deleted, and age-restricted content
- โ
Results exported to dataset +
results.jsonin Key-Value Store
โ๏ธ Legal & Terms of Use
This actor extracts publicly accessible video metadata and direct stream URLs in the same way that a regular user accesses video content through a browser.
Please note:
- This tool is intended for research, archiving, education, journalism, and personal use
- Use this tool only to download videos that you have the right to access and store
- Redistributing copyrighted video content without authorization may violate copyright law
- Respect each platform's Terms of Service โ do not use this tool to bypass paywalls or access private content
- Do not use extracted content for unauthorized commercial redistribution
- The actor developer is not responsible for how users choose to use the extracted URLs
Fair Use: Downloading videos for personal backup, academic research, journalism, or evidence preservation is generally considered fair use in many jurisdictions. Always consult a legal professional for your specific use case.
๐ค Support & Feedback
- Bug report? Open a GitHub issue or contact us via the Apify actor page
- Feature request? Suggest it in the Apify Community forum
- Works great? Please leave a โญ review on the Apify Store!
Built with โค๏ธ on Apify ยท Powered by yt-dlp ยท Download Videos from 1000+ Websites
The fastest, most reliable way to download videos from any platform โ no login, no browser, no limits