Youtube Search Scraper avatar

Youtube Search Scraper

Pricing

$19.99/month + usage

Go to Apify Store
Youtube Search Scraper

Youtube Search Scraper

Scrape YouTube search results at scale. Extract video titles, URLs, views, channel names, upload dates, thumbnails, and more directly from YouTube search pages. Ideal for market research, trend analysis, competitor tracking, and building video datasets.

Pricing

$19.99/month + usage

Rating

0.0

(0)

Developer

ScrapAPI

ScrapAPI

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

0

Monthly active users

10 days ago

Last modified

Share

Youtube Search Scraper

Scale your YouTube research with the Youtube Search Scraper — a fast, reliable YouTube search results scraper for videos and channels. It helps marketers, developers, data analysts, and researchers scrape YouTube search results without manual browsing, returning clean, flat JSON that’s easy to work with. As a YouTube SERP scraper and YouTube search API alternative, it’s built for trend analysis, competitor tracking, and creating high-quality video datasets at scale. 🚀

What data / output can you get?

Below are real output fields pushed to the dataset when you scrape YouTube search results or provide direct video/channel URLs.

Data typeDescriptionExample value
typeRecord type ("video", "channel", "error", "info")"video"
titleVideo title"Secret Fact"
urlCanonical video or channel URL"https://www.youtube.com/watch?v=bhWoNS6ZSHk"
idVideo ID"bhWoNS6ZSHk"
datePublish date in ISO UTC (where available)"2024-11-19T00:00:00Z"
durationVideo duration (hh:mm:ss or m:ss)"0:52"
viewCountVideo views (integer)36334432
likesVideo likes (integer)2206496
commentsCountNumber of comments (integer)10000
commentsTurnedOffWhether comments are disabledfalse
channelNameChannel display name"The Graham Norton Show"
channelUsernameChannel handle (if detected)"@OfficialGrahamNorton"
channelUrlCanonical channel URL (prefer handle)"http://www.youtube.com/@OfficialGrahamNorton"
channelIdChannel ID"UC4PziMH5MvvsmqM0VCZTy-g"
numberOfSubscribersChannel subscriber count (if available)5470000
channelViewCountChannel total views (integer if parsed)4788755834
channelVideoCountChannel total videos (integer if parsed)2451
thumbnailUrlVideo thumbnail URL"https://i.ytimg.com/vi/f5ksIepT2mE/hq720.jpg"
textFirst 500 chars of description (if available)"Remember this next time you watch #TheGrinch!..."
hashtagsHashtags detected in description (max 5)["#TheGrinch", "#GrahamNortonShow"]
keywordsTop tags (max 5, >3 chars, excluding "yt:")["Graham Norton", "The Graham Norton Show"]
inputThe original search query or URL that produced the item"python programming"
orderResult index per query (0-based)0

Notes:

  • When you paste a channel URL, the scraper also outputs “channel” records with fields like description, joined, country, subscribers, views, videos, canonicalChannelUrl, channelUsername, channelId, inputUrl, aboutUrl, and links.
  • Datasets can be exported to JSON, CSV, or Excel for analysis and reporting.

Key features

  • 💾 Live save to dataset
    Results are written as they’re scraped. If the run stops early, everything collected so far is safely stored.

  • 🛡️ Residential proxy with smart retries
    The scraper starts in RESIDENTIAL mode and retries up to 3 times with rotated proxies to overcome YouTube blocks and bot detection.

  • 🔍 Keyword and URL inputs
    Search by keywords to scrape YouTube search results, or paste full video/channel URLs to extract direct records. Perfect for a YouTube search results extractor and YouTube channel search scraper workflow.

  • 🔢 Sortable results (relevance/date/views/rating)
    Control ordering with sortBy for precise YouTube search ranking scraper needs.

  • ⚡ Batch processing and concurrency
    Parallel collection with batch execution accelerates large jobs and makes it a robust YouTube search scraping tool for scale.

  • 🧾 Flat, analytics-ready JSON
    Clean, flat fields make it a reliable YouTube search results parser. Easily export YouTube search results to CSV/Excel for BI dashboards.

  • 🧠 Channel About extraction (when URL is a channel)
    Provide a channel URL to get structured About data including country, joined date, subscriber text, view and video counts.

  • 🧰 Developer-friendly on Apify
    Runs reliably in production with the Apify platform. Fetch results via the Apify API and plug into your pipeline as a YouTube search API alternative.

How to use Youtube Search Scraper - step by step

  1. Sign up or log in to Apify
    Create a free Apify account to run the actor in the cloud.

  2. Open the actor in the Apify Store
    Search for “Youtube Search Scraper” and click Try for free.

  3. Add your input
    In the queries field, add one or more search queries or YouTube URLs (one per line). For example:

  1. Configure options
    Adjust maxResults and sortBy. You can also set uploadDate, duration, type, enable a proxy in proxyConfiguration, or toggle debug for verbose logs.

  2. Start the run
    Click Start. The job searches YouTube and streams results to the default dataset in near real time.

  3. Monitor progress
    Logs show retries, proxy usage, and collection progress (e.g., [x/y] collected). Errors or empty result info are also recorded to the dataset.

  4. Export your data
    Open the dataset and export to JSON, CSV, or Excel. Use it for analytics, dashboards, and downstream workflows.

Pro tip: Paste a channel URL into queries to collect a structured “channel” record. This is useful when you need a focused YouTube channel search scraper output alongside video results.

Use cases

Use case nameDescription
Market research and trend trackingTrack topics, categories, and creators by collecting search results at scale. Use the YouTube search results scraper to quantify interest and momentum.
Competitor benchmarkingCompare view, like, and comment counts across competing videos to inform strategy with a YouTube search results extractor.
Content planningIdentify high-performing formats and keywords to plan videos using a YouTube keyword search scraper workflow.
Data journalism & researchBuild datasets of videos and channels for longitudinal analysis and reporting, exporting YouTube search results to CSV for reproducibility.
Brand and channel monitoringPull fresh results around branded terms and channels to monitor activity and performance without the official API.
SEO and SERP analysisUse the YouTube SERP scraper behavior to study ranking, sorting, and surface-level engagement signals (views, likes, comments).
API pipelinesIntegrate the dataset into ETL pipelines as a YouTube search API alternative; fetch via Apify API post-run.

Why choose Youtube Search Scraper?

The scraper focuses on precision, reliability, and production-grade scale — purpose-built for automation and analytics.

  • ✅ Accurate, flat JSON designed for dashboards and data pipelines
  • ⚡ Fast batch collection with parallel execution for large jobs
  • 🔒 Robust proxy handling (RESIDENTIAL with retries) to reduce blocks
  • 🧩 Developer-ready on Apify; fetch results programmatically
  • 🧪 Sort control (relevance/date/views/rating) for consistent testing
  • 💾 Streamed “live save” results — never lose partial progress
  • 🛠️ Better than browser extensions or unstable scripts — runs server-side, repeatable, and observable

In short: a production-ready YouTube search scraping tool you can trust for scale.

Yes — when used responsibly. This actor processes publicly available YouTube pages and returns structured metadata. You are responsible for ensuring that your usage complies with YouTube’s Terms of Service and applicable laws (e.g., GDPR, CCPA).
Guidelines:

  • Only collect publicly available content
  • Avoid scraping private, unlisted, or restricted content
  • Respect platform terms and applicable data regulations
  • Verify compliance with your legal team for edge cases

Input parameters & output format

Example input

{
"queries": [
"python programming",
"https://www.youtube.com/@OfficialGrahamNorton"
],
"maxResults": 10,
"sortBy": "relevance",
"uploadDate": "",
"duration": "",
"type": "video",
"proxyConfiguration": {
"useApifyProxy": false
},
"debug": false
}

Parameters

  • queries (array of string)
    One search query or URL per line. Examples: « python programming », « best cooking channels », or a full URL like https://www.youtube.com/watch?v=... or https://www.youtube.com/@ChannelName. Mix keywords and URLs in the same run.
    Default: ["python programming"] — Required: no

  • maxResults (integer)
    Maximum number of results to fetch for each query (1–2000). Higher values mean more data but longer runs. Default 10 is good for quick tests.
    Default: 10 — Required: no

  • sortBy (string; enum: relevance, date, viewCount, rating)
    How YouTube results are ordered. Same options as YouTube’s sort dropdown.
    Default: "relevance" — Required: no

  • uploadDate (string; enum: "", lastHour, today, thisWeek, thisMonth, thisYear)
    Restrict results to a time window. Leave “None” (empty string) for no date filter.
    Default: "" — Required: no

  • duration (string; enum: "", short, medium, long)
    Only include videos in a length range: Short (<4 min), Medium (4–20 min), or Long (>20 min). Leave “None” (empty string) for any duration.
    Default: "" — Required: no

  • type (string; enum: video, channel, playlist, movie)
    Type of results to return. Use “video” for standard search results.
    Default: "video" — Required: no

  • proxyConfiguration (object)
    Optional proxy settings. Leave empty for no proxy; the actor starts in RESIDENTIAL mode to improve reliability on YouTube.
    Default: none — Required: no

  • debug (boolean)
    Turn on for extra log output (requests, retries, proxy switches).
    Default: false — Required: no

Example output

Video record

{
"title": "Our Respect For Jim Carrey After Hearing This! #Shorts",
"type": "video",
"channelName": "The Graham Norton Show",
"date": "2022-12-15T00:00:00Z",
"text": "Remember this next time you watch #TheGrinch!...",
"thumbnailUrl": "https://i.ytimg.com/vi/f5ksIepT2mE/hq720.jpg",
"order": 0,
"input": "python programming",
"hashtags": ["#TheGrinch", "#GrahamNortonShow"],
"channelId": "UC4PziMH5MvvsmqM0VCZTy-g",
"channelUrl": "http://www.youtube.com/@OfficialGrahamNorton",
"channelUsername": "@OfficialGrahamNorton",
"numberOfSubscribers": 5470000,
"channelViewCount": 4788755834,
"channelVideoCount": 2451,
"hiddenSubscriberCount": false,
"id": "f5ksIepT2mE",
"url": "https://www.youtube.com/watch?v=f5ksIepT2mE",
"viewCount": 36334432,
"likes": 2206496,
"commentsCount": 10000,
"commentsTurnedOff": false,
"duration": "0:52",
"keywords": ["Graham Norton", "The Graham Norton Show"],
"isMembersOnly": false
}

Channel record (when input is a channel URL)

{
"type": "channel",
"url": "https://www.youtube.com/@OfficialGrahamNorton",
"description": "Official channel description...",
"joined": "Jan 1, 2010",
"country": "Not specified",
"subscribers": "N/A",
"views": "N/A",
"videos": "N/A",
"canonicalChannelUrl": "http://www.youtube.com/@OfficialGrahamNorton",
"channelUsername": "@OfficialGrahamNorton",
"channelId": "UC4PziMH5MvvsmqM0VCZTy-g",
"links": [],
"inputUrl": "https://www.youtube.com/@OfficialGrahamNorton",
"aboutUrl": "https://www.youtube.com/@OfficialGrahamNorton/about"
}

Also present:

  • Error records: {"type": "error", "error": "..."} and optionally url/input
  • Info records: {"type": "info", "input": "...", "message": "No results"}

FAQ

Is this a YouTube search API alternative?

Yes. It scrapes public YouTube search results and returns structured JSON, making it a practical YouTube search API alternative for many workflows.

Do I need to log in or provide cookies?

No. The actor runs without login by default. It can operate without cookies, and it handles YouTube access via robust residential proxies and retries.

How many results can I scrape per query?

You can set maxResults from 1 to 2000 per query. The scraper processes results in batches with concurrency to speed up large collections.

Can I sort the results like on YouTube?

Yes. Use sortBy to order by relevance, date, viewCount, or rating — just like the YouTube UI. This is useful for YouTube search ranking scraper experiments.

Does it handle channels as well as videos?

Yes. If you provide a channel URL in queries, the actor outputs a “channel” record with About-page metadata (e.g., description, joined, country, and canonical channel URL).

What fields are included in the output?

Video records include title, url, id, date, duration, viewCount, likes, commentsCount, commentsTurnedOff, channelName, channelUsername, channelUrl, channelId, numberOfSubscribers, channelViewCount, channelVideoCount, thumbnailUrl, text, hashtags, keywords, input, order, and isMembersOnly.

Can I export YouTube search results to CSV or Excel?

Yes. After the run, open the dataset and export results to JSON, CSV, or Excel. This makes it a simple YouTube search results to CSV workflow.

Is there a free trial and what’s the pricing?

A trial is available (120 trial minutes). The current plan is a flat price per month: $19.99. You can start testing the actor on Apify and scale as needed.

Closing CTA / Final thoughts

The Youtube Search Scraper is built for fast, reliable collection of YouTube search results and channel/video metadata at scale. With live-save output, residential proxy reliability, and flat JSON, it’s ideal for marketers, developers, analysts, and researchers. Use it as a YouTube search results scraper to power dashboards, automate pipelines via the Apify API, and export to CSV/Excel for reporting. Start extracting smarter — and turn YouTube SERPs into actionable data today.