From gtm-skills
Researches YouTube topics and competitors, analyzes video transcripts for viral patterns, queries YouTube Data API v3 for stats, comments, channels, and search results. Useful for video planning and content strategy research.
npx claudepluginhub manojbajaj95/claude-gtm-plugin --plugin gtm-skillsThis skill is limited to using the following tools:
Three modes in one skill:
Researches YouTube video topics by analyzing competitors, identifying content gaps, and documenting strategic insights in Markdown files. Use before video planning for performance opportunities.
Researches YouTube competitor channels, analyzes videos and engagement, identifies content gaps and trending topics for strategy.
Analyzes YouTube channels, videos, and search results using Data API v3. Fetches stats, views, subscribers, engagement metrics, comparisons, and trends. Requires API key.
Share bugs, ideas, or general feedback.
Three modes in one skill:
export YOUTUBE_API_KEY="your-api-key-here"
Important: When piping curl output, wrap the command in
bash -c '...'to preserve env vars:bash -c 'curl -s "https://..." -H "..." | jq .'
Search Videos:
bash -c 'curl -s "https://www.googleapis.com/youtube/v3/search?part=snippet&q=YOUR_QUERY&type=video&maxResults=10&order=viewCount&key=${YOUTUBE_API_KEY}"' | jq '.items[] | {videoId: .id.videoId, title: .snippet.title, channel: .snippet.channelTitle}'
Get Video Details (stats, duration):
bash -c 'curl -s "https://www.googleapis.com/youtube/v3/videos?part=snippet,statistics,contentDetails&id=VIDEO_ID&key=${YOUTUBE_API_KEY}"' | jq '.items[0] | {title: .snippet.title, views: .statistics.viewCount, likes: .statistics.likeCount, duration: .contentDetails.duration}'
Get Channel by Handle:
bash -c 'curl -s "https://www.googleapis.com/youtube/v3/channels?part=snippet,statistics&forHandle=@HANDLE&key=${YOUTUBE_API_KEY}"' | jq '.items[0] | {id: .id, title: .snippet.title, subscribers: .statistics.subscriberCount, videos: .statistics.videoCount}'
Get Video Comments:
bash -c 'curl -s "https://www.googleapis.com/youtube/v3/commentThreads?part=snippet&videoId=VIDEO_ID&maxResults=20&order=relevance&key=${YOUTUBE_API_KEY}"' | jq '.items[] | {author: .snippet.topLevelComment.snippet.authorDisplayName, text: .snippet.topLevelComment.snippet.textDisplay, likes: .snippet.topLevelComment.snippet.likeCount}'
Get Trending Videos:
bash -c 'curl -s "https://www.googleapis.com/youtube/v3/videos?part=snippet,statistics&chart=mostPopular®ionCode=US&maxResults=10&key=${YOUTUBE_API_KEY}"' | jq '.items[] | {title: .snippet.title, channel: .snippet.channelTitle, views: .statistics.viewCount}'
Quota: 10,000 units/day. Search = 100 units. Most others = 1 unit.
See YouTube Data API docs for full reference.
Conduct research before planning a new video. Focus on insights and big levers — not data dumping.
Step 0: Create research file
Save all research to: ./youtube/episode/[episode_number]_[topic_short_name]/research.md
If it already exists, read it and continue from where it left off.
Step 1: Understand the topic
Step 2: Research your own channel
Use the API to find related videos you've already published. Document:
Step 3: Competitor research
Search for 5–8 top videos on the topic. For each:
Step 4: Content gap analysis
Document:
Rating criteria:
# [Episode]: [Topic] - Research
## Episode Overview
**Topic**: [Brief description]
**Target Audience**: [Who this is for]
**Goal**: [What viewers will learn/gain]
## YouTube Research
### Your Previous Videos
[Related videos with metrics]
### Top Competing Videos
[5-8 videos: title, channel, views, angle, what works]
### Key Insights
[Patterns and findings synthesized]
## Content Gap Analysis
### What's Already Well-Covered
[List]
### Content Gaps (Opportunities)
[Rated list with ⭐ ratings]
### Recommended Focus
[Specific angle and unique value proposition]
## Production Notes
**Status**: Research Complete
**Created**: [Date]
Use the Task tool to run research tasks in parallel for faster results. Each task should have a focused, specific objective (e.g., "Search for top 8 videos on X and get their stats"). Synthesize findings after all tasks complete.
Next step: Use youtube-content skill to plan the video based on this research.
Forensic deconstruction of video transcripts to extract viral formulas, hooks, and retention mechanics.
Auto-fetch:
python skills/youtube-research/scripts/fetch_transcript.py "YOUTUBE_URL_OR_VIDEO_ID"
Manual paste: YouTube's built-in transcript (click "..." → "Show transcript") or ytscribe.ai.
Approach the transcript like a crime scene — extract everything systematically. See reference/analysis-framework.md for the full checklist and templates.
Analyze these 11 dimensions:
Structure output with all 11 sections. End with a Quick Reference Cheatsheet — one-page summary of all extracted patterns for rapid implementation.
bash -c 'curl ...' with $YOUTUBE_API_KEYmcp__plugin_yt-content-strategist_youtube-analytics__search_videos, get_video_details, get_channel_detailsWebSearch and WebFetch for industry trends and context