tiktokanalyticssocial

Social Media Analytics for Public Accounts

Native TikTok/Instagram analytics only cover your own account. Third-party APIs analyze any public account for influencer vetting and competitor tracking.

8 min

TikTok and Instagram native analytics only show data for your own account. To analyze competitors, vet influencers, or track any public account, you need third-party analytics via API. The TikTok API endpoints return profile stats, post engagement, and hashtag data for any public account. Instagram API coverage is coming soon.

Use cases for public account analytics

  • Influencer vetting: verify follower counts, engagement rates, and posting consistency before signing deals
  • Competitor tracking: monitor posting frequency, content themes, and audience growth over time
  • Campaign attribution: track hashtag usage and video performance for UGC campaigns
  • Market research: understand what content formats and topics resonate in your niche

TikTok profile analysis

Python
import requests, os

KEY = os.environ["SCAVIO_API_KEY"]
H = {"Authorization": f"Bearer {KEY}", "Content-Type": "application/json"}
BASE = "https://api.scavio.dev/api/v1/tiktok"

def analyze_influencer(username: str):
    """Full influencer analysis: profile + recent posts."""
    # Step 1: get profile and sec_uid
    profile = requests.post(f"{BASE}/profile",
        headers=H, json={"username": username}).json()
    sec_uid = profile.get("sec_uid")
    followers = profile.get("follower_count", 0)

    # Step 2: get recent posts using sec_uid
    posts_resp = requests.post(f"{BASE}/user/posts",
        headers=H, json={"sec_uid": sec_uid, "count": 30}).json()
    posts = posts_resp.get("posts", [])

    # Calculate engagement metrics
    if posts and followers > 0:
        total_likes = sum(p.get("digg_count", 0) for p in posts)
        total_comments = sum(p.get("comment_count", 0) for p in posts)
        total_views = sum(p.get("play_count", 0) for p in posts)
        avg_engagement_rate = (total_likes + total_comments) / len(posts) / followers * 100
    else:
        avg_engagement_rate = 0
        total_views = 0

    return {
        "username": username,
        "followers": followers,
        "total_posts": profile.get("video_count", 0),
        "avg_engagement_rate": round(avg_engagement_rate, 2),
        "avg_views_per_post": int(total_views / max(len(posts), 1)),
        "posts_analyzed": len(posts),
    }

# 2 API calls = $0.01 per influencer analysis
result = analyze_influencer("creator_username")
print(f"Engagement rate: {result['avg_engagement_rate']}%")
print(f"Avg views: {result['avg_views_per_post']}")

Batch influencer vetting

Python
def vet_influencer_list(usernames: list, min_engagement: float = 2.0):
    """Vet a list of influencers, flag those below engagement threshold."""
    vetted = []
    for username in usernames:
        try:
            analysis = analyze_influencer(username)
            analysis["passes_threshold"] = analysis["avg_engagement_rate"] >= min_engagement
            vetted.append(analysis)
        except Exception as e:
            vetted.append({"username": username, "error": str(e)})
    return vetted

# 20 influencers x 2 calls each = 40 API calls = $0.20
candidates = ["creator_a", "creator_b", "creator_c"]
results = vet_influencer_list(candidates, min_engagement=2.0)
for r in results:
    status = "PASS" if r.get("passes_threshold") else "FAIL"
    print(f"{r['username']}: {r.get('avg_engagement_rate', 0)}% - {status}")

What engagement rate actually means

TikTok engagement rates vary wildly by niche and follower count. Accounts under 10K followers often show 5-15% engagement rates. Accounts over 1M followers typically show 1-3%. A "good" rate depends on the creator's size. Do not compare a 5K-follower micro-influencer's 8% engagement to a 2M-follower creator's 1.5% -- both may be performing well for their tier.

Cost comparison with analytics platforms

  • HypeAuditor: $299-$499/mo for influencer analytics
  • CreatorIQ: enterprise pricing, typically $1,000+/mo
  • API-based approach: 100 influencer analyses/mo = 200 API calls = $1/mo
  • The API approach requires building your own dashboard but costs 99% less