mcpField
A
apify-audience-analysis

apify-audience-analysis

github.com/apifyMarketing & growth28582 installsUpdated 5w ago
Repository

About apify-audience-analysis

This skill uses Apify Actors to collect follower, engagement, and behavioral data across platforms for audience analysis. It selects Actors according to the analysis goal and supports data exports and demographic summaries.

Key features

  1. 01Select Apify Actors by analysis goal
  2. 02Fetch Actor input schemas
  3. 03Run analyses and export CSV or JSON
  4. 04Summarize audience demographics

Use cases

  1. 01Analyze Facebook followers and content engagement
  2. 02Study Instagram audience size and tagged networks
  3. 03Analyze TikTok followers or YouTube comments

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/apify/awesome-skills --skill apify-audience-analysis

After installing, type/apify-audience-analysisin Claude Code to confirm it loaded.

Bundled filesreference/scripts/fetch_actor_details.jsreference/scripts/run_actor.js

Details

From the project README

Audience Analysis

Analyze and understand your audience using Apify Actors to extract follower demographics, engagement patterns, and behavior data from multiple platforms.

Prerequisites

(No need to check it upfront)

  • .env file with APIFY_TOKEN
  • Node.js 20.6+ (for native --env-file support)

Workflow

Copy this checklist and track progress:

Task Progress:
- [ ] Step 1: Identify audience analysis type (select Actor)
- [ ] Step 2: Fetch Actor schema
- [ ] Step 3: Ask user preferences (format, filename)
- [ ] Step 4: Run the analysis script
- [ ] Step 5: Summarize findings
Step 1: Identify Audience Analysis Type

Select the appropriate Actor based on analysis needs:

User NeedActor IDBest For
Facebook follower demographicsapify/facebook-followers-following-scraperFB followers/following lists
Facebook engagement behaviorapify/facebook-likes-scraperFB post likes analysis
Facebook video audienceapify/facebook-reels-scraperFB Reels viewers
Facebook comment analysisapify/facebook-comments-scraperFB post/video comments
Facebook content engagementapify/facebook-posts-scraperFB post engagement metrics
Instagram audience sizingapify/instagram-profile-scraperIG profile demographics
Instagram location-basedapify/instagram-search-scraperIG geo-tagged audience
Instagram tagged networkapify/instagram-tagged-scraperIG tag network analysis
Instagram comprehensiveapify/instagram-scraperFull IG audience data
Instagram API-basedapify/instagram-api-scraperIG API access
Instagram follower countsapify/instagram-followers-count-scraperIG follower tracking
Instagram comment exportapify/export-instagram-comments-postsIG comment bulk export
Instagram comment analysisapify/instagram-comment-scraperIG comment sentiment
YouTube viewer feedbackstreamers/youtube-comments-scraperYT comment analysis
YouTube channel audiencestreamers/youtube-channel-scraperYT channel subscribers
TikTok follower demographicsclockworks/tiktok-followers-scraperTT follower lists
TikTok profile analysisclockworks/tiktok-profile-scraperTT profile demographics
TikTok comment analysisclockworks/tiktok-comments-scraperTT comment engagement
Step 2: Fetch Actor Schema

Fetch the Actor's input schema and details:

node --env-file=.env ${CLAUDE_PLUGIN_ROOT}/reference/scripts/fetch_actor_details.js --actor "ACTOR_ID"

Replace ACTOR_ID with the selected Actor (e.g., apify/facebook-followers-following-scraper).

This returns:

  • Actor info (title, description, URL, categories, stats, rating)
  • README summary
  • Input schema (required and optional parameters)
Step 3: Ask User Preferences

Skip this step for simple lookups (e.g., "what's Nike's follower count?", "find me 5 coffee shops in Prague") — just use quick answer mode and move to Step 4.

For larger scraping tasks, ask:

  1. Output format:
    • Quick answer - Display top few results in chat (no file saved)
    • CSV - Full export with all fields
    • JSON - Full export in JSON format
  2. Number of results: Based on character of use case

Cost safety: Always set a sensible result limit in the Actor input (e.g., maxResults, resultsLimit, maxCrawledPages, or equivalent field from the input schema). Default to 100 results unless the user explicitly asks for more. Warn the user before running large scrapes (1000+ results) as they consume more Apify credits.

Step 4: Run the Script

Quick answer (display in chat, no file):

node --env-file=.env ${CLAUDE_PLUGIN_ROOT}/reference/scripts/run_actor.js \
  --actor "ACTOR_ID" \
  --input 'JSON_INPUT'

CSV:

node --env-file=.env ${CLAUDE_PLUGIN_ROOT}/reference/scripts/run_actor.js \
  --actor "ACTOR_ID" \
  --input 'JSON_INPUT' \
  --output YYYY-MM-DD_OUTPUT_FILE.csv \
  --format csv

JSON:

node --env-file=.env ${CLAUDE_PLUGIN_ROOT}/reference/scripts/run_actor.js \
  --actor "ACTOR_ID" \
  --input 'JSON_INPUT' \
  --output YYYY-MM-DD_OUTPUT_FILE.json \
  --format json
Step 5: Summarize Findings

After completion, report:

  • Number of audience members/profiles analyzed
  • File location and name
  • Key demographic insights
  • Suggested next steps (deeper analysis, segmentation)

Error Handling

APIFY_TOKEN not found - Ask user to create .env with APIFY_TOKEN=your_token Actor not found - Check Actor ID spelling Run FAILED - Ask user to check Apify console link in error output Timeout - Reduce input size or increase --timeout

Comments

Markdown supported