apidojo-io/apidojo-skills

analyzing-youtube-competitor-channel-strategy

Analyzes competitor YouTube channel strategy and content performance using apidojo's YouTube scraper.

View source

How to use

  1. Copy the installation command and review the source package before installing it in your own agent environment.
  2. Check the source document for required tools, credentials and supported hosts.
  3. Describe your input and desired deliverable; review the output against the source material.
npx skills add https://github.com/apidojo-io/apidojo-skills --skill analyzing-youtube-competitor-channel-strategy

Before you start

  • Installation does not include a model subscription, API allowance or permission to access your files.
  • Repository stars and installation counts describe activity, not an independent quality or security test.
Original skill document

Rendered from the source repository. Headings, examples, code, tables, links, and referenced images are preserved.

Analyzing Youtube Competitor Channel Strategy

Executes analyzing youtube competitor channel strategy using apidojo scrapers. Part of the apidojo intelligence skills library.

Prerequisites

  • APIFY_TOKEN environment variable set
  • Optional: Apify MCP server installed

Inputs

ParameterTypeRequiredDefaultNotes
startUrlsarrayOptional[]YouTube URLs — channels, playlists, Shorts, search results
youtubeHandlesarrayOptional[]YouTube channel handles (e.g. @kurzgesagt)
getTrendingbooleanOptionalfalseRetrieve trending videos
keywordsarrayOptional[]Search keywords
glstringOptionalusCountry code for results (e.g. US, GB)
hlstringOptionalenLanguage code (e.g. en, de)
uploadDatestringOptionalallUpload date filter: any, hour, today, week, month, year
durationstringOptionalallDuration filter: any, short, long
featuresstringOptionalallFeature filter: 4k, hd, live, cc, 3d, hdr, etc.
sortstringOptionalrSort order for search results
maxItemsnumberOptionalUnlimitedMaximum videos to return
customMapFunctionstringOptional—JavaScript function to transform each output object

Workflow

Progress:
- [ ] Step 1: Define parameters
- [ ] Step 2: Run youtube-scraper
- [ ] Step 3: Filter and classify results
- [ ] Step 4: Score by quality and relevance
- [ ] Step 5: Deliver output

Step 2: Run the Actor

Recommended — run_actor.js (handles waiting, output, and file saving automatically):

bash
# Quick answer (prints table to chat)
node scripts/run_actor.js \
  --actor "apidojo~youtube-scraper" \
  --input '{"param": "value"}'

# Save as CSV
node scripts/run_actor.js \
  --actor "apidojo~youtube-scraper" \
  --input '{"param": "value"}' \
  --output YYYY-MM-DD_results.csv --format csv

# Save as JSON
node scripts/run_actor.js \
  --actor "apidojo~youtube-scraper" \
  --input '{"param": "value"}' \
  --output YYYY-MM-DD_results.json --format json
APIFY_TOKEN must be set in environment or .env file.

If Apify MCP is available:

Tool: apify:run-actor
Actor: "apidojo~youtube-scraper"
Input:
{
  "searchTerms": "https://www.youtube.com/@[COMPETITOR_CHANNEL]",
  "maxItems": 100
}

REST API fallback:

bash
curl -X POST \
  "https://api.apify.com/v2/acts/apidojo~youtube-scraper/runs?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"searchTerms": "https://www.youtube.com/@[COMPETITOR_CHANNEL]", "maxItems": 100}'

Wait for SUCCEEDED. Fetch dataset:

bash
curl "https://api.apify.com/v2/actor-runs/$RUN_ID/dataset/items?token=$APIFY_TOKEN"

Step 3: Classify Results

classification: GROWING (view rate > 20%) | HEALTHY (10-20%) | PLATEAU (5-10%) | DECLINING (< 5%)

Step 4: Score Each Result

score = channel_health = avg_views/subscriber_count * 100  # view rate; healthy > 10%

Step 5: Edge Cases

  • Channels with old viral videos have inflated subscriber counts relative to current performance — use median views from last 20 videos as the current health indicator

Additional fallbacks:

  • < 20 results: Broaden search terms; remove secondary filters
  • No results: Verify the search terms are correct; try alternate phrasings
  • Data quality issues: Remove entries with missing key fields; note count in output

Output Format

# Analyzing Youtube Competitor Channel Strategy
Results: [N] | Date: [DATE]

| # | [Key Field] | [Metric 1] | [Metric 2] | [Classification] | [Score] |
|---|------------|-----------|-----------|-----------------|---------|
| 1 | [value] | [value] | [value] | [type] | [0.XX] |

## Summary
Top result: [description]
Key finding: [insight]

Troubleshooting

Too few results: Broaden the primary search term; remove restrictive filters. Low quality results: Apply minimum score threshold (≥ 0.50) to filter noise. Actor fails to run: Verify API key; check actor status at apify.com/apidojo.

Related by task

from this repository

More skills

All skills
apidojo-io
Community

building-twitter-prospect-lists

Builds targeted B2B prospect lists from Twitter/X profiles and posts using apidojo's Twitter scrapers on Apify. Triggers when the user asks to: find Twitter users with a specific job title or keyword in bio, build a list of founders or executives on Twitter, find people tweeting about a topic for outreach, identify potential customers on X, scrape Twitter profiles matching an ICP description, find decision-makers in a specific industry on Twitter, or export a list of leads from Twitter bios. Ret

installs
2
GitHub stars
1
Updated
May 13
apidojo-io
Community

scraping-instagram-location-posts

Scrapes Instagram posts tagged at a specific location or place using apidojo's Instagram Location scraper on Apify. Triggers when the user asks to: get Instagram posts from a location, scrape photos tagged at a restaurant or hotel, fetch Instagram content from an event or venue, collect posts from a geographic area on Instagram, export location- tagged Instagram media, or find what people post from a specific place on Instagram. Returns post URL, author handle, caption, likes, comments, and time

installs
2
GitHub stars
1
Updated
May 13
apidojo-io
Community

scraping-tiktok-profile-data

Scrapes TikTok profile statistics and metadata for any list of accounts using apidojo's TikTok Profile scraper on Apify. Triggers when the user asks to: get TikTok profile stats for an account, fetch follower count and engagement data for TikTok users, scrape TikTok account metadata in bulk, export TikTok profile information for a list of creators, check TikTok stats for multiple usernames, or get bio and follower data from TikTok profiles. Returns username, follower count, following count, tota

installs
1
GitHub stars
1
Updated
May 13
apidojo-io
Community

scraping-youtube-channel-info

Extracts YouTube channel metadata, subscriber counts, video counts, and descriptions using apidojo's YouTube Channel Scraper on Apify. Triggers when the user asks to: get YouTube channel information, scrape YouTube channel stats, fetch subscriber count for a YouTube channel, export channel metadata in bulk, find YouTube channels by keyword, get channel descriptions and tags, check if a YouTube channel is verified, or research YouTube channels by niche. Returns channel name, subscriber count, vid

installs
1
GitHub stars
1
Updated
May 13