Download Videos from Any Website
Pricing
$9.99/month + usage
Download Videos from Any Website
Download videos from 1000+ websites including YouTube, TikTok, Instagram, Facebook, Twitter/X, Reddit, Vimeo and Twitch. Get direct MP4 download URLs, full metadata, thumbnails and all quality formats. Powered by . RESIDENTIAL proxy included
Pricing
$9.99/month + usage
Rating
0.0
(0)
Developer
Scrape Pilot
Actor stats
0
Bookmarked
3
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
📥 Universal Video Downloader v1 — Powered by (1000+ Sites)
Extract metadata and direct download URLs from 1000+ video platforms — YouTube, TikTok, Instagram, Facebook, Twitter/X, Reddit, Threads, Vimeo, Dailymotion, Twitch, Pinterest, LinkedIn, Snapchat, and many more. Powered by yt‑dlp. No actual file download — just the links you need.
💡 What is Universal Video Downloader?
Universal Video Downloader is a powerful Apify actor that uses `` (the most advanced video extraction tool) to retrieve metadata and direct video/audio URLs from virtually any public video on the web. It does not download files to the Apify server — instead, it returns structured JSON with:
- Video title, original URL, platform name, duration, thumbnail.
- Direct
best_video_url(highest quality mp4 with audio) andbest_audio_url(m4a/mp3). - Full list of available formats (resolution, codec, file size, etc.).
- Uploader info, view/like/comment counts, upload date, tags, and more.
Perfect for archiving, content repurposing, social media monitoring, and building your own video library.
🚀 Key Features
- 1000+ Supported Sites – YouTube, TikTok, Instagram Reels, Facebook Watch, Twitter/X videos, Reddit, Threads, Vimeo, Dailymotion, Twitch clips, Pinterest, LinkedIn, Snapchat, and hundreds more (full list at yt-dlp supported sites).
- No Download, Only Links – Extracts direct
httpsURLs to the best available video and audio streams. Zero storage cost. - Playlist & Channel Support – Extract all videos from a YouTube playlist, channel, or user profile (respecting
max_results). - Quality Selection – Choose
best,1080p,720p,480p, oraudio_only. - Rich Metadata – Title, duration, thumbnail, uploader, view/like/comment counts, upload date, tags, categories, live status.
- Formats Breakdown – Returns up to 10 format variants with resolution, codec, file size, and direct URL.
- Residential Proxy Ready – Avoid geo‑restrictions and IP bans with Apify residential proxies (passed directly to
yt-dlp). - Clean JSON Output – Every field is sanitised and validated.
📦 What Data Can You Extract?
| 🧩 Data Type | 📋 Description |
|---|---|
| 🎬 Basic Info | Title, original URL, webpage URL, video ID, platform (e.g., youtube, tiktok, instagram). |
| ⏱️ Duration | In seconds and formatted string (e.g., 1:23:45). |
| 🖼️ Thumbnail | Direct image URL. |
| 📝 Description | Up to 2000 characters, cleaned. |
| 👤 Uploader | Channel or user name, plus profile URL. |
| 📊 Engagement | View count, like count, comment count, repost count. |
| 📅 Date | Upload date (YYYYMMDD) and formatted version. |
| 🏷️ Tags & Categories | Array of tags and categories. |
| 🔴 Live Info | is_live, was_live, age limit. |
| 📥 Direct Download URLs | best_video_url (mp4 with audio), best_audio_url (m4a/mp3). |
| 📁 All Formats | List of up to 10 formats with resolution, codec, file size, URL. |
| 📀 Playlist Context | For playlist/channel entries: playlist_title, playlist_id. |
⚙️ How It Works
- You provide one or more video, playlist, or channel URLs.
- The actor calls
yt-dlpwith the--skip-downloadflag, retrieving metadata only. - It parses the metadata, selects the best video and audio URLs, and structures the output.
- Results are pushed to the Apify dataset. You can export as JSON, CSV, or Excel.
Important: The actor does not download video files to Apify storage. It only returns URLs. You can use those URLs to download the video on your own infrastructure.
📥 Input Parameters
The actor accepts a JSON object with the following fields:
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
urls | array or string | No | – | List of video, playlist, or channel URLs. You can provide a comma‑ or newline‑separated string. |
url | string | No | – | Single URL (alternative to urls). |
quality | string | No | "best" | Preferred quality: best, 1080p, 720p, 480p, audio_only. |
max_results | integer | No | 20 | Maximum number of videos to return (per URL for playlists, total across multiple URLs). |
proxyConfiguration | object | No | – | Apify proxy configuration. Residential proxies are recommended for geo‑restricted content. |
Example Input (Single Video)
{"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ","quality": "best"}
Example Input (Multiple URLs + Playlist)
{"urls": ["https://www.youtube.com/watch?v=abc123","https://www.tiktok.com/@user/video/123456789","https://www.youtube.com/playlist?list=PLabc123"],"max_results": 30,"quality": "1080p","proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}}
📤 Output Format
Each video is returned as a separate dataset item. For playlists/channels, each entry is a separate item.
Video Object Fields
| Field | Type | Description |
|---|---|---|
title | string | Video title. |
original_url | string | The URL you provided. |
webpage_url | string | Canonical URL of the video. |
platform | string | e.g., youtube, tiktok, instagram. |
video_id | string | Platform‑specific ID. |
duration_seconds | integer | Duration in seconds. |
duration | string | Formatted duration (e.g., 1:23:45). |
thumbnail | string | Thumbnail image URL. |
description | string | Video description (cleaned, up to 2000 chars). |
uploader | string | Channel or user name. |
uploader_url | string | Channel/profile URL. |
upload_date | string | YYYYMMDD format. |
upload_date_formatted | string | YYYY-MM-DD format. |
timestamp | integer | Unix timestamp. |
view_count | integer | Number of views. |
like_count | integer | Number of likes (if available). |
comment_count | integer | Number of comments. |
repost_count | integer | Reposts / shares. |
age_limit | integer | Age restriction (if any). |
is_live | boolean | Currently live. |
was_live | boolean | Was a live stream. |
categories | array | List of categories. |
tags | array | List of tags (max 20). |
best_video_url | string | Direct URL to best mp4 video + audio. |
best_audio_url | string | Direct URL to best audio (m4a/mp3). |
formats_available | array | Up to 10 formats (see below). |
playlist_title | string | (Only for playlist items) Playlist name. |
playlist_id | string | (Only for playlist items) Playlist ID. |
formats_available Item Fields
| Field | Type | Description |
|---|---|---|
format_id | string | yt-dlp format code. |
ext | string | File extension (e.g., mp4, webm). |
resolution | string | e.g., 1920x1080. |
fps | integer | Frames per second. |
vcodec | string | Video codec. |
acodec | string | Audio codec. |
filesize | integer | Size in bytes. |
tbr | integer | Total bitrate (kbps). |
url | string | Direct download URL. |
Example Output (YouTube Video)
[{"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","thumbnail": "https://i.ytimg.com/vi/dQw4w9WgXcQ/maxresdefault.jpg","description": "Rick Astley's official music video for 'Never Gonna Give You Up'...","uploader": "Rick Astley","uploader_url": "https://www.youtube.com/@RickAstleyYT","upload_date": "20091025","upload_date_formatted": "2009-10-25","view_count": 1234567890,"like_count": 1234567,"comment_count": 12345,"is_live": false,"was_live": false,"categories": ["Music"],"tags": ["Rick Astley", "Never Gonna Give You Up", "80s"],"best_video_url": "https://rr4---sn-4g5e6nsz.googlevideo.com/...","best_audio_url": "https://rr4---sn-4g5e6nsz.googlevideo.com/...","formats_available": [{"format_id": "137","ext": "mp4","resolution": "1920x1080","fps": 30,"vcodec": "avc1.640028","acodec": "mp4a.40.2","filesize": 12345678,"tbr": 2500,"url": "https://..."}]}]
Example Output (TikTok Video)
[{"title": "#funny #viral","original_url": "https://www.tiktok.com/@user/video/123456789","platform": "tiktok","duration": "0:15","thumbnail": "https://...","uploader": "@user","view_count": 1000000,"like_count": 50000,"comment_count": 1200,"repost_count": 3000,"best_video_url": "https://...","best_audio_url": null}]
🛠 How to Use on Apify
- Create a task with this actor.
- Provide input – one or more video/playlist/channel URLs.
- Choose quality –
bestis usually fine, but you can limit to1080pto save bandwidth when downloading later. - Configure proxies – optional but recommended for geo‑restricted content or large volumes.
- Run – the actor will extract metadata and push results to the Dataset.
- Export – download as JSON, CSV, or Excel. The
best_video_urlcan be used withwget,curl, or a download manager.
Running via API
curl -X POST "https://api.apify.com/v2/acts/your-username~universal-video-downloader/runs" \-H "Content-Type: application/json" \-H "Authorization: Bearer YOUR_API_TOKEN" \-d '{"urls": ["https://www.youtube.com/watch?v=abc123", "https://www.tiktok.com/@user/video/123"],"quality": "720p"}'
🎯 Use Cases
- Content Archiving – Save direct links to your own videos or public content before it disappears.
- Social Media Monitoring – Extract metadata and download videos from competitors or trending topics.
- Repurposing Content – Get high‑quality video files from TikTok/Instagram to repost on YouTube Shorts.
- Data Analysis – Collect view counts, likes, comments over time.
- Personal Media Server – Automatically fetch new videos from YouTube channels you follow.
- Educational – Download lecture videos for offline study.
❓ Frequently Asked Questions
Q1. Does the actor download the video file?
No. It only returns direct download URLs. You need to download the file separately using wget, curl, or your own script.
Q2. Are the download URLs permanent?
Most platforms (YouTube, Vimeo) generate temporary URLs that expire after a few hours. You should download the file soon after extraction.
Q3. Why do I need residential proxies?
Some platforms (TikTok, Instagram, Twitter) block datacenter IPs. Residential proxies mimic real users and allow reliable access.
Q4. Can I extract from age‑restricted YouTube videos?
Yes, but you may need to provide cookies or authentication (not supported in this actor). For public age‑restricted videos, it usually works without extra steps.
Q5. Does it support YouTube Shorts?
Yes. Shorts are treated as regular videos.
Q6. What happens if a video is private or deleted?
The actor will log a warning and skip that URL. The run continues.
Q7. How many formats are returned?
Up to 10 formats (filtered to exclude HLS/DASH manifests). You can change this by modifying the code.
Q8. What about live streams?
The actor returns metadata and may return a URL that works for the live stream (if available). For ongoing streams, the URL may be short‑lived.
🔍 SEO Keywords
video downloader, yt-dlp actor, YouTube video scraper, TikTok video extractor, Instagram video download, Facebook video URL, Twitter video scraper, Reddit video download, universal video scraper, Apify video tool, direct video URL
URL
🔗 Related Actors
You might also find these useful:
- Facebook Video Downloader (HD/SD + Audio + Metadata)
- Instagram Reels Video Downloader (MP4 + Likes + Captions)
- TikTok Video Downloader (No Watermark, Direct MP4)
- YouTube Video Scraper v2 (Search, Channel, Playlist, Video)