YouTube Search Scraper - Videos, Views, $0.50/1K avatar

YouTube Search Scraper - Videos, Views, $0.50/1K

Pricing

from $0.28 / 1,000 videos

Go to Apify Store
YouTube Search Scraper - Videos, Views, $0.50/1K

YouTube Search Scraper - Videos, Views, $0.50/1K

YouTube search scraper API: up to 1,000 videos per keyword with exact views, duration, channel, handle, verified badge, 4K/CC/live badges and date, plus Shorts and live streams. Filters: upload date, length, HD, 4K, subtitles. No API key. $0.50 per 1,000 videos.

Pricing

from $0.28 / 1,000 videos

Rating

0.0

(0)

Developer

Khandji Omar

Khandji Omar

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

1

Monthly active users

3 days ago

Last modified

Features

Limited permissions

Share

YouTube Search Scraper — Videos, Views, $0.50/1K

YouTube search scraper API: up to 1,000 videos per keyword with exact views, duration, channel, handle, verified badge, 4K/CC/live badges and date, plus Shorts and live streams. Filters: upload date, length, HD, 4K, subtitles. No API key.

Price: $0.50 per 1,000 videos ($0.0005 per video). The first 10 results of every run are free.

In short: what you give, what you get, what it costs

You giveKeywords, with optional filters (upload date, length, HD, 4K, subtitles)
We doSearch YouTube
You getOne row per video: exact views, length, channel, handle, verified badge, 4K / CC / live badges, date and rank, plus Shorts and live streams
It costs$0.50 per 1,000 videos, no start fee. From 16 November 2026: +$0.001 per run. The first 10 results of every run are free. No supplier fee
It does notNeed a YouTube API key. YouTube stops one search after a few hundred results: split the search for more

A real result row is shown further down this page.

Free tier — 10 results free on every run

The first 10 results of every run are free, on every run you ever make — not a one-off trial. One guard: the free allowance never covers more than half of a run, so the offer stays sustainable.

Measured, not promised

Test of 18 October 2026 on Apify: "pixel art" and "home workout", 100 videos each, with video details on.

YouTube Search Scraper (om_kh)apidojo/youtube-scraper (same price)
Videos returned200 of 200 in 156 snot tested
Exact views, likes, comments, channel subscribers200, 197, 193, 200not tested
Runs that fail, last 30 days (Store figure)030,803 of 191,137 (16%)
Rating (Store)new3.3 stars (21 reviews)
Price per 1,000 videos$0.50$0.50

What you get

A real row from this Actor's latest run on Apify (2026-10-24; long texts are cut and people's names hidden here, your dataset has them in full):

{
"record_id": "https://www.youtube.com/watch?v=ix9cRaBkVe0",
"query_id": "python tutorial",
"title": "Python Full Course for free 🐍",
"url": "https://www.youtube.com/watch?v=ix9cRaBkVe0",
"text": "python #tutorial #beginners Python tutorial for beginners' full course 2024 *Learn Python in 1 HOUR* ...",
"author": "(hidden here)",
"published_at": "2024-10-24T07:00:48+00:00",
"videoId": "ix9cRaBkVe0",
"channelId": "UC4SVo0Ue36XCfOyb5Lh1viQ",
"channelUrl": "https://www.youtube.com/channel/UC4SVo0Ue36XCfOyb5Lh1viQ",
"viewCount": 13095866,
"duration": "12:00:00",
"durationSeconds": 43200,
"publishedTimeText": "2 years ago",
"thumbnailUrl": "https://i.ytimg.com/vi/ix9cRaBkVe0/hq720.jpg?sqp=-oaymwEXCNAFEJQDSFryq4qpAwkIARUAAIhCGAE=&rs=AOn4CLA3zOqGqeejlG_66zpDnm9pzuH_2Q",
"channelHandle": "(hidden here)",
"channelIsVerified": true,
"channelAvatarUrl": "(hidden here)",
"badges": [
"Fundraiser"
],
"isLive": false,
"hasCaptions": false,
"is4K": false,
"type": "video",
"searchRank": 1,
"searchQuery": "python tutorial",
"scrapedAt": "2026-10-24T19:00:50Z",
"extra_channelIsVerified": true,
"extra_badges": [
"Fundraiser"
],
"extra_isLive": false,
"extra_hasCaptions": false,
"extra_is4K": false
}

Each video contains: title, url, videoId, type (video, short or live), searchRank, author (channel name), channelId and channelUrl, viewCount (exact), duration and durationSeconds, published_at (ISO date) and publishedTimeText, text (description snippet), thumbnailUrl, searchQuery, scrapedAt and query_id (your search). With includeVideoDetails: likeCount, commentCount, channelSubscribers, channelHandle, channelThumbnail and the exact publication date. Up to 1,000 videos, 500 Shorts and 500 live streams per search term.

Every field

FieldWhat it holds
record_idstable ID of the row (used for new-only delivery)
query_idthe search, profile or category this row belongs to
titletitle
urlURL
texttext
authorauthor
published_atpublished at
videoIdvideo ID
channelIdchannel ID
channelUrlchannel URL
viewCountview count
durationduration
durationSecondsduration seconds
publishedTimeTextpublished time text
thumbnailUrlthumbnail URL
channelHandlechannel handle
channelIsVerifiedchannel is verified
channelAvatarUrlchannel avatar URL
badgesbadges
isLiveis live
hasCaptionshas captions
is4Kis4 k
typetype
searchRanksearch rank
searchQuerysearch query
scrapedAtscraped at
extra_channelIsVerifiedextra channel is verified
extra_badgesextra badges
extra_isLiveextra is live
extra_hasCaptionsextra has captions
extra_is4Kextra is4 k

How much does it cost?

$0.0005 per video — $0.50 per 1,000. You pay only for results actually delivered.

VideosCost
1,000$0.50
10,000$5.00
100,000$50.00
  • No per-run fee and no check fee.
  • Failed inputs are never charged, and maxTotalChargeUsd can cap any run.
  • The first 10 results of every run are free (never more than half of a run).
  • Larger Apify plans pay less per result automatically.

Example input

{
"searchTerms": ["ai agents tutorial"],
"uploadDate": "week",
"videoDuration": "long"
}
FieldWhat it does
searchTermsOne or more YouTube searches.
startUrlsYouTube search links (youtube.com/results?...): the words and filters of each link are used as they are.
maxResultsVideos per search, 0 to 1,000. Default 50.
maxShorts / maxLiveStreamsAlso return Shorts, or streams live now, for the same words (0 to 500 each).
sortByrelevance (default), views (YouTube's own order) or newest (the results read, newest first).
uploadDatehour, today, week, month or year — YouTube's own upload-date filter. Empty = any time.
videoDurationshort (< 4 min), medium (4-20 min) or long (> 20 min). Empty = any length.
videoTypevideo (default) or movie.
featureshd, 4k, hdr, subtitles, creative_commons, live, 360, vr180, 3d, location, purchased.
publishedAfterKeep videos published on or after a date (YYYY-MM-DD).
includeVideoDetailsLikes, comment count, exact date, channel subscribers and handle. Same price.

Turn on monitorEnabled and schedule the Actor to receive only results that are new since the last run.

Compared with delicious_zebu/youtube-video-scraper-by-keyword

Read on the Store on 2026-10-23 (YouTube Search Scraper - Videos & Shorts by Keyword). Where it does better, this section says so.

  • Built on the site's own data, not a resold scraper: no second Actor between you and the source.
  • Free results on every run and a hard cost cap (maxTotalChargeUsd).
  • Price: $0.5 per 1,000 here, $1.2 there.

Use cases

  • Content research — what is being published on a topic right now.
  • SEO and keyword ideas — titles and channels ranking for a query.
  • Creator discovery — channels active in your niche.
  • Trend watching — schedule it and see new uploads every day.

Why this one

  • First-party data. It reads YouTube's own public endpoints directly, with no resold scraper in between: fast, fresh and cheap.
  • Clean, normalized rows plus a RUN_SUMMARY.json with counts and signals.
  • YouTube's own filters: upload date (last hour to last year) and video length, applied by YouTube itself.
  • Hard cost cap with maxTotalChargeUsd.

How to use it in 3 steps

  1. Click Try for free and fill in YouTube search terms (searchTerms).
  2. Optional: adjust the other fields; every one has a description and a sensible default.
  3. Click Start and download the results as JSON, CSV or Excel, or read them from the API.

Use it from code (API)

Every Apify Actor is an API. Start a run and read the results with one call.

Python

from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run = client.actor("om_kh/vigia-youtube-search-monitor").call(run_input={"searchTerms": ["your brand", "competitor name"]})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item)

JavaScript

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: '<YOUR_APIFY_TOKEN>' });
const run = await client.actor('om_kh/vigia-youtube-search-monitor').call({
"searchTerms": [
"your brand",
"competitor name"
]
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

One HTTP call (cURL) — runs the Actor and returns the dataset in the same response:

curl -X POST "https://api.apify.com/v2/acts/om_kh~vigia-youtube-search-monitor/run-sync-get-dataset-items?token=<YOUR_APIFY_TOKEN>" \
-H "Content-Type: application/json" \
-d '{"searchTerms": ["your brand", "competitor name"]}'

Integrations: n8n, Make, Zapier, Google Sheets

  • n8n — the official Apify node, operation Run Actor and get dataset, Actor om_kh/vigia-youtube-search-monitor.
  • Make — Apify › Run an Actor, then Apify › Get Dataset Items.
  • Zapier — Apify › Run Actor; map the dataset items into your next step.
  • Google Sheets, webhooks, Slack — add an integration from the Integrations tab of this Actor.
  • Schedules — run it every hour or day from Schedules in Apify Console.

Use it from an AI agent (MCP and x402)

Connect Claude Desktop, Cursor, VS Code or any MCP client to Apify's MCP server at https://mcp.apify.com and add this Actor, om_kh/vigia-youtube-search-monitor, as a tool — the agent passes the same JSON as the run input and gets the dataset back.

AI agents that pay with x402 can run it too, without an Apify account: the Actor charges only per result delivered, so an agent pays exactly for what it gets.

Limits to know

  • YouTube stops a single search after a few hundred results: in our test, "python tutorial" gave 300 videos in 66 seconds. For more, split the search (by upload date, length or wording).
  • YouTube no longer sorts a search by upload date or by rating. views is YouTube's own order; newest reorders what the run read.
  • Search dates are labels like "3 weeks ago". Turn on includeVideoDetails for the exact date. In our test it filled likes for 14 of 16 videos; a video YouTube serves without its counters keeps empty fields.
  • Shorts combined with a short upload-date filter can return nothing: YouTube applies both filters together.

FAQ

Can I get only recent videos, or only long ones? Yes. uploadDate: "today" (or hour, week, month, year) and videoDuration: "long" (or short, medium) use YouTube's own search filters, so results match exactly what the YouTube filter menu shows.

Is it legal to scrape YouTube? This Actor collects only publicly available YouTube data and never logs in. You are responsible for how you use it; check YouTube's terms and your local law (GDPR, CCPA) if you store personal data, and ask a lawyer if unsure.

Do I need an account, cookies or an API key? No. You only need an Apify account to run it.

What data do I get? Videos with title, channel, views and publish date. Download it as JSON, CSV, Excel, HTML or XML, or read it from the API.

Am I charged when something fails? No. An input that fails is listed with its reason in the run summary and is never charged.

Can I run it on a schedule? Yes. Create a schedule in Apify Console (hourly, daily, weekly) and connect webhooks, Google Sheets, Slack, n8n, Make or Zapier.

Can I use it from Python, JavaScript or an AI agent? Yes: see the code samples above, or connect AI agents through MCP with the youtube_search_new_videos tool.

All input fields

The main fields are described above; these are the others the form accepts:

  • currentItems (Bring your own items (optional)) — Optional: pass records you already have instead of fetching them from YouTube.
  • sources (Declared upstream sources and estimated costs) — Declare every upstream source before this run. Each item needs name, authorization, and estimated_cost_usd.

Your feedback

Did this Actor save you time? A short review on the Reviews tab helps other people find it, and every review is read. Something missing or broken? Open an issue on the Issues tab: it is answered and fixed fast.

More Actors from the same author