YouTube Video Downloader PRO avatar

YouTube Video Downloader PRO

Under maintenance

Pricing

$20.00/month + usage

Go to Apify Store
YouTube Video Downloader PRO

YouTube Video Downloader PRO

Under maintenance

Save authorized YouTube videos in batches with searchable metadata, resolution control, per-URL results, and clear retry diagnostics. Optional cookies and proxy recovery are available for content you are allowed to access.

Pricing

$20.00/month + usage

Rating

2.6

(3)

Developer

Xtech

Xtech

Maintained by Community

Actor stats

14

Bookmarked

361

Total users

2

Monthly active users

17 days ago

Last modified

Share

YouTube Video Downloader

Save videos you own or are authorized to download, together with searchable metadata and a temporary direct download link.

What it does

  • Process one or many YouTube video URLs in a single run
  • Choose a maximum video resolution from 360p up to 4K
  • Receive the title, channel, duration, description, view count, thumbnail, and download result
  • Save each successful video to the run’s key-value storage and return a direct retrieval link
  • Use optional cookies for content you are authorized to access, such as your own age-restricted videos
  • Use a proxy when regional availability or rate limits require it

Best for

  • Create an offline copy of videos you own or have permission to archive
  • Build a metadata catalog before sending videos to a transcript, caption, or analysis workflow
  • Download a small batch of approved videos with one consistent resolution limit

This Actor does not bypass paywalls, private access controls, or YouTube’s policies. Use it only for content you are allowed to save.

Get started

Add one or more direct video URLs, choose the largest resolution you want, then run the Actor. The input form includes a public test video so you can verify the output before using your own URLs.

{
"urls": [
{ "url": "https://www.youtube.com/shorts/vVoMLnsbQqE" }
],
"resolution": "720p"
}

For age-restricted videos you own or are authorized to access, paste a Netscape-format cookies.txt value into the secret cookies field. The input form and reliable preset below enable Residential proxy because YouTube currently blocks Apify datacenter extraction. The Actor tries the signed media transfer directly first and falls back to proxy transfer only when YouTube rejects it; proxy transfer can materially increase run cost.

Pricing

The Actor is $20 per month with a 24-hour trial. Proxy traffic and Apify platform usage are separate, so start with the bundled 25-second sample before processing longer videos.

Ready-to-run presets

Reliable single-video cloud check:

{
"urls": [{ "url": "https://www.youtube.com/shorts/vVoMLnsbQqE" }],
"resolution": "360p",
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"]
}
}

Approved batch at a consistent quality:

{
"urls": [
{ "url": "https://www.youtube.com/watch?v=aqz-KE-bpKQ" },
{ "url": "https://www.youtube.com/watch?v=G56v017spr0" }
],
"resolution": "720p"
}

Authorized recovery for a region-limited source:

{
"urls": [{ "url": "https://www.youtube.com/watch?v=aqz-KE-bpKQ" }],
"resolution": "720p",
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"]
}
}

Add authorized cookies only in the secret cookies input; never place them in a task description or shared preset.

Results

Each input video produces one dataset item. Successful items include the video details and a link to the saved file. Failed items keep the original URL and include a sanitized error message so you can adjust the URL, cookies, access settings, resolution, or proxy choice. A run can contain both successful and failed items; inspect error per row before treating a batch as complete. If every valid input fails, the Actor marks the run FAILED after writing the error rows instead of reporting a misleading successful batch. Each run also writes a RUN_SUMMARY key-value record with requested, successful, failed, resolution, and proxy-enabled counts.

Malformed or non-YouTube URLs are retained as Invalid YouTube URL error rows and are not sent through yt-dlp retries. This keeps a typo from consuming runtime or proxy traffic while preserving a clear correction path in the dataset.

Example successful row:

{
"url": "https://www.youtube.com/watch?v=aqz-KE-bpKQ",
"video_id": "aqz-KE-bpKQ",
"title": "Big Buck Bunny 60fps 4K - Official Blender Foundation Short Film",
"channel": "Blender",
"duration": 120,
"download_url": "https://api.apify.com/v2/key-value-stores/<store-id>/records/aqz-KE-bpKQ",
"error": null
}

The download link points to the Actor run’s key-value store and is subject to your Apify data-retention period. Download or copy the file while the run storage is retained.

Good to know

Only download content that you own or have permission to save. Availability, formats, and access rules are determined by YouTube and the video owner.

Troubleshooting

  • YouTube JavaScript challenge: the Actor bundles yt-dlp's EJS challenge solver and enables the bundled Deno runtime automatically. If YouTube still asks for sign-in, use authorized cookies or retry with the Residential proxy path below.
  • yt-dlp failed: confirm the URL is a direct YouTube video URL, then retry with a lower resolution.
  • Age-restricted or private video: provide authorized Netscape cookies; do not paste cookies into the public input or README.
  • Region or rate-limit error: enable Apify Proxy and retry with a small batch.
  • Bot-check or 403 Forbidden: use Apify Proxy with the RESIDENTIAL group. The Store example enables this because the no-proxy cloud check is currently blocked. The Actor attempts direct media transfer after proxied extraction to reduce proxy bandwidth, but if YouTube binds the signed URL to the extraction IP, media transfer also uses the proxy and can materially increase run cost.
  • Proxy cost: a 10-minute 360p canary used about $0.324 when YouTube required proxied media transfer. The bundled first-run sample is only 25 seconds to keep validation bandwidth substantially lower; your cost scales with the selected video and format size.
  • Memory: the default 1 GB run size is designed for ordinary downloads. Very large files may need a larger run memory setting; the Actor rejects files above 800 MB.
  • Missing download_url: the video metadata was returned with an error; inspect the row’s error field and run status rather than retrying blindly.