TikTok Shadow Ban Checker — Bulk Video CSV API
Pricing
from $10.00 / 1,000 results
TikTok Shadow Ban Checker — Bulk Video CSV API
Check public TikTok video signals and report observed score and coverage; no definitive shadow-ban diagnosis. Bulk export: JSON, CSV, Excel and API. PPE: $10/1K video checks; start fee, usage extra.
Pricing
from $10.00 / 1,000 results
Rating
0.0
(0)
Developer
Apivault Labs
Maintained by CommunityActor stats
0
Bookmarked
64
Total users
5
Monthly active users
6 days ago
Last modified
Categories
Share
TikTok Shadow Ban Checker — Video Visibility & Restriction Assessment
Assess observable public signals for specific TikTok videos. Receive matching video metadata, visibility and interaction observations, a nullable eligibility assessment, signal coverage and practical next steps. Supports full video URLs, official vm.tiktok.com / vt.tiktok.com share links, pasted lists and batch runs.
This independent public-data assessment cannot certify account status, guarantee reach, or establish appearance in every user's feed. Use TikTok's Account status and the video's in-app analytics for official notices. Private, removed, region-restricted or inaccessible videos may yield no assessment.
Quick start
{"urls":["https://www.tiktok.com/@tiktok/video/7480279424202575159"],"includeRecommendations":true,"includeSummary":true,"maxRetries":3,"proxyCountry":"US"}
Replace the example with a currently accessible video. Alternatively paste newline/comma-separated links into urlText. Both fields are merged and deduplicated. Profile/account collection is unsupported; pass individual videos.
Understand the result
| Field | Meaning |
|---|---|
success | A matching video assessment was collected; this does not mean unrestricted. |
assessmentStatus | restriction_signal, no_restriction_signals, or unknown. |
shadowbanned | Compatibility field: true when an explicit eligibility restriction is observed; false only when all checked eligibility fields permit it; null when unresolved. Not an official account verdict. |
signalCoveragePercent | Weighted coverage of eligibility observations, not confidence, probability or collection success rate. |
videoHealthScore | 0–100 score over observed eligibility fields; null if none are available. Missing fields get no points. |
videoHealthStatus | Observed score band; unknown if no score is available. High score with low coverage is incomplete evidence. |
heuristicRestrictionRisk | Advisory privacy/moderation/interaction risk, not proof of recommendation suppression. |
banReasonHints | Observed restrictions/settings; disabled interactions alone do not prove a shadow ban. |
recommendations | Verification steps and settings to review. |
Version 1.4 changes score semantics: the old formula awarded partial credit to unknown fields and could return about 52–62 without eligibility evidence. A score of 100 with coverage of 44 still leaves unobserved signals. Neither number means 100% valid checks.
A matching video with observable interaction/privacy signals can have eligibility unknown. Such useful assessments enter the Dataset. Metadata without observable restriction signals, oEmbed-only records and failures go to SUMMARY without paid result rows. Missing metadata counters currently retain legacy zero defaults: do not interpret absent values as independently measured zero.
Diagnostics and pricing
The Actor output links to Dataset results and the SUMMARY Key-Value Store record. SUMMARY contains requested, analyzed, partial, failed, failures and partialResults. Batch metrics include eligibilityKnownCount and eligibilityUnknownCount. shadowbannedPct excludes unknown verdicts; avgHealthScore excludes null scores. A successful run can have partial coverage.
$10 per 1,000 collected assessments ($0.01 per Dataset row). Current pricing also includes $0.05 per 1,000 starts, with platform/proxy/storage resources separately paid by the user. See live Pricing for current terms. Failures, metadata-only records and aggregate summaries do not create result charges; resources may cost on an empty run.
Every HTTP dispatch, including allowed redirects and fallback, selects a proxy. Default uses Apify Residential; customProxyUrls supplies an optional round-robin list. A new proxy selection does not guarantee a distinct physical IP or access. proxyCountry requests a two-letter region; empty is automatic. More retries may help transient failures but cannot recover deleted/private videos or guarantee 100% coverage.
Automation and AI
Use Apify MCP to fetch the input schema, call apivault_labs/tiktok-shadow-ban-checker, wait, then read Dataset and SUMMARY. Preserve nulls and report coverage. Do not claim official account bans from interaction settings.
Python SDK and n8n community node are available. Their separate packages are not changed in this release; consumers should check handling of the new nullable fields.