TikTok, Reels & Shorts Video Analyzer: hooks, scenes, text
Pricing
Pay per event
TikTok, Reels & Shorts Video Analyzer: hooks, scenes, text
Every scraper hands you the metadata. This one watches the video and tells you why it worked.
Pricing
Pay per event
Rating
0.0
(0)
Developer
FrameProbe
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
3 days ago
Last modified
Categories
Share
TikTok, Reels & Shorts Video Analyzer: hooks, scenes, on-screen text
Last verified: 2026-08-12
Every scraper hands you the metadata. This one watches the video and tells you why it worked.
What it does
Point it at short-form videos and get one structured record per video: the production stack, the hook style, the structure and pacing, scene count and cut cadence, the on-screen text read straight off the frames, an asset list, a plain-language explanation of why the video worked, and a 0 to 10 "worth copying" score. Built for creators, agencies, and growth teams who reverse-engineer what performs instead of guessing.
Output is a full structured record per video, ready to export or feed into your own tools.
How it works: two inputs
This Actor analyzes videos. It does not scrape social sites. Feed it one of two ways.
1. Chain a scraper's dataset (recommended). Run a TikTok, Instagram, or YouTube scraper, then pick its dataset. This Actor reads the media URLs the scraper already collected and analyzes each one. This is the reliable path for all three platforms, because they block video fetching from cloud servers.
2. Direct media URLs. Already have direct video file URLs? Pass them in videoUrls and it
analyzes them right away.
Pasting a tiktok.com, instagram.com, or youtube.com page link will not work. Those need a
scraper first, and the Actor tells you exactly which one to chain when it sees a page link.
Try it free, no key
Run it with no API key and it still downloads each video and measures it: duration,
resolution, scene count, cut cadence, plus the sampled frames in the key-value store. You get
real records and pay nothing per video. The model-read fields (hook, structure, on-screen text,
score) come back empty and status is preview, so a preview row is never mistaken for an
analysis. Keyless runs process up to 3 videos.
Add a key to get the full teardown.
Bring your own vision key
Analysis runs on your own Anthropic API key, so you control the model and the cost. Default model
is claude-sonnet-5; set claude-opus-5 for the most capable read or claude-haiku-4-5 to spend
less. Your key is used for the run and never stored or logged. More providers are coming; v1
supports Anthropic.
Your key and model id are checked against your own account before the run starts, so a wrong key or a mistyped model fails immediately and costs you nothing.
Quickstart
- Optional: hit Start with the default input first. No key needed, and you get a measured record plus frames back in seconds.
- Run a scraper Actor for the platform you care about.
- Get an Anthropic key at console.anthropic.com and paste it into Your vision model API key.
- Pick the scraper's dataset in Dataset from a scraper run.
- Set Maximum videos to cap your spend.
- Run it. Records land in the dataset; sampled frames land in the key-value store.
{"datasetId": "aBcDeFgHiJkLmNoP","maxVideos": 25,"framesPerVideo": 6,"includeOnScreenText": true,"language": "en","visionProvider": "anthropic","visionApiKey": "sk-ant-..."}
What you get per video
{"url": "https://cdn.example.com/clip.mp4","platform": "tiktok","status": "ok","durationSeconds": 52.21,"width": 854,"height": 480,"sceneCount": 6,"cutCadenceSeconds": 4.96,"productionStack": "motion-graphics","hookStyle": "story-frame","hookNotes": "Opens on black then a dark foggy shot to build atmosphere before revealing characters.","structureStyle": "story-arc","onScreenText": ["http://jell.yfish.us"],"captionTreatment": "Burned in, word timed, white with a yellow accent word, lower third.","visualSystem": "Consistent dark frame with a torn-paper title card between steps.","assets": ["torn-paper title card", "warm cinematic grade"],"formatScore": 5,"whyItWorked": "Moody open with a slow reveal, relying on visual spectacle and curiosity rather than a spoken claim.","confidence": "med","likelyTools": "3D animation software, video editor","frameKeys": ["frame-9f2a1c7d4e6b8a03-00.jpg"],"analysisStatus": "ok"}
Measured from the file by ffprobe and ffmpeg, never by the model: durationSeconds, width,
height, sceneCount, cutCadenceSeconds. The scene detector fires on hard cuts, overlays
and kinetic text alike, so read the cadence as a measured proxy for pace.
Read from the frames, pinned to these exact values:
| Field | Values |
|---|---|
productionStack | real-camera, generated-avatar, screen-recording, motion-graphics, mixed |
hookStyle | contrarian-claim, problem-promise, demo-first, list-tease, data-shock, story-frame, identity-call |
structureStyle | demo-walkthrough, numbered-list, problem-solution, before-after, tutorial-steps, commentary-overlay, story-arc, rapid-tips, reframe-explainer, statement-psa, unclassified |
confidence | low, med, high |
formatScore | Integer 0 to 10, how strong the format is as a model to copy |
Free text in your chosen language: hookNotes, captionTreatment, visualSystem,
whyItWorked, likelyTools. Lists: onScreenText (max 12), assets (max 8).
Pricing
| What | Price |
|---|---|
| Actor start | $0.01 per run, charged after your input validates |
| Preview (no key) | $0.04 events never fire. Measured fields only, up to 3 videos |
| Video analyzed | $0.04 per video that produced a record |
| Videos that failed | Free. They appear in the dataset with a reason and are not charged |
| Vision model tokens | Billed by Anthropic, directly to your account, at their rates |
A keyless preview run costs one $0.01 start event and nothing else.
If a link is dead or a platform blocks it, you pay nothing for that video. maxVideos is your
hard ceiling: at 100 videos a run cannot cost more than $4.01 from us.
Limits
- Social page URLs need a scraper chain. See "How it works" above.
- Direct URLs must be publicly fetchable from a cloud server.
- Instagram and TikTok media links are short-lived signed URLs. Pass a fresh dataset rather
than stored links, or expect
download-403. - Videos are capped at 60 MB, 180 seconds, and 2160px on the long edge. Anything larger is reported as failed rather than silently truncated.
- Frames, not audio. The analysis reads what is on screen. It does not transcribe speech, so a video whose whole point is spoken gets its visual format scored, not its script.
- Analysis depth scales with
framesPerVideo(default 6).
Maintained
Actively maintained. Broken inputs get diagnosed with a specific reason and a fix, not a stack trace: a deleted video, an age-gated one, and a platform blocking our IP each say so and each tell you what to do next.
See CHANGELOG.md.