Scrape YouTube channels or keyword searches for video URLs, titles, metrics, transcripts, channel profiles, social links, descriptions and more. Fast, low-cost YouTube data extraction for monitoring, influencer research, SEO, and LLM workflows.
Added a channel search resolver for broken YouTube handle/vanity redirects, so URLs like @mktv can recover through the stable channel ID URL instead of returning zero rows when YouTube redirects the handle to a dead custom path.
Raised the default HTTP video-detail concurrency for hosted runs and added adaptiveTranscriptRetryConcurrency so transcript-heavy multi-channel runs can finish faster.
Batched final dataset writes for rows held during transcript recovery, reducing the chance that a short external run timeout leaves users with only early no-transcript rows.
Added videoDetailProxyStrategy so hosted runs can test proxy-first video detail scraping without proxying channel/search collection.
Added transcriptMode with standard and aggressive modes, while preserving the older residential transcript fallback option for compatibility.
Added adaptive transcript proxy recovery in standard mode so batches with poor direct transcript coverage can retry missing captions without making every successful run pay the aggressive fallback cost.
Bounded adaptive transcript recovery on larger runs with a round-robin retry sample across channels, preventing 100+ result runs from spending the whole timeout retrying every missing transcript while still retrying up to 80 missing transcript rows by default.
Added transcriptStatus, transcriptSource, and transcriptLanguage to make transcript availability easier to diagnose in Apify dataset views.
Stream completed dataset rows during processing so large runs preserve completed videos instead of waiting until the very end.
Improved publish-date parsing from exact watch-page date text before falling back to relative publishedTimeText.
Kept this actor focused on normal YouTube videos; Shorts collection belongs in the separate YouTube Shorts Scraper actor.
Made proxyMode: "auto" cheaper by stopping default residential retries for transcript-only misses; transcript proxy fallback now only runs when explicitly enabled.
Added stronger direct retries for incomplete video metadata before proxy fallback, and avoid caching failed channel About lookups as permanent misses.
Added hard HTTP request timeouts and relative publish-date recovery so slow proxy requests cannot hang a run and hosted rows do not lose publishedAt when YouTube only exposes publishedTimeText.
Improved direct video URL handling for youtu.be, /embed/, and /live/ formats.
Added direct retry recovery for transient high-concurrency video detail failures.
Added channel About/profile retry recovery for transient channel link and metadata misses.
Made multi-source runs resilient when one channel URL fails; valid sources still return rows and source errors are reported in run metadata.
2026-05-01
Improved video detail speed with parallel channel and video processing.
Added automatic proxy fallback mode to reduce residential proxy cost.
Improved transcript extraction using direct caption tracks before slower UI fallback.
Added richer channel metadata extraction for subscriber count, total videos, total views, profile image, banner image, and verification status.
Added dataset and output schemas so Apify users, APIs, and AI agents can understand the returned fields.
Reworked README and input descriptions for clearer setup, use cases, speed guidance, and transcript expectations.