skills/apify/awesome-skills/apify-market-research

apify-market-research

Originally fromapify/agent-skills
SKILL.md

Market Research

Conduct market research using Apify Actors to extract 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 market research 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 Market Research Type

Select the appropriate Actor based on research needs:

User Need Actor ID Best For
Market density compass/crawler-google-places Location analysis
Geospatial analysis compass/google-maps-extractor Business mapping
Regional interest apify/google-trends-scraper Trend data
Pricing and demand apify/facebook-marketplace-scraper Market pricing
Event market apify/facebook-events-scraper Event analysis
Consumer needs apify/facebook-groups-scraper Group research
Market landscape apify/facebook-pages-scraper Business pages
Business density apify/facebook-page-contact-information Contact data
Cultural insights apify/facebook-photos-scraper Visual research
Niche targeting apify/instagram-hashtag-scraper Hashtag research
Hashtag stats apify/instagram-hashtag-stats Market sizing
Market activity apify/instagram-reel-scraper Activity analysis
Market intelligence apify/instagram-scraper Full data
Product launch research apify/instagram-api-scraper API access
Hospitality market voyager/booking-scraper Hotel data
Tourism insights maxcopell/tripadvisor-reviews Review analysis

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., compass/crawler-google-places).

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 results found
  • File location and name
  • Key market insights
  • Suggested next steps (deeper analysis, validation)

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

Weekly Installs
20
GitHub Stars
2
First Seen
13 days ago
Installed on
gemini-cli19
github-copilot19
codex19
amp19
cline19
kimi-cli19