How to Find TikTok Influencers and Build a Creator Database

by Simon Balfe··Updated

The fastest way to find TikTok influencers at scale is to search creators by niche, enrich each result with live profile and video data, calculate engagement, and save qualified creators in a structured database. Manual scrolling works for a shortlist of five. It breaks when an agency, marketplace, or analytics product needs hundreds of repeatable results.

This guide walks you through how to find TikTok influencers using data, how to evaluate them with the right metrics, and how to build your own TikTok influencer database with the CreatorCrawl API.

#How to find TikTok influencers quickly

Use this five-step workflow:

  1. Search TikTok creators using niche keywords and adjacent terms.
  2. Pull live follower counts, bios, regions, and recent posts.
  3. Calculate engagement from several recent videos instead of one viral outlier.
  4. Filter by audience size, region, posting frequency, and engagement.
  5. Save the qualified creators in a database you can refresh before each campaign.

For a single creator, start with the free TikTok profile viewer. For repeatable discovery, use the TikTok influencer database workflow.

#Why TikTok influencer discovery matters

TikTok gives brands access to creators across almost every niche, audience size, and market. That breadth is useful, but it also makes manual discovery inconsistent and difficult to repeat.

The brands that win on TikTok are the ones that can:

  • Find niche creators whose audience matches their target market
  • Evaluate engagement quality, not just follower counts
  • Move quickly before competitors lock in the same creators
  • Scale discovery across multiple niches and campaigns simultaneously

All of this requires a data-driven approach.

#Manual methods vs. data-driven discovery

#The manual approach

Most teams start by searching TikTok directly: browsing hashtags, checking the For You page, or Googling "top fitness influencers on TikTok." This works when you need 5 creators. It breaks down when you need 50 or 500.

Manual discovery has several problems:

  • You only find creators the algorithm surfaces to you
  • Evaluating engagement requires opening each profile individually
  • There is no way to filter by follower range, location, or engagement rate
  • Results are not reproducible or shareable with a team
  • It takes hours per campaign

#The data-driven approach

A data-driven approach uses API calls to search, filter, and rank creators based on objective metrics. Instead of scrolling, you write queries. Instead of eyeballing engagement, you calculate it. Instead of a messy spreadsheet, you build a structured database.

Here is what that looks like in practice:

  1. Search for creators by keyword, niche, or hashtag
  2. Pull detailed profile data and recent video metrics for each result
  3. Calculate engagement rates and filter by your criteria
  4. Rank and export a shortlist

The rest of this guide shows you how to build this pipeline.

#Key metrics to evaluate TikTok influencers

Not every creator with a large following is a good partner. Here are the metrics that matter:

#Follower count

The baseline metric. Useful for segmenting creators into tiers:

TierFollowersTypical use case
Nano1K-10KNiche communities, high trust
Micro10K-100KEngaged audiences, cost-effective
Mid-tier100K-500KBroad reach with decent engagement
Macro500K-1MWide reach, brand awareness
Mega1M+Mass awareness campaigns

#Engagement rate

The most important metric. A creator with 50K followers and a 10% engagement rate will outperform one with 500K followers and a 0.5% rate for most campaign goals.

Calculate it as:

Engagement rate = (avg likes + avg comments) / follower count * 100

Benchmarks for TikTok:

  • Below 3%: Low engagement
  • 3% to 6%: Average
  • 6% to 10%: Good
  • Above 10%: Excellent

#Content consistency

Look at how frequently a creator posts and whether their content style is consistent. A creator who posts daily in your niche is more valuable than one who posts sporadically across random topics.

#Audience demographics

Check the creator's region, language, and the type of people engaging in their comments. If you are selling products in the US, a creator with a primarily non-English-speaking audience is not a fit regardless of their numbers.

#Content quality

Review recent videos for production quality, originality, and brand safety. This is harder to automate but essential for final selection.

#What to store in a TikTok influencer database

A useful creator database needs enough data to filter candidates now and refresh them later.

FieldWhy it matters
Handle and profile URLStable identity for enrichment and outreach
Name, bio, category, and regionNiche and market relevance
Follower and following countsAudience size and account context
Recent post metricsViews, likes, comments, and consistency
Calculated engagement rateComparable quality signal across creators
Posting frequencyIndicates whether the account is active
Last refreshed timestampPrevents decisions based on stale metrics
Campaign notes and statusKeeps research connected to outreach

#Building a TikTok influencer database with CreatorCrawl

#Prerequisites

  1. Sign up for CreatorCrawl (50 free credits, no card required)
  2. Generate an API key from your dashboard
  3. Python 3.7+ or Node.js 18+ installed

#Step 1: Search for creators by niche

Start by searching for creators matching your target niche:

Python:

import requests

API_KEY = "your_api_key_here"
BASE_URL = "https://app.creatorcrawl.com/api"

def search_creators(query, cursor=None):
    params = {"query": query}
    if cursor:
        params["cursor"] = cursor

    response = requests.get(
        f"{BASE_URL}/tiktok/search/users",
        params=params,
        headers={"x-api-key": API_KEY}
    )
    response.raise_for_status()
    return response.json()

results = search_creators("skincare routine")

for creator in results["data"]:
    print(f"@{creator['handle']} ({creator['name']})")
    print(f"  Followers: {creator['follower_count']:,}")
    print(f"  Videos: {creator.get('post_count', 0)}")
    print(f"  Total likes: {creator.get('total_likes', 0):,}")

JavaScript:

const API_KEY = 'your_api_key_here'
const BASE_URL = 'https://app.creatorcrawl.com/api'

async function searchCreators(query, cursor) {
  const params = new URLSearchParams({ query })
  if (cursor) params.set('cursor', cursor)

  const response = await fetch(
    `${BASE_URL}/tiktok/search/users?${params}`,
    { headers: { 'x-api-key': API_KEY } }
  )
  if (!response.ok) throw new Error(`Search failed: ${response.status}`)
  return response.json()
}

const results = await searchCreators('skincare routine')

for (const creator of results.data) {
  console.log(`@${creator.handle} (${creator.name})`)
  console.log(`  Followers: ${creator.follower_count.toLocaleString()}`)
  console.log(`  Videos: ${creator.post_count ?? 0}`)
}

#Step 2: Pull detailed profile data

For each promising creator, get their full profile:

def get_profile(handle):
    response = requests.get(
        f"{BASE_URL}/tiktok/profile",
        params={"handle": handle},
        headers={"x-api-key": API_KEY}
    )
    response.raise_for_status()
    return response.json()["data"]

profile = get_profile("charlidamelio")

print(f"Bio: {profile['bio']}")
print(f"Followers: {profile['follower_count']:,}")
print(f"Following: {profile.get('following_count', 0):,}")
print(f"Total likes: {profile.get('total_likes', 0):,}")
print(f"Video count: {profile.get('post_count', 0)}")
print(f"Verified: {profile['verified']}")

#Step 3: Analyze engagement from recent videos

Pull a creator's recent videos and calculate their real engagement rate:

def calculate_engagement(handle):
    response = requests.get(
        f"{BASE_URL}/tiktok/profile/videos",
        params={"handle": handle, "sort_by": "latest"},
        headers={"x-api-key": API_KEY}
    )
    response.raise_for_status()
    videos = response.json()["data"]

    profile = get_profile(handle)
    followers = profile["follower_count"]

    if followers == 0:
        return 0

    if not videos:
        return 0

    total_engagement = 0
    for video in videos:
        likes = video.get("like_count", 0)
        comments = video.get("comment_count", 0)
        total_engagement += likes + comments

    avg_engagement = total_engagement / len(videos)
    engagement_rate = (avg_engagement / followers) * 100

    return round(engagement_rate, 2)

rate = calculate_engagement("charlidamelio")
print(f"Engagement rate: {rate}%")

#Step 4: Filter and rank influencers

Combine everything into a pipeline that searches, evaluates, and ranks creators:

def build_influencer_shortlist(query, min_followers=10000, min_engagement=3.0):
    search_results = search_creators(query)
    shortlist = []

    for creator in search_results["data"]:
        handle = creator["handle"]
        followers = creator["follower_count"]

        if not handle:
            continue

        if followers < min_followers:
            continue

        engagement_rate = calculate_engagement(handle)

        if engagement_rate < min_engagement:
            continue

        shortlist.append({
            "handle": handle,
            "name": creator["name"],
            "followers": followers,
            "total_likes": creator.get("total_likes", 0),
            "video_count": creator.get("post_count", 0),
            "engagement_rate": engagement_rate,
        })

    shortlist.sort(key=lambda x: x["engagement_rate"], reverse=True)
    return shortlist

creators = build_influencer_shortlist("vegan recipes", min_followers=50000, min_engagement=5.0)

for creator in creators:
    print(f"@{creator['handle']} | {creator['followers']:,} followers | {creator['engagement_rate']}% engagement")

#Step 5: Export to CSV

Save your shortlist for sharing with clients or importing into your CRM:

import csv

def export_to_csv(shortlist, filename="influencers.csv"):
    if not shortlist:
        print("No creators to export")
        return

    keys = shortlist[0].keys()
    with open(filename, "w", newline="") as f:
        writer = csv.DictWriter(f, fieldnames=keys)
        writer.writeheader()
        writer.writerows(shortlist)
    print(f"Exported {len(shortlist)} creators to {filename}")

export_to_csv(creators)

#Filtering strategies by use case

#By niche

Search for niche-specific keywords: "fitness coach," "beauty tutorial," "cooking recipe," "tech review." Run multiple searches with variations to cast a wider net.

#By engagement quality

Set minimum engagement rate thresholds. For nano and micro influencers, look for 8%+ engagement. For macro creators, 3%+ is strong.

#By region

Use the profile data to filter by the creator's region field. If you need US-based creators, filter for region == "US".

#By posting frequency

Calculate posts per week from the create_time timestamps on recent videos. Active creators (3+ posts per week) are more likely to deliver on campaign timelines.

#Next steps

Now that you can find and evaluate TikTok influencers programmatically:

Get started with 50 free credits and build your influencer database today.

Explore CreatorCrawl

Try the free social media tools

Test transcripts, comments, profiles, channels, and tweets in your browser before moving to bulk API access.

More from the Blog

Takes 60 seconds

Add one line to your
MCP config. Ship today.

50 free credits. No card. Works with Claude, Cursor, Zed, and any MCP client.