# Video Downloader Online - YouTube, TikTok, IG & 1000+ Sites (`convertfleetdotonline/video-downloader`) Actor

Online video downloader for 1000+ sites - YouTube, TikTok, Instagram, Facebook, X (Twitter), Reddit, Pinterest and Vimeo. Get direct MP4 and audio URLs up to 4K. Bulk URLs, no login, no API key.

- **URL**: https://apify.com/convertfleetdotonline/video-downloader.md
- **Developed by:** [Hasnain Nisar](https://apify.com/convertfleetdotonline) (community)
- **Categories:** Videos, Social media
- **Stats:** 13 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

$6.00 / 1,000 video resolveds

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## Universal Video Downloader - Online Video Downloader for YouTube, TikTok, Instagram, Facebook, X (Twitter) & 1000+ Sites

**An all-in-one online video downloader that returns direct downloadable URLs for video and audio from any of 1,000+ supported sites.** Drop in any video URL — YouTube, TikTok, Instagram, Facebook, X (Twitter), Reddit, Vimeo, Twitch, Dailymotion — and get back a clean list of MP4, WebM and audio download links sorted by quality, up to 4K. Use it as a universal Twitter / X video downloader, a 4K video downloader, or a bulk online video downloader across every platform.

### What this Video Downloader does

For every URL you give it, the actor returns:

- **Best combined download URL** (video + audio in a single MP4)
- **Best video-only URL** (highest resolution available, no audio)
- **Best audio URL** (highest-bitrate MP3/M4A/Opus)
- A full list of every available format with resolution, bitrate, file size, and codec
- Title, thumbnail, duration, uploader, and platform metadata

You can hand the URLs to any HTTP client, browser, ffmpeg pipeline, or download manager. **No API key required.**

### Supported sites

The same engine that powers `yt-dlp` (1,800+ extractors). The most popular include:

- YouTube, YouTube Shorts, YouTube Music
- TikTok
- Instagram (Reels, Stories, IGTV, posts)
- Facebook (videos, reels, watch)
- X / Twitter
- Reddit
- Vimeo
- Twitch (clips, VODs)
- Dailymotion
- Snapchat (public spotlight)
- Bilibili
- LinkedIn
- Streamable
- ... and 1,000+ more

### Why use this Universal Video Downloader?

- **One actor, every platform** — stop juggling site-specific tools
- **No watermarks** — formats come straight from the source CDN
- **Auto-quality selection** — best combined / video-only / audio-only resolved for you
- **Bulk downloading** — pass an array of URLs, get back every format URL
- **No login or cookies needed** for public videos
- **Direct CDN URLs** — pipe straight into ffmpeg, S3, or your client

### Use cases

- **Content archival** — back up your own videos across platforms
- **Cross-posting workflows** — fetch from TikTok, repost to YouTube Shorts
- **Audio-to-podcast pipelines** — pull MP3 audio from interviews and lectures
- **Video research** — bulk-download for analysis, transcription, or training
- **Creator tooling** — power your own download UI without rebuilding yt-dlp

### Input

```json
{
    "videoUrls": [
        "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
        "https://www.tiktok.com/@user/video/123",
        "https://www.instagram.com/reel/abc/",
        "https://www.facebook.com/watch?v=123",
        "https://x.com/user/status/123"
    ]
}
```

### Output

Each dataset record:

```json
{
    "title": "Video title",
    "thumbnail": "https://…",
    "duration": 213,
    "duration_string": "3:33",
    "uploader": "Channel name",
    "platform": "Youtube",
    "audio_url": "https://… (best audio direct URL)",
    "formats": [
        {
            "format_id": "137",
            "type": "video",
            "ext": "mp4",
            "height": 1080,
            "quality": "1080p",
            "filesize": 31456789,
            "has_audio": false,
            "url": "https://…"
        },
        {
            "format_id": "140",
            "type": "audio",
            "ext": "m4a",
            "quality": "128kbps",
            "filesize": 3145678,
            "url": "https://…"
        }
    ]
}
```

### How it works

The actor uses [yt-dlp](https://github.com/yt-dlp/yt-dlp) — the open-source standard for video URL extraction. Every supported platform is handled by a maintained extractor that mirrors how the official browser player works. You get the same direct CDN URLs the platform itself serves to its users.

### Cost & speed

Resolving format URLs is fast — typically 2–5 seconds per URL — and uses minimal memory (under 256 MB). You only pay for compute time.

### Related actors

- **YouTube Downloader** — YouTube-only, optimised prefill
- **Instagram Downloader** — Instagram Reels, Stories, IGTV
- **TikTok Downloader** — TikTok videos with no watermark
- **Facebook Downloader** — Facebook videos, reels, watch
- **Snapchat Downloader** — Snapchat Spotlight public videos

### FAQ

**Q: Which sites does this video downloader support?**
It runs the same engine as `yt-dlp` (1,800+ extractors, 1,000+ sites) — including YouTube, TikTok, Instagram, Facebook, X (Twitter), Reddit, Vimeo, Twitch, Dailymotion, Snapchat, Bilibili, LinkedIn, Streamable, and many more.

**Q: Can I download 4K video?**
Yes, where the source offers it. The actor lists every available format and resolves the best video-only stream, so you can pick the 4K (2160p) entry when a platform provides it.

**Q: How do I download a Twitter / X video?**
Paste the tweet / status URL (e.g. `https://x.com/user/status/123`) and the actor returns direct MP4 and audio URLs sorted by quality — download them with `curl`, `wget`, `ffmpeg`, or any HTTP client.

**Q: Is there a free online video downloader for multiple platforms?**
This actor handles 1,000+ platforms in one place, needs no API key or login for public videos, and runs on Apify's usage-based pricing with a free tier to get started.

**Q: Are downloaded URLs permanent?**
No. Most platforms sign URLs with a time-limited token (typically 6–24 hours). Use them quickly or re-resolve.

**Q: Does the actor download the actual file?**
No — it returns the direct URL. You handle the download with `curl`, `wget`, `ffmpeg`, or any HTTP client. This keeps the actor cheap and fast, and lets you stream straight into your storage.

**Q: Does it strip the TikTok watermark?**
TikTok URLs returned are the source files; whether they include a watermark depends on TikTok's current behavior, which varies.

**Q: Does it work for private or login-walled videos?**
No. Only public videos are supported.

**Q: Is this legal?**
You are responsible for complying with the source platform's Terms of Service and your local copyright laws. Personal-use, fair-use, and downloading your own content are typically fine — re-uploading copyrighted material is not.

# Actor input Schema

## `videoUrls` (type: `array`):

One or more video URLs from YouTube, TikTok, Instagram, Facebook, X (Twitter), Reddit, Vimeo, Twitch, or any of the 1000+ sites yt-dlp supports.

## `proxyConfiguration` (type: `object`):

Routes yt-dlp through Apify Proxy. Residential proxies bypass platform IP blocks.

## `cookies` (type: `string`):

Netscape-format cookies.txt content. Required for private/age-gated posts. Export with 'Get cookies.txt' browser extension.

## Actor input object example

```json
{
  "videoUrls": [
    "https://www.youtube.com/watch?v=dQw4w9WgXcQ"
  ],
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  },
  "cookies": ""
}
```

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "videoUrls": [
        "https://www.youtube.com/watch?v=dQw4w9WgXcQ"
    ],
    "proxyConfiguration": {
        "useApifyProxy": true,
        "apifyProxyGroups": [
            "RESIDENTIAL"
        ]
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("convertfleetdotonline/video-downloader").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "videoUrls": ["https://www.youtube.com/watch?v=dQw4w9WgXcQ"],
    "proxyConfiguration": {
        "useApifyProxy": True,
        "apifyProxyGroups": ["RESIDENTIAL"],
    },
}

# Run the Actor and wait for it to finish
run = client.actor("convertfleetdotonline/video-downloader").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "videoUrls": [
    "https://www.youtube.com/watch?v=dQw4w9WgXcQ"
  ],
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  }
}' |
apify call convertfleetdotonline/video-downloader --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=convertfleetdotonline/video-downloader",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/acts/kgk15uTtxZHxWs5f2/builds/iUrNwzK0kLipZedJI/openapi.json
