YouTube Search Scraper — Video Results & Metadata
Pricing
from $5.00 / 1,000 results
YouTube Search Scraper — Video Results & Metadata
YouTube Search Scraper: scrape YouTube search results for any keyword, in bulk. Video titles, URLs, views, channels, upload dates, durations and thumbnails. Sort by views, filter by upload date, length or Shorts. No YouTube API key needed. Export to CSV, JSON, Excel or API.
Pricing
from $5.00 / 1,000 results
Rating
0.0
(0)
Developer
Maged
Maintained by CommunityActor stats
1
Bookmarked
304
Total users
30
Monthly active users
a day ago
Last modified
Categories
Features
Share
What does YouTube Search Scraper do?
YouTube Search Scraper lets you extract video results for any keyword from YouTube — no API quota to manage. Search for any term and get back video titles, URLs, view counts, uploaders, upload dates, thumbnails and durations — all as structured JSON, ready to analyze or pipe into your own tools.
This Actor runs on the Apify platform, which means you can schedule searches, export to CSV or Excel, and integrate results into any workflow via REST API.
Why use YouTube Search Scraper?
- No YouTube API key or quota — avoid YouTube Data API v3's strict 10,000 unit/day limit
- Batch keyword searches — run up to 100 search queries in one Actor run, with one start fee; every row says which query it came from
- Full metadata — view count, duration, upload date, channel, thumbnails, Shorts flag
- Automation-ready — schedule daily searches, connect to Google Sheets via Apify integrations
- Competitor & content research — track which videos rank for any keyword over time
How to use YouTube Search Scraper
- Go to the Actor page and click Try for free
- Enter one or more keywords in the
queriesinput field - Set the maximum number of results per keyword (default: 20)
- Click Start and wait a few seconds
- Download results as JSON, CSV, or Excel from the Output tab
Input
{"queries": ["best Python tutorials 2024", "machine learning explained"],"max_results": 20}
| Field | Type | Description | Default |
|---|---|---|---|
queries | array | Search keywords or phrases, each searched separately (up to 100) | required |
query | string | Single query (legacy field, still supported; merged with queries) | — |
max_results | integer | Max video results per query | 10 |
shorts_only / exclude_shorts | boolean | Keep only Shorts, or drop them | false |
min_duration / max_duration | integer | Duration limits in seconds | — |
upload_date_filter | string | last_24h, last_week, last_month or last_year | — |
sort_by | string | relevance or view_count (YouTube removed date and rating sorting in 2025) | relevance |
Output
Results are stored in the Apify dataset. Download in JSON, CSV, HTML, or Excel.
{"query": "best Python tutorials 2024","title": "Python Tutorial for Beginners - Full Course","video_id": "example","url": "https://www.youtube.com/watch?v=example","uploader": "Programming with Mosh","uploader_id": "@programmingwithmosh","upload_date": "20240115","duration": 22440,"view_count": 4200000,"thumbnail": "https://i.ytimg.com/vi/example/hqdefault.jpg","short": false}
Output fields
| Field | Type | Description |
|---|---|---|
query | string | The search query this row came from |
title | string | Video title |
video_id | string | YouTube video ID |
url | string | Full YouTube URL |
uploader / uploader_id | string | Channel name and handle |
upload_date | string | Upload date (YYYYMMDD), worked out from YouTube's "3 days ago" text, so older videos are approximate (to the month or year) |
duration | number | Duration in seconds |
view_count | number | View count |
thumbnail | string | Thumbnail image URL |
short | boolean | true for Shorts |
How many results will I get?
You're charged per result, so the cost follows the number of rows below. Your plan's rates are on the Pricing tab.
| Input | Results |
|---|---|
| 1 query, max results = 50 | Up to 50 rows |
| 3 queries, max results = 50 | Up to 150 rows |
| Max results = 500 | Up to 500 rows |
Each video is one row. Use Max results and the duration/date filters to keep runs focused. With Shorts only, YouTube lists Shorts as cards with title, views and thumbnail but no channel, date or length, so those fields are empty on Shorts rows.
Tips
- Set
max_resultsto50or higher to get more comprehensive data for each keyword - Run on a schedule (daily or weekly) to track ranking changes over time
- Combine with the YouTube Video Transcript Extractor Actor to also pull transcripts for found videos
- Use the Apify API to trigger searches programmatically from your own application
FAQ
Does this require a YouTube account or API key? No. The Actor accesses YouTube's public search interface directly.
How many results can I get per keyword?
YouTube typically returns up to 200 results per search query. Set max_results accordingly.
Can I search in a specific language or country? Yes — contact support for custom locale configurations.
Is this Actor maintained? Yes. Report bugs or feature requests in the Issues tab.
Need help or have questions? Open an issue in the Issues tab or reach out on Discord: maged03211
⭐ Found this Actor useful? A quick review on the Store helps other users find it and keeps it maintained.