Request a tool
All toolsGuidesMCP serverRequest a toolPlatformsCategories
YouTube Scraper icon

YouTube Scraper

Scrape YouTube videos by keyword or channel without the API. Get titles, views, publish dates, watch URLs and channel data. No key or cookies needed.

5 from 1 review on Apify 102 runs on Apify $0.000135 per video ($0.135 / 1,000)
Run this in the cloudRun on Apify →

YouTube & Creator Tools

How it works

  1. 1
    Open it on Apify

    Hit Run on Apify — it opens the tool in the cloud, no install.

  2. 2
    Set the inputs

    Adjust searchQueries, channelUrls, maxItems (sensible defaults are pre-filled).

  3. 3
    Click Run

    The tool runs on Apify’s cloud and collects the data for you.

  4. 4
    Export the results

    Download as JSON, CSV or Excel, or pipe straight into your app, Google Sheets, or an AI agent.

Pricing

$0.000135 per video = $0.135 per 1,000

You are charged forWhenPrice
Video returnedCharged per video returned in the dataset (empty searches not charged).$0.000135
Actor StartCharged when the Actor starts running. Number of events charged depends on Actor memory (one event per GB, minimum one event).$0.001

Pay-per-event pricing: you are billed per result, not per subscription — a run that returns nothing costs nothing beyond the start fee. Billing is handled by Apify on your own account. These are the live Apify store prices, in effect since 2026-08-04, and they are what you are actually charged.

Inputs

FieldWhat it doesType
searchQueriesKeywords to search YouTube for, one per line (e.g. "lofi hip hop", "python tutorial"). Each query returns up to Max videos. Leave empty if you only want channel videos. Empty results usually mean the query genuinely has no matches, or that geo-blocking / anti-bot triggered for the run IP — try again with the residential proxy enabled.array
channelUrlsYouTube channels to pull videos from, one per line. Accepts full channel URLs (e.g. https://www.youtube.com/@LofiGirl, https://www.youtube.com/c/ChannelName, https://www.youtube.com/channel/UCSJ4gkVC6NrvII8umztf0Ow), @handles (e.g. @LofiGirl), or raw UC channel ids (e.g. UCSJ4gkVC6NrvII8umztf0Ow). Each channel returns up to Max of its newest videos.array
maxItemsMaximum number of videos to return per search query and per channel. Pagination via continuation tokens is used to reach this number. Values up to a few hundred are realistic; very large values (toward 1000) require many paginated requests and raise the chance of YouTube rate-limiting or blocking the run IP — keep a residential proxy enabled for high values.integer
notionConnectorOptional. Write each video as a page into your Notion when the run finishes. Authorize a Notion connector once in Settings → API & Integrations → MCP connectors, then pick it here. Leave empty to skip (default) — results are always saved to the dataset regardless.string
notionParentIdOptional. The Notion data source ID of the database to write into (only used if a Notion connector is set). Leave empty to create the pages privately in your workspace instead.string

What you get

A structured dataset — each result includes fields like:

channelIdchannelNamelengthTextmodepublishedTimeTextthumbnailtitleurlvideoIdviewCountText

Export every run as JSON, CSV or Excel, or send it to your app, a database, Google Sheets, or an AI agent.

18 ready-to-run use cases

YouTube Content Gap Finder: Search Results Scraper

YouTube keyword research for creators: scrape the top-ranking videos for any search term with views and channel size to spot low-competition content gaps.

YouTube Title Scraper: Top Video Titles by Keyword

Reverse-engineer high-CTR YouTube titles. This scraper returns the top-performing video titles and view counts for any keyword so you can copy what works.

YouTube Channel Scraper for RAG Transcript Corpus

Scrape every video URL and title from an expert YouTube channel to build a domain-specific transcript corpus for RAG pipelines and LLM grounding.

Scrape YouTube Channel Videos to Repurpose to Blogs

Export a YouTube channel's videos with views and metadata, then repurpose the top performers into blog posts, newsletters, and Shorts scripts.

YouTube Comment Scraper for Video Idea Research

Scrape a YouTube channel's videos and mine the comments for recurring viewer questions and requests that point straight to your next video ideas.

YouTube Brand Mention Tracker for Social Listening

Social listening on YouTube: search a brand or product name to collect every video, view count, and channel discussing it for sentiment and PR monitoring.

YouTube Influencer Finder by Niche for Outreach

Search any niche on YouTube and collect candidate creator channels with subscriber counts and engagement to vet for influencer marketing and sponsorships.

Find Low-Competition High-RPM YouTube Niches

Niche validation for new channels: search high-RPM topics like finance, AI, and B2B to see who ranks, their channel size, and views before you commit.

YouTube Shorts Scraper for Dropshipping Research

Spot winning products early. Search viral product and gadget queries on YouTube to collect high-view Shorts and videos for dropshipping and ecommerce research.

Scrape Multiple YouTube News Channels for Research

Build a YouTube news dataset for media research: pull recent videos across many news outlet channels with titles, dates, and views for diffusion analysis.

Benchmark Competitor YouTube Channels Side by Side

Competitor analysis on YouTube: scrape rival channels to compare upload frequency, format mix, and view performance, then shape your own content strategy.

Find Sponsor-Ready YouTube Creators in Your Niche

Find YouTube creators already making review and unboxing videos in your category, with channels and views, to target the best sponsorship-fit accounts.

YouTube Podcast Scraper: Full Episode List for AI

Index a podcast channel's full episode catalog from YouTube to power a searchable transcript archive, episode index, or Q&A bot over the back catalog.

Discover Rising YouTube Channels in a New Niche

Search an emerging topic on YouTube to surface rising creators and fast-growing videos as an early signal before the niche gets saturated.

Scrape a YouTube Channel's Videos by @handle

Enter a YouTube @handle like @LofiGirl to pull the channel's full video list with views, titles, publish dates, and watch URLs as a clean dataset.

Monitor a YouTube Channel's Latest Uploads

Watch any channel like MrBeast for its newest videos, view counts, and publish times on a schedule, so you catch every new upload as it lands.

Scrape Multiple YouTube Channels at Once

Bulk YouTube channel scraping: pull recent videos from several channels like MKBHD and Linus Tech Tips together to compare output side by side as a dataset.

Search YouTube for Product Review Videos

See which 'AirPods Pro 2 review' videos rank on YouTube, who made them, and how many views each pulled, all exported as a clean dataset.

Related tools in YouTube & Creator Tools

Other ready-to-run tools in the same category — all pay-per-use on the Apify cloud.

YouTube Channel Monitor — New Upload Tracker iconYouTube & Creator Tools

YouTube Channel Monitor — New Upload Tracker

Watch any YouTube channels and get only their new uploads as structured data — title, URL, views, duration, Shorts flag. Works as an upload trigger.

17 use cases

YouTube Video & Audio Downloader iconYouTube & Creator Tools

YouTube Video & Audio Downloader

Download YouTube videos as MP4 or extract MP3 audio at your chosen quality, with metadata and optional SRT subtitles. Paste a URL and run.

16 use cases

YouTube Video Uploader iconYouTube & Creator Tools

YouTube Video Uploader

Upload videos to your YouTube channel from a URL with no code: set title, tags, privacy, thumbnail, and schedule an auto-publish time via OAuth.

2 use cases

AI Viral Clip Cutter — Long Video to Shorts iconYouTube & Creator Tools

AI Viral Clip Cutter — Long Video to Shorts

Turn a long podcast, interview, or webinar into ranked short clips with AI-scored moments and word-synced captions for TikTok, Reels, and Shorts.

3 use cases

AI Text-to-Speech Voiceover iconYouTube & Creator Tools

AI Text-to-Speech Voiceover

Turn any script into a natural AI voiceover audio file (MP3/WAV/Opus/AAC). Pick a voice, speed, and format. Good for faceless videos, IVR, and narration.

3 use cases

Video & Audio Transcriber — Word-Level + SRT/VTT iconYouTube & Creator Tools

Video & Audio Transcriber — Word-Level + SRT/VTT

Transcribe any video or audio URL into text with word-level timestamps and ready SRT, VTT, and TXT files. Auto language detection, batch mode.

3 use cases

See all YouTube & Creator Tools →

YouTube Scraper

Scrape YouTube videos by search keyword or by channel (URL, @handle, or UC… id) using YouTube's internal InnerTube (youtubei/v1) JSON API. No API key, no cookies, no login. Auto-paginates via continuation tokens to reach your requested item count.

For every video it returns: videoId, title, watch url, channelName, channelId, viewCountText, publishedTimeText, lengthText, and the largest thumbnail.

$0.135 per 1,000 videos ($0.000135 each), plus $0.001 each time a run starts. Flat rate — no volume tiers, no plan gates — and you are charged only for videos actually returned. That is under the $0.20 to $0.40 per 1,000 charged by the highest-traffic YouTube search and channel scrapers on the Store, though a few metadata-only listings price lower.

What it does

  • Search mode — give one or more keywords; each query returns up to maxItems matching videos.
  • Channel mode — give one or more channels; each returns up to maxItems of its newest videos.

You can use either mode or both in a single run. Results are de-duplicated by videoId across all queries and channels, so you never pay for the same video twice in one run.

Input

FieldTypeDescription
searchQueriesstring[]Keywords to search, one per line. Optional if you supply channelUrls.
channelUrlsstring[]Channel URLs, @handles, or raw UC… ids. Optional if you supply searchQueries.
maxItemsintegerMax videos per query and per channel (1–1000, default 50).
proxyConfigurationobjectProxy for all requests. Residential Apify Proxy is strongly recommended — YouTube blocks datacenter/cloud IPs aggressively.

You must provide at least one of searchQueries or channelUrls. If both are empty the actor pushes an uncharged BAD_INPUT diagnostic row (it does not crash).

Example input

{
  "searchQueries": ["lofi hip hop", "python tutorial"],
  "channelUrls": ["https://www.youtube.com/@LofiGirl", "UCSJ4gkVC6NrvII8umztf0Ow"],
  "maxItems": 50,
  "proxyConfiguration": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] }
}

Output

Each successful video is one dataset row with ok: true:

{
  "ok": true,
  "videoId": "n61ULEU7CO0",
  "title": "lofi hip hop radio - beats to relax/study to",
  "url": "https://www.youtube.com/watch?v=n61ULEU7CO0",
  "channelName": "Lofi Girl",
  "channelId": "UCSJ4gkVC6NrvII8umztf0Ow",
  "viewCountText": "123,456 views",
  "publishedTimeText": "2 years ago",
  "lengthText": "1:02:33",
  "thumbnail": "https://i.ytimg.com/vi/n61ULEU7CO0/hqdefault.jpg",
  "mode": "search"
}

Nullable / empty fields

YouTube's modern channel grid uses a different layout than search results, so a few fields can come back as an empty string "" depending on which layout a video uses:

  • channelId — may be empty for some channel-grid videos (the grid layout does not always carry the id).
  • viewCountText, publishedTimeText, lengthText — may be empty for live streams, premieres, or radio-style "videos" that have no view count or fixed duration.
  • thumbnail — falls back to https://i.ytimg.com/vi/<videoId>/hqdefault.jpg if no source URL is present, so it is rarely empty.

videoId, title, and url are always present on ok: true rows.

Pricing

EventWhenPrice
Actor startOnce per run, per GB of run memory$0.001
Video returnedEach genuine ok: true video row$0.000135 ($0.135 / 1,000)
  • Blocked, rate-limited, network-error, and empty (NO_RESULTS) runs are never charged. When something goes wrong the actor pushes an ok: false diagnostic row with an errorCode instead of charging you.
  • Videos are de-duplicated by videoId across every query and channel in the run, so you never pay twice for the same video in one run.
  • 1,000 videos costs $0.136 all in. A two-keyword, one-channel run at the default maxItems: 50 returns up to 150 videos for about $0.02.

Diagnostics

On any failure the actor pushes a diagnostic row (ok: false) carrying a clear errorCode rather than silently returning nothing:

errorCodeMeaning
BAD_INPUTNo searchQueries or channelUrls were provided.
BLOCKEDYouTube blocked the request (anti-bot / 403). Use a residential proxy.
RATE_LIMITEDHit a 429. The actor backed off and retried; lower volume or add a proxy.
SERVER_ERRORYouTube returned a 5xx. Usually transient — retry later.
NO_RESULTSThe request succeeded but matched no videos for your input.
NETWORKA network error reaching YouTube.

Troubleshooting

  • Got NO_RESULTS or BLOCKED for a channel you know has videos? YouTube blocks cloud/datacenter IPs aggressively. Enable Apify Proxy with the RESIDENTIAL group and re-run — this resolves the large majority of empty/blocked results.
  • RATE_LIMITED on large runs? A high maxItems (toward 1000) requires many paginated requests. Lower maxItems, run fewer queries per run, or keep the residential proxy on.
  • Channel won't resolve (BAD_INPUT: could not resolve channel)? Double-check the handle/URL, or pass the raw UC… channel id directly.

Billing

Two charges apply: a $0.001 run-start fee each time a run begins, and the per-result fee for results actually delivered. Samples, diagnostics, duplicates, blocked look-ups and no-result runs never incur the per-result fee — a run that returns nothing costs only the $0.001 start fee.