YouTube Search Scraper - Videos & Shorts by Keyword
Pricing
from $0.50 / 1,000 results
YouTube Search Scraper - Videos & Shorts by Keyword
Scrape YouTube search results for any keyword in the same order as on YouTube: videos or Shorts with exact views, likes, publish date, duration, tags and channel stats like subscribers and country. Filter by upload date, duration, features, popularity and country.
Pricing
from $0.50 / 1,000 results
Rating
5.0
(30)
Developer
Zebu Data
Maintained by CommunityActor stats
39
Bookmarked
314
Total users
133
Monthly active users
14 days ago
Last modified
Categories
Share
What does YouTube Search Scraper do?
YouTube Search Scraper gets the videos YouTube shows for any keyword, in the same order as the search results page, and returns them as clean, structured data: title, link, exact views and likes, exact publish date, duration, description, tags and category, plus the stats of each video's channel: subscribers, total views, country and links. It works as an unofficial YouTube search API alternative: no API key, no quota and no login.
Type your keywords, set the same filters you'd use on YouTube (upload date, duration, type, features, popularity, country), click Start, and download the results as JSON, CSV or Excel.
Why use YouTube Search Scraper?
- π The same filters as YouTube: Type (Videos or Shorts), Upload date, Duration, Features (Live, 4K, HD, Subtitles/CC, Creative Commons and more) and Prioritize (Relevance or Popularity), plus the country you search from.
- π’ Exact numbers you can sort: exact view and like counts and a UTC publish timestamp, next to the text YouTube shows (
81,484 views,1 year ago). - π₯ Find creators, not just videos: every row includes the channel's subscribers, total views, country, links and whether it lists a business email.
- π Clean, ordered results: each row says which keyword found it and its rank in the results; duplicates that YouTube repeats while paging are removed, so you don't pay for them.
- π¬ Videos, Shorts and live streams: each item is marked
Video,ShortorLive. - β‘ Fast and lightweight: no browser. Set Results per keyword to get exactly as many videos as you need.
Popular use cases: keyword and topic research, competitor and trend tracking, finding influencers in a niche, content ideas, SEO for YouTube, and building video datasets for analytics or AI.
| YouTube Search Scraper | YouTube Data API | Copying by hand | |
|---|---|---|---|
| API key / Google Cloud project | Not needed | Required | Not needed |
| Daily quota | None | 100 searches per day by default | β |
| Same order as the YouTube website | Yes | Not guaranteed | Yes |
| Channel stats on every row | Yes | Extra requests | Slow |
| Export to CSV / Excel / JSON | Yes | Needs code | Manual |
What data can you extract?
Video fields
| Field | Description | Example |
|---|---|---|
title | Video title | Give me 8 Minutes and You'll Win at SEO in 2025 |
detail_url | Link to the video | https://www.youtube.com/watch?v=vE_A4IhmkKQ |
video_id | YouTube video ID | vE_A4IhmkKQ |
search_keyword | The keyword that found it | SEO tips |
rank | Position in the search results | 1 |
video_type | Kind of video | Video, Short or Live |
view_count_exact | Exact view count | 81487 |
view_count | Views as YouTube shows them | 81,484 views |
like_count | Like count | 1915 |
published_at_exact | Exact publish date and time in UTC | 2025-07-23T11:01:35Z |
published_at | Publish time as YouTube shows it | 1 year ago |
duration | Video length | 8:11 |
duration_seconds | Video length in seconds | 491 |
description | Description snippet from the results page | In this video, you'll learn the best SEO tips ... |
video_description | Full description | In this video, you'll learn ... |
video_category | YouTube category | Howto & Style |
video_tags | Tags set by the creator | ["seo tips", "seo strategy"] |
is_family_safe | Whether YouTube marks it as family safe | true |
image | Thumbnail image | https://i.ytimg.com/vi/vE_A4IhmkKQ/hq720.jpg?... |
scraped_at | When the result was scraped (UTC) | 2026-10-05T07:59:30Z |
Channel fields (on every row)
| Field | Description | Example |
|---|---|---|
publisher | Channel name | Ahrefs |
channel_handle | Channel handle | @AhrefsCom |
channel_id | Channel ID | UCWquNQV8Y0_defMKnGKrFOQ |
channel_url | Link to the channel | https://www.youtube.com/@AhrefsCom |
channel_subscriber_count | Subscribers, rounded like YouTube shows them | 680000 |
channel_total_views | Total views of all the channel's videos | 34326681 |
channel_video_count | Number of videos on the channel | 428 |
channel_country | Country from the channel's About panel | United States |
channel_joined_date | Date the channel joined YouTube | 2015-08-08 |
channel_is_verified | Has the verified badge | true |
channel_has_business_email | Whether the channel lists a business email (the email itself needs a YouTube sign-in and is not scraped) | false |
channel_links | Links from the channel's About panel | [{"title": "Twitter", "url": "http://twitter.com/ahrefs"}] |
channel_description | Channel description | Ahrefs TV publishes actionable digital marketing tutorials ... |
channel_avatar_url | Profile picture | https://yt3.ggpht.com/... |
How to scrape YouTube search results
- Click Try for free on this page and sign in to Apify (a free account is enough).
- In Search keywords, type one keyword or phrase per line.
- Set Results per keyword and any filters you'd use on YouTube: Type, Upload date, Duration, Features, Prioritize and Country.
- Click Start. The log shows each page as it's scraped.
- Download the results as JSON, CSV, Excel or HTML, or get them through the API.
How much does it cost to scrape YouTube search results?
You only pay for the videos you get, and duplicates are removed before they are counted. See the Pricing tab for the current price.
To keep a run within budget:
- Set Results per keyword to the number of videos you need.
- Set a Max cost per run in the run options. The Actor stops as soon as the limit is reached.
New to Apify? The free plan includes monthly platform credit, so you can try this Actor at no cost.
Input
| Field | Type | Default | Description |
|---|---|---|---|
Search keywords (search_keywords) | List | β | Keywords or phrases, one per line. Required. |
Results per keyword (max_results) | Number | 0 (all) | How many videos to take for each keyword, in YouTube's order. |
Type (type) | Select | videos | videos (regular videos and live streams) or shorts. Same as Filters β Type. |
Upload date (upload_date) | Select | any | any, today, this_week, this_month or this_year. Same as Filters β Upload date. |
Duration (duration) | Select | any | any, under_3, 3_to_20 or over_20 minutes. Same as Filters β Duration. |
Features (features) | Multi-select | none | live, 4k, hd, subtitles, creative_commons, 360, vr180, 3d, hdr, location, purchased. Videos must have all the features you pick. |
Prioritize (sort_by) | Select | relevance | relevance or popularity. Same as Filters β Prioritize. |
Country (country) | Select | US | The country you search from, like YouTube's Location setting. |
Exact details and channel stats (fetch_video_details) | Checkbox | true | Adds the exact publish date, likes, full description, category, tags and channel stats. Turn off for the fastest run. |
The top 50 videos for a few keywords
{"search_keywords": ["SEO tools", "link building", "keyword research"],"max_results": 50}
This month's most popular long reviews
{"search_keywords": ["iphone 17 review"],"upload_date": "this_month","duration": "over_20","sort_by": "popularity","max_results": 30}
Shorts about a topic, searched from Germany
{"search_keywords": ["meal prep"],"type": "shorts","country": "DE","max_results": 100}
Output
Each video is one item in the dataset, in the order YouTube shows them. Here is a real item (descriptions and links shortened):
{"title": "Give me 8 Minutes and You'll Win at SEO in 2025","publisher": "Ahrefs","view_count": "81,484 views", // Live streams show "10,724 watching"; Shorts show "402K views""published_at": "1 year ago", // Empty for live streams on air and for Shorts"detail_url": "https://www.youtube.com/watch?v=vE_A4IhmkKQ","duration": "8:11", // Empty for live streams on air"description": "In this video, you'll learn the best SEO tips that will change the way you do SEO in the AI era. ...","video_id": "vE_A4IhmkKQ","image": "https://i.ytimg.com/vi/vE_A4IhmkKQ/hq720.jpg?sqp=...","search_keyword": "SEO tips","rank": 1,"video_type": "Video","view_count_exact": 81487,"duration_seconds": 491,"channel_id": "UCWquNQV8Y0_defMKnGKrFOQ","channel_handle": "@AhrefsCom","channel_url": "https://www.youtube.com/@AhrefsCom","channel_is_verified": true,"channel_avatar_url": "https://yt3.ggpht.com/WGSuLikxFMe3DsJ6z4n1-V0Md5q6RWJDP-QYWjoxHOAzT7Xxv...","scraped_at": "2026-10-05T07:59:30Z","published_at_exact": "2025-07-23T11:01:35Z", // The fields below are null when Exact details is off"like_count": 1915, // null when the creator hides likes"video_description": "In this video, you'll learn the best SEO tips that will change the way you do SEO in the AI era. ...","video_category": "Howto & Style","video_tags": ["seo tips", "seo strategy", "seo", "search engine optimization", "seo techniques"],"is_family_safe": true,"channel_subscriber_count": 680000,"channel_total_views": 34326681,"channel_video_count": 428,"channel_country": "United States", // null when the channel sets no country"channel_joined_date": "2015-08-08","channel_has_business_email": false,"channel_links": [{ "title": "Ahrefs", "url": "https://ahrefs.com/" },{ "title": "Twitter", "url": "http://twitter.com/ahrefs" }],"channel_description": "Ahrefs TV publishes actionable digital marketing tutorials on SEO and YouTube marketing. ..."}
Tips and limitations
- YouTube stops after a few hundred results per keyword (usually 300β500). To get more videos on a topic, add related keywords or split it with filters, such as different upload dates.
- Sorting by upload date is no longer offered by YouTube's search. Use Upload date (for example "This week") to get recent videos, and sort by
published_at_exactafterwards. - Track a topic over time: schedule a run daily or weekly with Upload date set to "Today" or "This week".
- Shorts show almost nothing on the search page, so the Actor always looks up their channel, publish date and length.
- Live streams on air show the current viewers in
view_countand have no duration or publish time yet;view_count_exactholds their total views. - Subscriber counts are rounded the same way YouTube shows them publicly (680K becomes
680000). - Results differ by country, so set Country to the market you care about.
- Need the full details of specific videos, all videos of a channel, or the comments? See the related Actors below.
FAQ
Is it legal to scrape YouTube?
This Actor only collects data that YouTube shows publicly. Our Actors are ethical and do not extract any private user data, such as email addresses, gender, or location. They only extract what the user has chosen to share publicly. We therefore believe that our Actors, when used for ethical purposes by Apify users, are safe. However, you should be aware that your results could contain personal data. Personal data is protected by the GDPR in the European Union and by other regulations around the world. You should not scrape personal data unless you have a legitimate reason to do so. If you're unsure whether your reason is legitimate, consult your lawyers.
Do I need a YouTube API key or account?
No. Type your keywords and start the run.
Are the results in the same order as on YouTube?
Yes. Videos are saved in the order YouTube shows them, and rank gives each video's position for its keyword, so you can always sort back to YouTube's order.
Why did I get fewer results than I asked for?
YouTube only shows a limited number of results for each search, and fewer when you use filters. The status message of the run tells you how many videos each keyword returned.
Do I pay for duplicates?
No. YouTube sometimes repeats a video while you scroll through results; the Actor keeps only the first one for each keyword.
Can I scrape YouTube Shorts and live streams?
Yes. Choose Shorts in Type to get Shorts, or pick Live in Features to get live streams.
Can I use it through the API or with AI agents?
Yes. You can run it with the Apify API, the Python and JavaScript clients, integrations such as Make, Zapier and n8n, or the Apify MCP server for AI agents. Set Results per keyword so an agent always gets a predictable number of videos.
Related Actors
| Actor | What it does |
|---|---|
| YouTube Transcript Scraper - Subtitles & Captions API | Transcripts and subtitles of any video, in every language it has |
| YouTube Video Details Scraper - Views, Likes & Channel Stats | Full details of any list of video links |
| YouTube Channel Scraper - All Videos, Views & Dates | Every video, Short and live stream of a channel |
| YouTube Comments Scraper - Replies, Likes & Shorts | Comments and replies of any video |
Support
Found a problem or need another field? Open an issue in the Issues tab and we'll get back to you.