About tiktok-ad-research
A skill for researching paid TikTok ads, aimed at marketers studying advertisers, objectives, hooks, offers, and CTAs across defined markets. It uses the postplus hosted collection workflow and distinguishes observed ad details from inferred creative implications.
Key features
- 01Collect paid TikTok ad examples
- 02Scope research by market or objective
- 03Inspect hooks, offers, and CTAs
- 04Separate observations from inferences
- 05Save results and briefs for review
Use cases
- 01Benchmark competitor paid creatives
- 02Compare ads by region or language
- 03Identify repeated hooks and offers
- 04Turn ad samples into creative briefs
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ postplusai/ postplus-skills --skill tiktok-ad-researchAfter installing, type/tiktok-ad-researchin Claude Code to confirm it loaded.
Details
From the project READMETikTok Ad Research
Use this skill for paid TikTok ad intelligence, not organic creator or content discovery.
Apply shared rulebook and user-guidance rules from postplus-shared.
Task Shapes
Use this skill when the user wants to:
- find paid TikTok ad creatives that are performing well,
- inspect top ads for a category, country, region, language, or objective,
- study competitor paid hooks, selling points, and CTAs,
- turn ad examples into ad briefs or creative implications.
Do not use this skill for creator discovery, community comments research, organic content lane mapping, or TikTok music workflows.
Collection Key Routing
Route paid-ad collection to the released hosted collection key for top paid ad
examples and optional ad-level metrics. Discover the exact released collection
key and request shape with postplus research schema --json, then pass the
request body to postplus research collect <collectionKey> --request <input.json>.
Default Workflow
- Classify the request into a paid-ad task shape.
- Build a narrow first-pass request for the category, region, objective, or competitor scope.
- Write the request to a request file and run
postplus research collect <collectionKey> --request <input.json>. - Normalize the result into observed ad facts.
- Separate observed ad facts from inferred creative implications.
postplus research collect tiktok-ads-top --request request.json --output result.json
Keep raw datasets and intermediate files under .postplus/tiktok-ads/; keep
final shortlists, summaries, or briefs where the user can inspect them.
Good Output
Return top brands or advertisers, dominant objectives, repeated hook and offer language, CTA patterns, region or language scope, duration distribution, and which metrics were actually present in the sample.
Failure Modes
- Stop if the request is organic creator/content research; route to
tiktok-researchinstead. - Stop on missing required input, unsupported key, missing auth, unavailable hosted service, or stable network failure.
- Do not invent fallback execution paths, private backend calls, or web-search replacements for paid ad collection.
Handoff
- Organic TikTok benchmark comparison ->
tiktok-research. - Ad creative review after humans inspect outputs ->
creative-qa. - Shot-level or spoken-line breakdown ->
video-analysis.
Public Command Boundary
- Choose the smallest matching command or workflow from the user input and run it directly.
- Readiness diagnostics:
postplus doctor --skill tiktok-ad-research. - If an owned CLI or script command fails, report the exact error and stop. Do not bypass the failure with metadata-only answers, readiness probing, local payload rewrites, fallback providers, or unpublished tools.
- Use
postplus research schema --collection-key <collectionKey> --jsononly when constructing or repairing an unknown request shape. - Hosted collection:
postplus research collect <collectionKey> --request <input.json> --output <result.json>(input = the collection parameters). - Resume a pending collection:
postplus research collect --run-handle <runHandle> --output <result.json>. - Keep the first pass bounded; expand only after inspecting the first result.
- If the CLI returns a quote-confirmation challenge, run
postplus quote confirm --json --challenge-file <challenge.json>and retry with the returned token.