apidojo-io/apidojo-skills

finding-tiktok-ugc-creators-for-brands

Finds TikTok UGC creators for brand campaigns using apidojo's TikTok scrapers on Apify.

View source
Original skill document

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

Finding TikTok UGC Creators for Brands

Discovers TikTok micro-creators who produce authentic product content. UGC creators (1K–100K followers) deliver the highest ROI for paid campaigns — authentic feel, affordable rates, and high engagement relative to follower count.

Prerequisites

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

Inputs

ParameterTypeRequiredDefaultNotes
startUrlsarrayOptional[]TikTok URLs — user profiles, hashtags, music pages, search, locations
keywordsarrayOptional[]Search keywords/terms to find posts
sortTypestringOptionalRELEVANCESort order for keyword results: RELEVANCE, MOST_LIKED, DATE_POSTED
locationstringOptional—ISO 3166-1 alpha-2 country code for regional filtering (e.g. US, GB)
maxItemsnumberOptionalUnlimitedMaximum posts to return across the run
includeSearchKeywordsbooleanOptionalfalseAdd the matched search keyword field to each post
customMapFunctionstringOptional—JavaScript function to transform each output object

Workflow

Progress:
- [ ] Step 1: Search hashtags for niche UGC content
- [ ] Step 2: Collect creator handles from search
- [ ] Step 3: Enrich profiles
- [ ] Step 4: Score UGC fit
- [ ] Step 5: Deliver creator roster

Step 1: Build Hashtag Searches

Hashtags for niche: #[niche]review, #[niche]haul, #[niche]unboxing, #[niche]honest review,
                    #[niche]foryou, #ugc[niche], #[niche]tiktokmademebuyit

Example for skincare:

["#skincarereviews", "#skincarehaul", "#skincaretiktok", "#ugcskincare", "#honestskincarereview"]

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~tiktok-scraper" \
  --input '{"param": "value"}'

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

# Save as JSON
node scripts/run_actor.js \
  --actor "apidojo~tiktok-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~tiktok-scraper"
Input:
{
  "keywords": ["#[niche]review", "#[niche]haul", "#ugc[niche]"],
  "maxItems": 200
}

REST API fallback:

bash
curl -X POST   "https://api.apify.com/v2/acts/apidojo~tiktok-scraper/runs?token=$APIFY_TOKEN"   -H "Content-Type: application/json"   -d '{
    "keywords": ["#skincarereviews", "#skincarehaul"],
    "maxItems": 200
  }'

Collect unique authorMeta.name (handles) with > 2 posts in niche.

Step 2: Enrich Creator Profiles

If Apify MCP is available:

Tool: apify:run-actor
Actor: "apidojo~tiktok-profile-scraper"
Input:
{
  "profiles": ["https://www.tiktok.com/@[handle1]", "https://www.tiktok.com/@[handle2]"]
}

REST API fallback:

bash
curl -X POST   "https://api.apify.com/v2/acts/apidojo~tiktok-profile-scraper/runs?token=$APIFY_TOKEN"   -H "Content-Type: application/json"   -d '{"profiles": ["https://www.tiktok.com/@handle1"]}'

Step 3: Score UGC Fit

engagement_rate = (avg_likes + avg_comments) / follower_count * 100

view_to_follower_ratio = avg_views / follower_count

ugc_score = (engagement_rate > 5 ? 1 : engagement_rate / 5) * 0.35
          + (view_to_follower_ratio > 1 ? 1 : view_to_follower_ratio) * 0.30
          + (follower_count in 5000..50000 ? 1 : 0.6) * 0.20
          + (posts_in_niche >= 3 ? 1 : posts_in_niche / 3) * 0.15

UGC tier classification:

  • TIER 1 (score ≥ 0.75): High engagement, consistent niche content — ideal for paid UGC
  • TIER 2 (score 0.50–0.74): Good engagement, some niche overlap — worth testing
  • TIER 3 (score < 0.50): Low engagement or single niche post — aspirational / monitoring list

Step 4: Edge Cases

  • Brand accounts appear in hashtag results: Drop entries where bio contains "Official", "brand", "@company" — keep only individual creators
  • Views from single viral video inflating avg: Calculate avg from last 10 posts; flag if std_dev > 3× avg (viral outlier)
  • Creator posts in multiple niches: Track niche_concentration = niche_posts / total_posts; flag if < 30%
  • Inactive creators: Skip if lastPostDate > 60 days ago

Output Format

# TikTok UGC Creator Roster: [NICHE]
Creators evaluated: [N] | TIER 1: [N] | TIER 2: [N] | Date: [DATE]

## TIER 1 — Prime UGC Creators
| Creator | Handle | Followers | Avg Views | Eng Rate | View/Follower | Niche % | Score |
|---------|--------|-----------|-----------|----------|---------------|---------|-------|
| [name] | @[handle] | [N] | [N] | [X%] | [X.X×] | [X%] | [0.XX] |

## TIER 2 — Worth Testing
| Creator | Followers | Avg Views | Eng Rate | Last Active |
|---------|-----------|-----------|----------|------------|

## Niche Hashtag Performance
| Hashtag | Posts Scraped | Avg Views per Post | Top Creator Found |
|---------|--------------|-------------------|-------------------|

Troubleshooting

Too many brand accounts: Tighten filter — drop accounts with follower_count > 500K and accounts with verification badge. Hashtag returns mainly brand posts: Switch to user-driven hashtags: #tiktokmademebuyit[niche], #[niche]recommendation. Creators found aren't making product content: Use hashtags that explicitly signal product review intent rather than broad niche tags.

from this repository

More skills

All skills
apidojo-io
Community

analyzing-competitor-instagram-content-strategy

Analyzes a competitor's Instagram content strategy and performance using apidojo's Instagram scraper on Apify. Triggers when the user asks to: analyze what a competitor posts on Instagram, benchmark a competitor's Instagram engagement, see what content types perform best for a competitor on Instagram, reverse-engineer a competitor's Instagram content calendar, identify content gaps vs. a competitor on Instagram, compare posting frequency or content themes, or understand why a competitor's Instag

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

scraping-tiktok-user-data

Scrapes detailed TikTok user data and recent video history using apidojo's TikTok User scraper on Apify. Triggers when the user asks to: get all videos from a TikTok account, fetch a TikTok creator's recent posts and stats, export a TikTok user's video history, scrape all TikTok content from a specific creator, get TikTok post data by username, or collect video-level metrics from a TikTok profile. Returns per-video view count, likes, comments, shares, captions, and timestamps for a given account

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

monitoring-trending-topics-twitter-by-niche

Monitors trending topics and conversations in a specific niche on Twitter using apidojo's Twitter Search scraper. Triggers when the user asks to: monitor trending topics in a niche on Twitter, track what's being discussed in an industry on X right now, find emerging conversations in a sector on Twitter, see what topics are trending in a specific community, track real-time buzz around a business topic on Twitter, or identify breaking trends before they hit mainstream media. Returns trending topic

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

scraping-twitter-list-members

Scrapes all members and their profile data from any public Twitter/X list using apidojo's Twitter List scraper on Apify. Triggers when the user asks to: get all members of a Twitter list, export accounts in a Twitter list, scrape profiles from a curated Twitter list, fetch the usernames in a public Twitter list, download data from a Twitter list URL, or collect profile stats for everyone on a list. Returns username, bio, follower count, and profile metadata for each list member. Ideal for compet

installs
2
GitHub stars
1
Updated
May 13