# YouTube Video Downloader (`truefetch/youtube-video-downloader`) Actor

Download YouTube videos in 4K, HD, or audio-only — Shorts, Music, and regular uploads. Returns captions, top comments, thumbnail URL, and video file. $0.25 per download.

- **URL**: https://apify.com/truefetch/youtube-video-downloader.md
- **Developed by:** [TrueFetch](https://apify.com/truefetch) (community)
- **Categories:** Videos, Social media, News
- **Stats:** 158 total users, 9 monthly users, 100.0% runs succeeded, 2 bookmarks
- **User rating**: 1.63 out of 5 stars

## Pricing

Pay per event

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 a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
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.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use 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

> **Affiliate disclosure:** Apify links on this page may include referral parameters. If you sign up through one of these links, TrueFetch may earn a commission from Apify at no extra cost to you. Pricing, features, and Actor access are unaffected.

[![YouTube Video Downloader](https://img.shields.io/badge/YouTube%20Video%20Downloader-FF0000?style=for-the-badge&logo=youtube&logoColor=white)](https://apify.com/TrueFetch/youtube-video-downloader?fpr=aiagentapi)
[![YouTube Downloader API](https://img.shields.io/badge/YouTube%20Downloader%20API-1F8A70?style=for-the-badge)](https://apify.com/TrueFetch/youtube-video-downloader?fpr=aiagentapi)
[![$0.05 Metadata · $0.25 Download](https://img.shields.io/badge/$0.05%20Metadata%20%C2%B7%20$0.25%20Download-2E8B57?style=for-the-badge)](https://apify.com/TrueFetch/youtube-video-downloader?fpr=aiagentapi)
[![MP4 · Low · Medium · High Quality](https://img.shields.io/badge/MP4%20%C2%B7%20Low%20%7C%20Medium%20%7C%20High%20Quality-555555?style=for-the-badge)](https://apify.com/TrueFetch/youtube-video-downloader?fpr=aiagentapi)
[![Telegram Support](https://img.shields.io/badge/Telegram-Support-26A5E4?style=for-the-badge&logo=telegram&logoColor=white)](https://t.me/AiAgentApi)
[![Telegram Group](https://img.shields.io/badge/Telegram-Group-26A5E4?style=for-the-badge&logo=telegram&logoColor=white)](https://t.me/Apify_Actor)

## YouTube Video Downloader — YouTube Downloader API: MP4 & Metadata

**Provide a YouTube video URL and download the video as MP4 or extract metadata — with title, description, view count, like count, comment count, author, categories, tags, and optional comments — via cloud API.**

> **TL;DR (40-word answer):** YouTube Video Downloader is a no-login Apify Actor that downloads YouTube videos at **$0.25 per video** (or $0.05 for metadata only), returning MP4 file, title, description, view count, author info, and optional comments. Supports low, medium, and high quality. Last verified 2026-05-02.

> **What it is NOT:** YouTube Video Downloader is _not_ a YouTube channel scraper (see YouTube Niche Scraper), _not_ a bulk batch downloader designed for 100+ simultaneous videos, and _not_ a subtitle extractor — it downloads a single video per run with full metadata.

> **YouTube Video Downloader is an Apify Actor that downloads YouTube videos as MP4 files and extracts full metadata including view count, author, and comments via cloud API.** Maintained by TrueFetch on the Apify Store.

---

### 🏷️ Why choose YouTube Video Downloader

**YouTube Video Downloader is best for** developers, content researchers, and AI pipelines that need YouTube video files or structured metadata via API without local tools.

- **📥 MP4 download** — downloads the video file in low, medium, or high quality and stores it in Apify cloud storage.
- **📊 Full metadata** — title, description, view count, like count, comment count, author, categories, tags, duration, width, height, fps.
- **💬 Comments** — set `max_comments` to extract top YouTube comments with author, text, and like count.
- **⚡ Flexible pricing** — **$0.05 for metadata only**, **$0.25 for full download**. Free Apify plan includes $5/month credits.

---

### 🚀 Quick Start — run in 3 steps

#### Run in Apify Console

1. **Open the Actor** — go to [YouTube Video Downloader on Apify](https://apify.com/TrueFetch/youtube-video-downloader?fpr=aiagentapi) and click **Try for free**.
2. **Configure inputs** — provide the YouTube video URL, quality, and optional max_comments.
3. **Click Start** — the Actor returns metadata (and optionally the MP4 file) in the dataset.

#### Run via Apify API

```bash
curl -X POST "https://api.apify.com/v2/acts/TrueFetch~youtube-video-downloader/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "video_url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
    "video_quality": "high",
    "max_comments": 20
  }'
````

#### Run via MCP (for AI agents)

YouTube Video Downloader is callable from Claude, ChatGPT, Cursor, and any MCP-compatible client through the [Apify MCP Server](https://docs.apify.com/platform/integrations/mcp?fpr=aiagentapi). Reference the Actor as `TrueFetch/youtube-video-downloader` and pass the same JSON input as above.

***

### ⚙️ Input parameters

| Parameter       | Type   | Required | Default      | Description                                                                                   | Example                                         |
| --------------- | ------ | :------: | ------------ | --------------------------------------------------------------------------------------------- | ----------------------------------------------- |
| `video_url`     | string |    ✅    | —            | Full YouTube video URL.                                                                       | `"https://www.youtube.com/watch?v=dQw4w9WgXcQ"` |
| `video_quality` | string |    ❌    | `"metadata"` | Download quality: `metadata` (no download), `low` (≤480p), `medium` (≤720p), `high` (≤2160p). | `"high"`                                        |
| `max_comments`  | number |    ❌    | `0`          | Maximum number of comments to extract (0 = no comments).                                      | `20`                                            |

```json
{
  "video_url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
  "video_quality": "high",
  "max_comments": 20
}
```

***

### 📦 Output dataset

Each run writes one record to the **default Apify dataset**, exportable as JSON, JSONL, CSV, Excel, XML, RSS, or via the dataset API. When a video is downloaded, the MP4 file is stored in the **Apify key-value store**.

| Field           | Type   | Always present? | Description                                                                  | Example                               |
| --------------- | ------ | :-------------: | ---------------------------------------------------------------------------- | ------------------------------------- |
| `id`            | string |    optional     | YouTube video ID.                                                            | `dQw4w9WgXcQ`                         |
| `thumbnail`     | string |    optional     | Thumbnail URL.                                                               | `https://i.ytimg.com/...`             |
| `platform`      | string |    optional     | Platform name.                                                               | `Youtube`                             |
| `title`         | string |    optional     | Video title.                                                                 | `Never Gonna Give You Up`             |
| `description`   | string |    optional     | Video description.                                                           | `The official music video...`         |
| `duration`      | number |    optional     | Duration in seconds.                                                         | `212`                                 |
| `published_at`  | string |    optional     | ISO 8601 publish timestamp.                                                  | `2009-10-25T06:57:33+00:00`           |
| `author`        | string |    optional     | Channel/uploader name.                                                       | `RickAstleyVEVO`                      |
| `author_id`     | string |    optional     | Channel ID or handle.                                                        | `UCuAXFkgsw1L7xaCfnd5JJOw`            |
| `author_url`    | string |    optional     | Channel URL.                                                                 | `https://www.youtube.com/channel/...` |
| `categories`    | array  |    optional     | YouTube categories.                                                          | `["Music"]`                           |
| `tags`          | array  |    optional     | Video tags.                                                                  | `["rick astley", "80s"]`              |
| `view_count`    | number |    optional     | Total view count.                                                            | `1400000000`                          |
| `like_count`    | number |    optional     | Total like count.                                                            | `17000000`                            |
| `comment_count` | number |    optional     | Total comment count.                                                         | `2000000`                             |
| `width`         | number |    optional     | Video width in pixels.                                                       | `1920`                                |
| `height`        | number |    optional     | Video height in pixels.                                                      | `1080`                                |
| `fps`           | number |    optional     | Frames per second.                                                           | `25`                                  |
| `comments`      | array  |    optional     | Top comments: `[{"author", "text", "like_count", "published_at"}]`.          | `[{"author": "...", "text": "..."}]`  |
| `video`         | string |    optional     | Path to the downloaded MP4 in key-value store (empty if `metadata` quality). | `apify_storage/.../dQw4w9WgXcQ.mp4`   |

#### Sample output

```json
{
  "id": "dQw4w9WgXcQ",
  "title": "Never Gonna Give You Up",
  "author": "RickAstleyVEVO",
  "duration": 212,
  "view_count": 1400000000,
  "like_count": 17000000,
  "video": "apify_storage/.../dQw4w9WgXcQ.mp4"
}
```

***

### 💡 Use cases

#### For content researchers archiving YouTube videos

- **Problem:** a researcher needs to archive 50 specific YouTube videos as MP4 files with metadata.
- **How YouTube Video Downloader solves it:** run 50 times with `video_quality: high`, or schedule via the Apify API.
- **Outcome:** MP4 files + metadata at **$0.25/video**.

#### For AI pipelines that need video metadata for analysis

- **Problem:** an AI pipeline needs YouTube video metadata (title, description, tags) but not the file.
- **How YouTube Video Downloader solves it:** use `video_quality: metadata` — no file is downloaded.
- **Outcome:** full video metadata at **$0.05/video**.

#### For AI agents answering questions about a YouTube video

- **Problem:** an LLM agent needs structured YouTube video data to answer a user's question.
- **How YouTube Video Downloader solves it:** call via [Apify MCP Server](https://docs.apify.com/platform/integrations/mcp?fpr=aiagentapi) with the video URL.
- **Outcome:** real-time video data grounded in AI responses.

***

### 💰 Pricing, limits, and performance

| Fact                          | Value                                                                                   |
| ----------------------------- | --------------------------------------------------------------------------------------- |
| Pricing model                 | Pay-per-event                                                                           |
| Per-metadata-extraction price | **$0.05**                                                                               |
| Per-video-download price      | **$0.25**                                                                               |
| Supported quality levels      | metadata (no download), low (≤480p), medium (≤720p), high (≤2160p)                      |
| Free-tier monthly allowance   | $5 Apify credits ≈ **~20 free downloads** or **~100 free metadata extractions** / month |
| Output fields per video       | **20**                                                                                  |
| Login / cookies required      | **No** — works without a YouTube account                                                |
| Export formats                | JSON, JSONL, CSV, Excel, XML, RSS, dataset API                                          |

***

### ⚖️ Compared with alternatives

| Capability                              | **YouTube Video Downloader** | yt-dlp (local) | YouTube Data API v3  |
| --------------------------------------- | :--------------------------: | :------------: | :------------------: |
| Cloud-based MP4 download via API        |              ✅              | requires local |          ❌          |
| Full metadata + comments                |              ✅              |       ✅       |       partial        |
| Apify key-value store for file delivery |              ✅              |       ❌       |          ❌          |
| Setup time to first result              |       **< 60 seconds**       | install needed | API key setup needed |

**Verdict.** YouTube Video Downloader is ideal for cloud-based workflows and AI agents that need YouTube video files or metadata via API without local tools.

***

### ⚠️ Common mistakes to avoid

1. **Missing `video_url` field.** Required — provide a valid YouTube video URL.
2. **Invalid `video_quality` value.** Must be one of: `metadata`, `low`, `medium`, `high`.
3. **Negative `max_comments`.** Must be a non-negative integer; use `0` to skip comment extraction.
4. **Expecting bulk batch download.** This Actor is designed for one video per run. For batch processing, call the Apify API in a loop.

***

### 🛠️ Troubleshooting

| Problem                             | Likely cause                              | Fix                                                             |
| ----------------------------------- | ----------------------------------------- | --------------------------------------------------------------- |
| `Missing 'video_url' field`         | `video_url` key not in input.             | Add `"video_url": "https://..."` to input.                      |
| `'video_quality' must be one of...` | Invalid quality string.                   | Use: `metadata`, `low`, `medium`, or `high`.                    |
| Empty `video` field in result       | `video_quality` is `metadata`.            | Use `"video_quality": "high"` to enable download.               |
| Video unavailable or no result      | Video is private, deleted, or restricted. | Verify the video is publicly accessible on YouTube.             |
| Download succeeds but no MP4 file   | ffmpeg post-processing issue.             | Check Actor log for ffmpeg errors; try a lower quality setting. |

***

### ❓ FAQ

#### What data does YouTube Video Downloader return?

Video ID, thumbnail, platform, title, description, duration, publish date, author, author URL, categories, tags, view count, like count, comment count, width, height, fps, comments (if requested), and the MP4 file path (if downloaded).

#### How much does YouTube Video Downloader cost?

**$0.05 for metadata only** (`video_quality: metadata`). **$0.25 for full download** (any quality level). The Apify Free plan includes $5/month credits.

#### Does YouTube Video Downloader require a YouTube API key?

No — the Actor works without any YouTube API credentials or login.

#### Can I download private or age-restricted YouTube videos?

No — the Actor only processes publicly accessible YouTube videos and does not support private, unlisted, or age-restricted content.

***

### 🔌 Integrations

YouTube Video Downloader plugs straight into the Apify ecosystem:

- **Schedules** — run on a schedule to archive new videos from specific channels ([docs](https://docs.apify.com/platform/schedules?fpr=aiagentapi)).
- **Webhooks** — POST metadata and video URL to your system on `ACTOR.RUN.SUCCEEDED` ([docs](https://docs.apify.com/platform/integrations/webhooks?fpr=aiagentapi)).
- **Apify API** — `run-sync-get-dataset-items` for blocking calls, `runs` for async ([docs](https://docs.apify.com/api/v2?fpr=aiagentapi)).
- **MCP Server** — call the Actor from Claude, ChatGPT, or Cursor agents ([docs](https://docs.apify.com/platform/integrations/mcp?fpr=aiagentapi)).
- **No-code** — Make, Zapier, n8n, Pipedream, Google Sheets, Airtable.

***

### 🧱 Sister Actors from TrueFetch

#### Jobs

- [Best Job Search](https://apify.com/TrueFetch/best-job-search?fpr=aiagentapi)
- [Glassdoor Job Search](https://apify.com/TrueFetch/glassdoor-job-search?fpr=aiagentapi)
- [Glints Company Finder](https://apify.com/TrueFetch/glints-company-finder?fpr=aiagentapi)
- [Glints Job Finder](https://apify.com/TrueFetch/glints-job-finder?fpr=aiagentapi)
- [Indeed Job Search](https://apify.com/TrueFetch/indeed-job-search?fpr=aiagentapi)
- [JobStreet Company Finder](https://apify.com/TrueFetch/jobstreet-company-finder?fpr=aiagentapi)
- [JobStreet Job Finder](https://apify.com/TrueFetch/jobstreet-job-finder?fpr=aiagentapi)
- [LinkedIn Job Search](https://apify.com/TrueFetch/linkedin-job-search?fpr=aiagentapi)
- [StepStone Company Finder](https://apify.com/TrueFetch/stepstone-company-finder?fpr=aiagentapi)
- [StepStone Job Finder](https://apify.com/TrueFetch/stepstone-job-finder?fpr=aiagentapi)

#### Shopping & Deals

- [Amazon Deals Scraper](https://apify.com/TrueFetch/amazon-deals-scraper?fpr=aiagentapi)
- [Amazon Store Finder](https://apify.com/TrueFetch/amazon-store-finder?fpr=aiagentapi)
- [Argos Deals Scraper](https://apify.com/TrueFetch/argos-deals-scraper?fpr=aiagentapi)
- [ASOS Fashion Scraper](https://apify.com/TrueFetch/asos-fashion-scraper?fpr=aiagentapi)
- [eBay Deals Scraper](https://apify.com/TrueFetch/ebay-deals-scraper?fpr=aiagentapi)
- [eBay Seller Finder](https://apify.com/TrueFetch/ebay-seller-finder?fpr=aiagentapi)
- [Flipkart Deals Scraper](https://apify.com/TrueFetch/flipkart-deals-scraper?fpr=aiagentapi)
- [John Lewis Deals Scraper](https://apify.com/TrueFetch/john-lewis-deals-scraper?fpr=aiagentapi)
- [Lidl Deals Scraper](https://apify.com/TrueFetch/lidl-deals-scraper?fpr=aiagentapi)
- [Magalu Deals Scraper](https://apify.com/TrueFetch/magalu-deals-scraper?fpr=aiagentapi)
- [MediaMarkt Deals Scraper](https://apify.com/TrueFetch/mediamarkt-deals-scraper?fpr=aiagentapi)
- [Mercado Livre Deals Scraper](https://apify.com/TrueFetch/mercado-livre-deals-scraper?fpr=aiagentapi)
- [Nykaa Beauty Scraper](https://apify.com/TrueFetch/nykaa-beauty-scraper?fpr=aiagentapi)
- [OTTO Deals Scraper](https://apify.com/TrueFetch/otto-deals-scraper?fpr=aiagentapi)
- [Target Deals Scraper](https://apify.com/TrueFetch/target-deals-scraper?fpr=aiagentapi)
- [TradeIndia Product Finder](https://apify.com/TrueFetch/tradeindia-product-finder?fpr=aiagentapi)
- [TradeIndia Supplier Finder](https://apify.com/TrueFetch/tradeindia-supplier-finder?fpr=aiagentapi)
- [Walmart Deals Scraper](https://apify.com/TrueFetch/walmart-deals-scraper?fpr=aiagentapi)

#### Vehicles

- [AutoTrader Car Finder](https://apify.com/TrueFetch/autotrader-car-finder?fpr=aiagentapi)
- [AutoTrader Dealer Finder](https://apify.com/TrueFetch/autotrader-dealer-finder?fpr=aiagentapi)
- [Cars.com Car Finder](https://apify.com/TrueFetch/carscom-car-finder?fpr=aiagentapi)
- [Cars.com Dealer Finder](https://apify.com/TrueFetch/carscom-dealer-finder?fpr=aiagentapi)
- [Webmotors Car Finder](https://apify.com/TrueFetch/webmotors-car-finder?fpr=aiagentapi)

#### Real Estate

- [MagicBricks Builder Finder](https://apify.com/TrueFetch/magicbricks-builder-finder?fpr=aiagentapi)
- [MagicBricks Home Finder](https://apify.com/TrueFetch/magicbricks-home-finder?fpr=aiagentapi)
- [US Real Estate](https://apify.com/TrueFetch/us-real-estate?fpr=aiagentapi)
- [Zillow Real Estate](https://apify.com/TrueFetch/zillow-real-estate?fpr=aiagentapi)

#### Local Business & Food

- [BBB Business Finder](https://apify.com/TrueFetch/bbb-business-finder?fpr=aiagentapi)
- [BBB Review Checker](https://apify.com/TrueFetch/bbb-review-checker?fpr=aiagentapi)
- [Google Business Profile](https://apify.com/TrueFetch/google-business-profile?fpr=aiagentapi)
- [Reclame Aqui Company Finder](https://apify.com/TrueFetch/reclame-aqui-company-finder?fpr=aiagentapi)
- [Zomato Menu Checker](https://apify.com/TrueFetch/zomato-menu-checker?fpr=aiagentapi)
- [Zomato Restaurant Finder](https://apify.com/TrueFetch/zomato-restaurant-finder?fpr=aiagentapi)

#### Classifieds

- [Kleinanzeigen Listing Finder](https://apify.com/TrueFetch/kleinanzeigen-listing-finder?fpr=aiagentapi)
- [Kleinanzeigen Seller Finder](https://apify.com/TrueFetch/kleinanzeigen-seller-finder?fpr=aiagentapi)
- [OLX Listing Finder](https://apify.com/TrueFetch/olx-listing-finder?fpr=aiagentapi)
- [OLX Seller Finder](https://apify.com/TrueFetch/olx-seller-finder?fpr=aiagentapi)

#### Social Media

- [Find Any Company On LinkedIn](https://apify.com/TrueFetch/find-any-company-on-linkedin?fpr=aiagentapi)
- [Find Anyone On LinkedIn](https://apify.com/TrueFetch/find-anyone-on-linkedin?fpr=aiagentapi)
- [Instagram Explore](https://apify.com/TrueFetch/instagram-explore?fpr=aiagentapi)
- [Instagram Post](https://apify.com/TrueFetch/instagram-post?fpr=aiagentapi)
- [Instagram Profile](https://apify.com/TrueFetch/instagram-profile?fpr=aiagentapi)
- [Reddit Community Post](https://apify.com/TrueFetch/reddit-community-post?fpr=aiagentapi)
- [Reddit Community Profile](https://apify.com/TrueFetch/reddit-community-profile?fpr=aiagentapi)
- [Reddit Community User](https://apify.com/TrueFetch/reddit-community-user?fpr=aiagentapi)
- [Reddit Post Search](https://apify.com/TrueFetch/reddit-post-search?fpr=aiagentapi)
- [Reddit User Profile](https://apify.com/TrueFetch/reddit-user-profile?fpr=aiagentapi)
- [Social Media Marketing](https://apify.com/TrueFetch/social-media-marketing?fpr=aiagentapi)
- [Telegram Channel Message](https://apify.com/TrueFetch/telegram-channel-message?fpr=aiagentapi)
- [Telegram Group Member](https://apify.com/TrueFetch/telegram-group-member?fpr=aiagentapi)
- [Telegram Profile](https://apify.com/TrueFetch/telegram-profile?fpr=aiagentapi)
- [X Community Profile](https://apify.com/TrueFetch/x-community-profile?fpr=aiagentapi)
- [X User Profile](https://apify.com/TrueFetch/x-user-profile?fpr=aiagentapi)

#### Videos & Text

- [Best Video Downloader](https://apify.com/TrueFetch/best-video-downloader?fpr=aiagentapi)
- [Instagram To Text](https://apify.com/TrueFetch/instagram-to-text?fpr=aiagentapi)
- [TikTok Live Recorder](https://apify.com/TrueFetch/tiktok-live-recorder?fpr=aiagentapi)
- [TikTok Video Downloader](https://apify.com/TrueFetch/tiktok-video-downloader?fpr=aiagentapi)
- [TikTok Video Lookup](https://apify.com/TrueFetch/tiktok-video-lookup?fpr=aiagentapi)
- [Video Subtitles Downloader](https://apify.com/TrueFetch/video-subtitles-downloader?fpr=aiagentapi)
- [Video To Text](https://apify.com/TrueFetch/video-to-text?fpr=aiagentapi)
- [YouTube Niche Scraper](https://apify.com/TrueFetch/youtube-niche-scraper?fpr=aiagentapi)
- [YouTube Video Downloader](https://apify.com/TrueFetch/youtube-video-downloader?fpr=aiagentapi)

#### Content & Articles

- [Medium Article Finder](https://apify.com/TrueFetch/medium-article-finder?fpr=aiagentapi)
- [Medium Writer Finder](https://apify.com/TrueFetch/medium-writer-finder?fpr=aiagentapi)

***

### 📞 Support, changelog, last updated

#### Support

- 💬 **Telegram Group:** [t.me/Apify\_Actor](https://t.me/Apify_Actor)
- 📧 **Direct support:** [t.me/AiAgentApi](https://t.me/AiAgentApi)
- 📖 **Actor page & docs:** [apify.com/TrueFetch/youtube-video-downloader](https://apify.com/TrueFetch/youtube-video-downloader?fpr=aiagentapi)

Maintained by **TrueFetch** on the [Apify Store](https://apify.com/TrueFetch?fpr=aiagentapi).

> **Cost of doing nothing:** local yt-dlp requires setup, maintenance, and infrastructure. YouTube Video Downloader delivers cloud-based downloads via API in under 60 seconds for $0.25/video. → [Try it free with $5 of Apify credits](https://apify.com/TrueFetch/youtube-video-downloader?fpr=aiagentapi).

#### Changelog

- **2026-05-02** — README rewritten for SEO + GEO; documented all inputs, output structure, pricing tiers, troubleshooting, and FAQ.
- **2026-03** — Added `max_comments` support for comment extraction.
- **2026-02** — Initial release: YouTube video downloader and metadata Actor.

***

```json
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "SoftwareApplication",
      "@id": "https://apify.com/TrueFetch/youtube-video-downloader#software",
      "name": "YouTube Video Downloader",
      "description": "Apify Actor that downloads YouTube videos as MP4 at $0.25/video or extracts metadata at $0.05/video, returning title, description, view count, author info, and optional comments.",
      "applicationCategory": "BusinessApplication",
      "operatingSystem": "Web, Cloud",
      "url": "https://apify.com/TrueFetch/youtube-video-downloader",
      "offers": {
        "@type": "Offer",
        "price": "0.05",
        "priceCurrency": "USD",
        "availability": "https://schema.org/InStock"
      },
      "author": { "@id": "https://apify.com/TrueFetch#author-TrueFetch" },
      "publisher": { "@id": "https://apify.com/TrueFetch#publisher" }
    },
    {
      "@type": "Organization",
      "@id": "https://apify.com/TrueFetch#publisher",
      "name": "TrueFetch",
      "url": "https://apify.com/TrueFetch",
      "sameAs": ["https://t.me/Apify_Actor", "https://t.me/AiAgentApi"]
    },
    {
      "@type": "FAQPage",
      "mainEntity": [
        {
          "@type": "Question",
          "name": "What data does YouTube Video Downloader return?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "Video ID, thumbnail, platform, title, description, duration, publish date, author, author URL, categories, tags, view count, like count, comment count, width, height, fps, comments (if requested), and the MP4 file path (if downloaded)."
          }
        },
        {
          "@type": "Question",
          "name": "How much does YouTube Video Downloader cost?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "$0.05 for metadata only (video_quality: metadata). $0.25 for full MP4 download. The Apify Free plan includes $5/month credits."
          }
        },
        {
          "@type": "Question",
          "name": "Does YouTube Video Downloader require a YouTube API key?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "No — the Actor works without any YouTube API credentials or login."
          }
        }
      ]
    },
    {
      "@type": "BreadcrumbList",
      "itemListElement": [
        {
          "@type": "ListItem",
          "position": 1,
          "name": "Apify",
          "item": "https://apify.com"
        },
        {
          "@type": "ListItem",
          "position": 2,
          "name": "Videos",
          "item": "https://apify.com/store?category=VIDEOS"
        },
        {
          "@type": "ListItem",
          "position": 3,
          "name": "YouTube Video Downloader",
          "item": "https://apify.com/TrueFetch/youtube-video-downloader"
        }
      ]
    }
  ]
}
```

***

**Last Updated:** May 2, 2026
**Schema version:** 1.1
**Maintained by:** [TrueFetch](https://apify.com/TrueFetch?fpr=aiagentapi) · 💬 [Telegram Group](https://t.me/Apify_Actor) · 📧 [Support](https://t.me/AiAgentApi)

# Actor input Schema

## `video_url` (type: `string`):

Enter the video URL

## `video_quality` (type: `string`):

Choose the video quality for download: High (4K), Medium (720p), Low (480p), or Metadata only

## `max_comments` (type: `integer`):

Maximum number of comments to get. Set to 0 to skip comments

## Actor input object example

```json
{
  "video_url": "https://www.youtube.com/shorts/4KBAE92he8E",
  "video_quality": "metadata"
}
```

# Actor output Schema

## `results` (type: `string`):

All video details and optional download links with full engagement stats and comments

# 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 = {
    "video_url": "https://www.youtube.com/shorts/4KBAE92he8E",
    "video_quality": "metadata",
    "max_comments": 0
};

// Run the Actor and wait for it to finish
const run = await client.actor("truefetch/youtube-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 = {
    "video_url": "https://www.youtube.com/shorts/4KBAE92he8E",
    "video_quality": "metadata",
    "max_comments": 0,
}

# Run the Actor and wait for it to finish
run = client.actor("truefetch/youtube-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 '{
  "video_url": "https://www.youtube.com/shorts/4KBAE92he8E",
  "video_quality": "metadata",
  "max_comments": 0
}' |
apify call truefetch/youtube-video-downloader --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "YouTube Video Downloader",
        "description": "Download YouTube videos in 4K, HD, or audio-only — Shorts, Music, and regular uploads. Returns captions, top comments, thumbnail URL, and video file. $0.25 per download.",
        "version": "1.0",
        "x-build-id": "dI9b1kPcHIAO9jIqF"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/truefetch~youtube-video-downloader/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-truefetch-youtube-video-downloader",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/truefetch~youtube-video-downloader/runs": {
            "post": {
                "operationId": "runs-sync-truefetch-youtube-video-downloader",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/truefetch~youtube-video-downloader/run-sync": {
            "post": {
                "operationId": "run-sync-truefetch-youtube-video-downloader",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "required": [
                    "video_url"
                ],
                "properties": {
                    "video_url": {
                        "title": "Video URL",
                        "type": "string",
                        "description": "Enter the video URL"
                    },
                    "video_quality": {
                        "title": "Video Quality",
                        "enum": [
                            "high",
                            "medium",
                            "low",
                            "metadata"
                        ],
                        "type": "string",
                        "description": "Choose the video quality for download: High (4K), Medium (720p), Low (480p), or Metadata only"
                    },
                    "max_comments": {
                        "title": "Max Comments",
                        "minimum": 0,
                        "maximum": 10000,
                        "type": "integer",
                        "description": "Maximum number of comments to get. Set to 0 to skip comments"
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
