YouTube Search Scraper & API avatar

YouTube Search Scraper & API

Pricing

from $0.40 / 1,000 youtube search results

Go to Apify Store
YouTube Search Scraper & API

YouTube Search Scraper & API

Scrape YouTube search results — videos, channels, playlists, shorts, and movies. Filter by type, duration, upload date, sort order, and video features (HD, 4K, CC, Live). Get titles, view counts, thumbnails, channel info, and publish dates. Export as JSON, CSV, Excel.

Pricing

from $0.40 / 1,000 youtube search results

Rating

5.0

(1)

Developer

ParseBird

ParseBird

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

YouTube Search Scraper

Scrape YouTube search results at scale — videos, channels, playlists, shorts, and movies. Extract titles, view counts, durations, thumbnails, channel info, and publish dates into structured data. Filter by content type, duration, upload date, sort order, geo, language, and video features (HD, 4K, CC, Live, HDR). Built for content researchers, marketers, media analysts, and data engineers who need clean, structured YouTube search data without API quotas.

Search any keyword on YouTube with advanced filters — type, duration, upload date, sort order, country, language, and 11 video feature flags. Get structured results with view counts, thumbnails, channel metadata, and publish dates. No API key needed.

Copy to your AI assistant

Copy this block into ChatGPT, Claude, Cursor, or any LLM to start using this actor.

YouTube Search Scraper (parsebird/youtube-search-scraper) — Scrapes YouTube search results for videos, channels, playlists, shorts, and movies. Input: {"query": "python tutorial", "maxResults": 100, "type": "video", "sortBy": "relevance"}. Filters: type (video/channel/playlist/movie/shorts), sortBy (relevance/popularity), duration (under3min/3to20min/over20min), uploadDate (today/week/month/year), geo (2-letter country code), lang (language code), features ({HD, subtitles, CCommons, 3D, Live, Purchased, 4K, 360, Location, HDR, VR180}), scrapeAllResults (bool), local (bool). Outputs per result: id, title, description, type, viewCount, duration, url, thumbnail, date, channelName, channelUrl, channelHandle, channelThumbnail, searchQuery, scrapedAt, raw. API: POST https://api.apify.com/v2/acts/parsebird~youtube-search-scraper/runs?token=YOUR_TOKEN. Get token: https://console.apify.com/account#/integrations

What does YouTube Search Scraper do?

The YouTube Search Scraper turns any search query into structured JSON, CSV, or Excel data — the same results you see on YouTube, but in a machine-readable format. Enter a keyword, set your filters, and the scraper:

  • 🔍 Searches YouTube's internal API for fast, reliable results (no browser, no headless Chrome, no API key)
  • 📹 Returns videos, channels, playlists, shorts, and movies — filter by type or get all at once
  • 📊 Extracts view counts, durations, thumbnails, channel names, handles, and publish dates
  • 🌍 Supports geo-targeting (country code) and language localization for region-specific results
  • ⏱️ Filters by duration (under 3 min, 3–20 min, over 20 min) and upload date (today, week, month, year)
  • 🎬 Applies video feature filters — HD, 4K, HDR, Live, Subtitles/CC, Creative Commons, 360°, VR180, and more
  • 📈 Sorts by relevance or popularity (view count)
  • ♾️ Paginates automatically — scrape hundreds or thousands of results per query
  • ⚡ Runs on lightweight infrastructure (128–512 MB) — fast and cost-efficient

The YouTube Search Scraper uses YouTube's own internal InnerTube API — the same API that powers youtube.com — so results are always fresh and accurate.

FieldDescription
idYouTube video, channel, or playlist ID
titleResult title as displayed on YouTube
descriptionDescription snippet from search results
typeContent type — video, channel, playlist, shorts, movie, or live
viewCountNumber of views (integer)
durationVideo length (e.g. 10:30, 1:05:22)
urlDirect URL to the video, channel, or playlist
thumbnailHigh-resolution thumbnail URL
dateEstimated publish date (ISO 8601)
channelNameChannel display name
channelUrlChannel URL
channelHandleChannel handle (e.g. @mkbhd)
channelThumbnailChannel avatar URL
searchQueryThe query that produced this result
scrapedAtTimestamp when the data was collected
rawFull raw response from YouTube's API

How to scrape YouTube search results

  1. Open the YouTube Search Scraper on Apify
  2. Enter your Search Query — any keyword or phrase (e.g. "python tutorial", "cooking recipes", "tech reviews")
  3. Set Max Results to control how many results to collect (default: 100)
  4. Optionally select a Result Type — Video, Channel, Playlist, Movie, or Shorts
  5. Apply filters: Sort By, Duration, Upload Date, Country, Language
  6. Toggle Video Features for specific requirements (HD, 4K, Subtitles, Live, etc.)
  7. Click Start and wait for results
  8. Export your data as JSON, CSV, or Excel from the dataset tab

Quick start input:

{
"query": "python tutorial",
"maxResults": 100,
"type": "video"
}

Filtered search — popular HD videos from this month:

{
"query": "machine learning",
"maxResults": 200,
"type": "video",
"sortBy": "popularity",
"duration": "3to20min",
"uploadDate": "month",
"features": {
"HD": true,
"subtitles": true
}
}

Localized search — Spanish tech videos in Spain:

{
"query": "tutoriales de programación",
"maxResults": 50,
"type": "video",
"geo": "ES",
"lang": "es"
}

Input parameters

ParameterTypeRequiredDefaultDescription
querystringYesKeywords to search for on YouTube
maxResultsintegerNo100Maximum number of results to return
scrapeAllResultsbooleanNofalseScrape all available results (overrides maxResults)
typestringNo(all)Filter by type: video, channel, playlist, movie, shorts
sortBystringNorelevanceSort order: relevance or popularity
durationstringNo(any)Filter by length: under3min, 3to20min, over20min
uploadDatestringNo(any)Time frame: today, week, month, year
geostringNo2-letter country code (e.g. US, GB, IN)
langstringNoLanguage code (e.g. en, es, fr)
featuresobjectNoVideo feature filters: HD, Subtitles, CC, 3D, Live, Purchased, 4K, 360, Location, HDR, VR180
localbooleanNofalseRequest localized data from YouTube

Output example

{
"id": "3URtTIdnXIk",
"title": "These CATS are too FUNNY! 🤣 | New Cat Videos 2025",
"description": "You like cats? We got em! No dogs! Just cats! Seriously, all cats!...",
"type": "video",
"viewCount": 15553834,
"duration": "1:00:17",
"url": "https://www.youtube.com/watch?v=3URtTIdnXIk",
"thumbnail": "https://i.ytimg.com/vi/3URtTIdnXIk/hq720.jpg?sqp=...",
"date": "2025-06-20T00:00:00Z",
"channelName": "The Pet Collective",
"channelUrl": "https://www.youtube.com/channel/UCPIvT-zcQl2H0vabdXJGcpg",
"channelHandle": "@petcollective",
"channelThumbnail": "https://yt3.ggpht.com/...",
"searchQuery": "cats",
"scrapedAt": "2026-06-20T14:58:23.000Z"
}

Use cases

  • Content research — Find trending videos in any niche to inform your content strategy
  • Competitor analysis — Track what content competitors are publishing and how it performs
  • Market research — Discover popular topics, emerging trends, and audience interests by keyword
  • Influencer discovery — Find channels and creators relevant to your brand or industry
  • SEO and keyword research — Analyze which YouTube keywords generate the most views and engagement
  • Academic research — Collect YouTube search data for social media studies and media analysis
  • Ad placement research — Identify high-performing content categories for YouTube advertising
  • Training data collection — Build datasets of video metadata for machine learning models
  • Playlist curation — Automatically find and organize videos by topic, duration, or popularity
  • Trend monitoring — Schedule daily/weekly runs to track how search results change over time

How much does it cost to scrape YouTube?

The YouTube Search Scraper uses pay-per-event pricing. You are charged per result scraped — no compute fees on top.

EventPrice per eventPrice per 1,000
result-scraped$0.001$1.00

Each result pushed to the dataset counts as one event. For example, scraping 500 YouTube search results costs $0.50.

Cost examples:

ScenarioResultsCost
Quick keyword research100$0.10
Comprehensive topic analysis1,000$1.00
Large-scale trend monitoring10,000$10.00

Apify Free plan includes $5/month in platform credits — enough for 5,000 results per month at no cost.

Integrations and API access

Use the YouTube Search Scraper programmatically via the Apify API, JavaScript client, or Python client.

Python:

from apify_client import ApifyClient
client = ApifyClient("YOUR_API_TOKEN")
run = client.actor("parsebird/youtube-search-scraper").call(run_input={
"query": "machine learning",
"maxResults": 200,
"type": "video",
"sortBy": "popularity",
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item["title"], item["viewCount"])

JavaScript:

import { ApifyClient } from "apify-client";
const client = new ApifyClient({ token: "YOUR_API_TOKEN" });
const run = await client.actor("parsebird/youtube-search-scraper").call({
query: "machine learning",
maxResults: 200,
type: "video",
sortBy: "popularity",
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => console.log(item.title, item.viewCount));

You can also connect the YouTube Search Scraper to Google Sheets, Slack, Zapier, Make, GitHub, and other platforms via Apify integrations. Schedule runs daily, weekly, or at any interval for automated YouTube data collection.

Scraping publicly available data from YouTube is generally considered legal based on the 2022 US appeals court ruling in hiQ Labs v. LinkedIn. This actor only accesses publicly available search results — it does not log in, bypass authentication, or download copyrighted video content.

Always review YouTube's Terms of Service and comply with applicable laws in your jurisdiction. For guidance, see Apify's guide to web scraping legality.

Other YouTube scrapers

Looking for more YouTube data? Check out these related actors on Apify:

FAQ

How many results can I scrape per run? The default is 100 results per run. You can increase maxResults to any number, or enable scrapeAllResults to paginate until YouTube stops returning results. YouTube typically returns up to a few hundred results per search query.

How fast is the YouTube Search Scraper? Very fast — it uses YouTube's internal API directly, so there's no browser rendering overhead. A typical run of 100 results completes in under 30 seconds. The actor uses only 128–512 MB of memory.

Can I filter by multiple video features at once? Yes. Enable multiple feature flags (HD, 4K, Subtitles, etc.) and they are combined with AND logic — only results matching all selected features are returned.

Can I schedule recurring runs? Yes. Use Apify's scheduling feature to run the scraper daily, weekly, or at any custom interval. Combine with integrations to automatically send results to Google Sheets, Slack, or a webhook.

What's the difference between this and the YouTube Data API? The YouTube Data API requires an API key, has strict daily quotas (10,000 units/day), and charges for additional usage. This scraper uses YouTube's internal API with no quotas and no API key needed. The output is comparable — titles, view counts, thumbnails, channel info, and more.

Does this scraper download videos? No. This actor only extracts search result metadata (titles, URLs, view counts, etc.). It does not download, stream, or store any video content.

What does the raw field contain? The raw field contains the full YouTube API response for each result. This includes additional data like badge info, thumbnail variants, and navigation endpoints that may be useful for advanced use cases.

Can I use this with my AI assistant or MCP server? Yes. Copy the AI assistant block from the top of this page into ChatGPT, Claude, or Cursor. You can also use the Apify MCP server to connect this actor to any AI agent framework.

Something isn't working. How do I get help? Open an issue in the Issues tab on the actor page. Include your input configuration and any error messages.