API Free WeekHundreds of APIs are free to call this week.Browse free APIs

Detect fake views in video

https://api.sandbase.ai/v1/api/tiktok/analytics/detect-fake-views

Check whether a TikTok video has fake views. Paste a video ID and get a fake-view score, the estimated share of inflated views, and a risk level, based on engagement ratios, follower growth, creator credibility and TikTok's traffic-pool tiers. Built for creators, MCN agencies and brands vetting influencers.

Price
Free
Method
POST
Response
JSON
Parameters
1 required · 1 optional
Production route

Try the model

Playground

Open playground
Input
TikTok video ID: the number after /video/ in the video URL. For https://www.tiktok.com/@tiktok/video/7460937381265411370 the ID is 7460937381265411370.
Content category used to pick engagement-rate benchmarks. Use verified_large for verified accounts with very large followings. Allowed values: default, entertainment, education, product, verified_large.
OutputExample
Responseoutputs · 6.7 KB · 217 lines
[
  {
    "data": {
      "content_metrics": {
        "content_type": "video",
        "created_by_ai": false,
        "creation_time": 1737134867,
        "high_quality_upload": true,
        "racing_metrics": {}
      },
      "creator_metrics": {
        "account_age_days": 4238.667337962963,
        "expected_views_from_followers": 28824003.9,
        "follower_count": 96080013,
        "follower_view_ratio": 1.6866194845331672,
        "trust_score": 100,
        "verified": true
      },
      "data_sources": {
        "creator_data_available": true,
        "video_info_available": true,
        "video_metrics_available": true
      },
      "detailed_analysis": {
        "consistency": {
          "consistency_score": 0,
          "correlation_issues": [],
          "issues": [
            "Insufficient data for engagement consistency analysis"
          ]
        },
        "content_authenticity": {
          "authenticity_score": 34,
          "content_type": "video",
          "created_by_ai": false,
          "edited_content": false,
          "high_quality_upload": true,
          "issues": [],
          "suspicious_editing": false
        },
        "creator_credibility": {
          "account_age_days": 4238.667337962963,
          "credibility_score": 0,
          "follower_count": 96080013,
          "issues": [
            "Suspicious: Reached 100000 followers from 10000 in only 31 days"
          ],
          "trust_score": 100,
          "verified": true
        },
        "distribution": {
          "distribution_score": 0,
          "issues": [
            "Insufficient view data for distribution analysis"
          ],
          "pattern_type": "insufficient_data"
        },
        "engagement": {
          "benchmark_category": "verified_large",
          "engagement_health_score": 100,
          "engagement_metrics": {
            "comment_ratio": 0.0022209507112545502,
            "favorite_ratio": 0.006781716372204202,
            "like_ratio": 0.09827476413483206,
            "share_ratio": 0.008135369126036586
          },
          "engagement_suspicion_score": 0,
          "issues": []
        },
        "fan_growth": {
          "fan_growth_score": 45,
          "growth_rates": [
            0.2903225806451613,
            0.06153846153846154,
            0.03333333333333333
          ],
          "issues": [
            "Suspicious: Account gaining 22671 followers per day on average"
          ],
          "suspicious_indicators": [
            "high_growth_rate"
          ],
          "suspicious_milestones": 0
        },
        "follower_correlation": {
          "correlation_score": 35,
          "expected_views": 28824003.9,
          "follower_tier": "xxlarge",
          "follower_view_ratio": 1.6866194845331672,
          "is_verified": true,
          "issues": [],
          "tier_benchmarks": {
            "like_follower_ratio": {
              "avg": 0.002,
              "good": 0.01,
              "min": 0.0005
            },
            "view_ratio": {
              "avg": 0.02,
              "good": 0.1,
              "min": 0.005
            }
          }
        },
        "racing_mechanism": {
          "issues": [
            "Insufficient data: No racing mechanism metrics available"
          ],
          "metrics": {},
          "racing_score": 0,
          "suspicious_metrics": []
        },
        "statistical_anomalies": {
          "anomalies_detected": false,
          "anomaly_scores": [],
          "method": "insufficient_data"
        }
      },
      "fake_view_analysis": {
        "component_scores": {
          "consistency_score": 0,
          "content_authenticity_score": 34,
          "creator_credibility_score": 0,
          "distribution_score": 0,
          "engagement_score": 0,
          "fan_growth_score": 45,
          "follower_correlation_score": 35,
          "racing_mechanism_score": 0
        },
        "confidence_level": "Minimal",
        "estimated_fake_views": 8102521,
        "fake_score": 4.34,
        "fake_view_percentage": 5,
        "is_suspicious": false,
        "main_detection_reason": "Multiple Anomalous Indicators"
      },
      "mcn_report": {
        "business_impact": {
          "brand_safety_impact": {
            "details": "Risk level minimal based on fake view score of 4.34",
            "level": "minimal"
          },
          "contract_impact": {
            "details": "No immediate contract impact expected",
            "monetization_affected": false
          },
          "platform_relationship": {
            "details": "Relationship status: good",
            "status": "good"
          },
          "revenue_impact": {
            "currency": "USD",
            "details": "Estimated 8102521 fake views at average CPM of $1.00",
            "estimated_amount": 8102.521,
            "level": "low"
          }
        },
        "historical_context": {
          "account_age_days": 4238.667337962963,
          "follower_count": 96080013,
          "verified_status": true
        },
        "recommended_actions": [
          "No immediate action required",
          "Include in routine monitoring"
        ],
        "summary": {
          "estimated_fake_views": 8102521,
          "estimated_revenue_impact": 8102.521,
          "fake_score": 4.34,
          "fake_view_percentage": 4.999999938290812,
          "recommended_actions": "No immediate action required",
          "video_id": "unknown"
        }
      },
      "ml_adaptation_recommendations": [],
      "recommendations": {
        "action": "no_action",
        "potential_revenue_impact": "minimal",
        "risk_level": "low",
        "suggested_steps": [
          "No immediate action required",
          "Include in routine monitoring"
        ]
      },
      "suspicious_features": [
        "Suspicious: Reached 100000 followers from 10000 in only 31 days",
        "Suspicious: Account gaining 22671 followers per day on average"
      ],
      "timestamp": "2026-10-05T17:00:58.323038",
      "traffic_pool": {
        "current_tier": 8,
        "current_tier_name": "8th-Level Traffic Pool",
        "current_views_range": "30M+",
        "estimated_organic_views": 155017433,
        "expected_tier": 8,
        "expected_tier_name": "8th-Level Traffic Pool",
        "expected_views_range": "30M+"
      },
      "video_id": "7460937381265411370",
      "video_metrics": {
        "engagement_rates": {
          "comment_ratio": 0.00222,
          "favorite_ratio": 0.00678,
          "like_ratio": 0.09827,
          "share_ratio": 0.00814
        },
        "total_comments": 359906,
        "total_favorites": 1098980,
        "total_likes": 15925467,
        "total_shares": 1318340,
        "total_views": 162050422
      },
      "view_pattern_type": "insufficient_data"
    }
  }
]

Examples

Select an example to load its inputs and result into the playground.

Model card

Specifications

Pricing

Base price
Free

Request & response

Method
POST
Request body
application/json
Response
application/json
Execution
sync

Parameters

item_id
string · required
content_category
string (default, entertainment, education, product, verified_large) · optional

Access

Provider
TikTok
API
Platform API
Base URL
https://api.sandbase.ai
Endpoint
/v1/api/tiktok/analytics/detect-fake-views
Authentication
Bearer API key

API README

TikTok Fake View Checker

Find out whether a TikTok video's views are real. Give this API a video ID and it returns a fake-view score, the estimated number and percentage of fake views, a risk level, and the specific signals that look suspicious.

Who it is for

  • Brands and agencies vetting influencers before signing a sponsorship deal.
  • MCN agencies monitoring the traffic quality of the creators they manage.
  • Creators checking whether a sudden spike in views is organic.

How to use it

  1. Copy the TikTok video URL, e.g. https://www.tiktok.com/@tiktok/video/7460937381265411370.
  2. Take the number after /video/. That is the item_id: 7460937381265411370.
  3. Optionally set content_category (default, entertainment, education, product, verified_large) so engagement is compared against the right benchmark.
  4. Run it in the playground above, or call the API:
curl -X POST "https://api.sandbase.ai/v1/api/tiktok/analytics/detect-fake-views" \
  -H "Authorization: Bearer $SANDBASE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"item_id": "7460937381265411370"}'

What the report checks

The score combines eight dimensions and 20+ metrics:

DimensionWhat it looks at
Engagement healthLike, comment, share and favorite ratios against category benchmarks
Follower correlationViews compared with what an account of this follower tier usually gets
Fan growthFollower milestones and abnormal daily growth
Creator credibilityAccount age, verification and trust score
Content authenticityAI-generated or heavily edited content flags
Traffic poolCurrent vs. expected TikTok traffic-pool tier (level 1 to 8)
Distribution and consistencyHow views and engagement are spread and whether they move together
Statistical anomaliesOutliers that point to bought or bot traffic

Example result

Real output for the video above (trimmed):

{
  "fake_view_analysis": {
    "fake_score": 4.34,
    "fake_view_percentage": 5.0,
    "estimated_fake_views": 8102490,
    "is_suspicious": false,
    "confidence_level": "Minimal"
  },
  "traffic_pool": {
    "current_tier_name": "8th-Level Traffic Pool",
    "expected_tier_name": "8th-Level Traffic Pool",
    "current_views_range": "30M+"
  },
  "suspicious_features": [
    "Suspicious: Account gaining 22670 followers per day on average"
  ],
  "recommendations": {
    "risk_level": "low",
    "action": "no_action",
    "suggested_steps": ["No immediate action required", "Include in routine monitoring"]
  }
}

How to read the result

  • fake_view_analysis.fake_score: overall suspicion score; higher means more likely to be inflated.
  • fake_view_analysis.is_suspicious: quick yes/no verdict.
  • fake_view_analysis.fake_view_percentage and estimated_fake_views: how much of the view count is likely fake.
  • suspicious_features: plain-language reasons behind the score.
  • recommendations.risk_level and suggested_steps: what to do next.
  • mcn_report: business impact summary (brand safety, estimated revenue impact) for agency reports.

The result is a statistical estimate, not a verdict from TikTok. Use it to screen and prioritize, and combine it with your own review for high-stakes decisions.

Related TikTok analytics APIs

Start building

Send your first request

Platform API endpoint with unified authentication and usage tracking.

Production API
Platform API endpoint
https://api.sandbase.ai/v1/api/tiktok/analytics/detect-fake-views
Authorization header
Authorization: Bearer $SANDBASE_API_KEY
# The quoted heredoc keeps Unicode and shell metacharacters unchanged.
result=$(curl --fail-with-body --silent \
  -X POST "https://api.sandbase.ai/v1/api/tiktok/analytics/detect-fake-views" \
  -H "Authorization: Bearer $SANDBASE_API_KEY" \
  -H "Content-Type: application/json" \
  --data-binary @- <<'SANDBASE_JSON'
{
  "item_id": "7460937381265411370",
  "content_category": "default"
}
SANDBASE_JSON
)
printf '%s\n' "$result"

Explore more

Related APIs

All APIs
APIPriceResponseReleased
TikTokFreeJSONJul 31, 2026
TikTokFreeJSONJul 31, 2026
TikTokFreeJSONJul 31, 2026
TikTokFreeJSONJul 31, 2026
TikTokFreeJSONJul 31, 2026
TikTokFreeJSONJul 31, 2026

Questions

FAQ

How do I use the Detect fake views in video API?

Send a POST request to https://api.sandbase.ai/v1/api/tiktok/analytics/detect-fake-views with your SandBase API key in the Authorization header (Bearer) and the parameters as a JSON body. You can also try it in the Playground on this page without writing code.

How much does the Detect fake views in video API cost?

Detect fake views in video is free to call on SandBase. You only need a SandBase account and API key.

What parameters does the Detect fake views in video API accept?

Required: item_id (string). Optional: content_category (one of default, entertainment, education, product, verified_large). The Parameters table and the Playground on this page list every field.

What does the Detect fake views in video API return?

A JSON response returned in the same HTTP request (synchronous). The README on this page includes a sample response.

Do I need a TikTok developer account or API key?

No. Detect fake views in video runs through SandBase, so one SandBase API key covers this endpoint and every other API and model in the catalog. You do not need to apply for TikTok API access separately.