Communitygithub.com

mardab96/tiktok-ads-claude-skills

Writes a complete creator-facing UGC brief for TikTok ads, with viewer situation, one message, three hook options, scene structure, claims allowed and forbidden, do and don't lists, disclosure, usage rights, and a Spark authorization note, plus an internal approval checklist. Use when the user says "write a UGC brief for TikTok", "brief a creator", "I need a creator script with approved claims", "what rights do I need to run this creator video as an ad", or has product facts and needs something a creator can film from.

tiktok-ads-claude-skills란 무엇인가요?

tiktok-ads-claude-skills is a Claude Code agent skill that writes a complete creator-facing UGC brief for TikTok ads, with viewer situation, one message, three hook options, scene structure, claims allowed and forbidden, do and don't lists, disclosure, usage rights, and a Spark authorization note, plus an internal approval checklist. Use when the user says "write a UGC brief for TikTok", "brief a creator", "I need a creator script with approved claims", "what rights do I need to run this creator video as an ad", or has product facts and needs something a creator can film from.

지원 대상✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/mardab96/tiktok-ads-claude-skills/tree/HEAD/ugc-brief-writer-tiktok-ads

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

UGC Brief Writer - TikTok Ads

Use this skill when

A creator will film a video that a brand may run as a paid TikTok ad, and the brief must protect factual claims and usage rights without killing the creator's voice. Output has two parts: a creator-facing brief in plain language and an internal approval checklist the creator never sees.

Common requests:

  • "Write a UGC brief for this product."
  • "Brief three creators on the same message with different hooks."
  • "What claims can the creator make and what is off limits?"
  • "Do we have the rights to run this as a Spark ad?"

When not to use

  • Scripting inside the brand's own team, from a winning ad -> winning-ad-remix-tiktok-ads.
  • Mining comments for what to address -> comment-objection-miner-tiktok-ads first, then feed the clusters in here.
  • Judging whether a finished video hooks -> hook-rate-scorer-tiktok-ads.
  • Comparing the creator's post as a Spark ad against a brand-handle upload -> spark-vs-brand-ad-split-tiktok-ads.

Required input

Minimum, or the brief stays a draft:

  • Product fact sheet with ids (F1, F2...): what it is, who it is for, price, variants, offer and end date.
  • Claims: allowed verbatim, allowed with a qualifier, prohibited. Sensitive categories need a human reviewer named.
  • Viewer situation: who watches, what they want, what stops them.
  • Deliverables: number of videos, length range, delivery date, review rounds.
  • Disclosure rules for the creator's market, confirmed by the named approval owner.
  • Usage rights scope: organic posting, paid use as a brand-handle ad, Spark authorization, duration, territories, edits, raw files.
  • Approval owner (a named person) and the contact the creator replies to.

Optional: prior creative notes, comment clusters (comment_cluster), a winner transcript for tone, competitors not to name, brand do and don't, reference videos.

Performance history may shape direction ("problem-first openings have been tested") as a hypothesis. It is never a promise to the creator about results.

Analysis workflow

  1. State the creator job in one line (show X, say Y, to viewer Z) and the viewer situation in one line.
  2. Convert every fact into a showable proof moment: what is on camera, what is said. A fact that cannot be shown or said safely is internal-only.
  3. Build the claims ladder: allowed verbatim, allowed with a qualifier, never say. Each entry cites a fact id or an approver name.
  4. Draft the structure as scenes with time ranges: hook (first 2 seconds), problem, proof, use, CTA. Mark each beat Mandatory or Creator-owned.
  5. Ask for three distinct hook options per creator, each with a first line and a first frame. Later reads use T02 (2-second view rate after 3,000 impressions).
  6. Write do and don't lists for filming (vertical, phone, light, sound, captions, safe zone, logos, other brands, minors, personal data in frame).
  7. Fill the rights and disclosure block field by field. Every field is Yes, No, or needs_data; none stays blank.
  8. Add the Spark authorization note and the review loop (rounds, what can be corrected, what is creator-owned).
  9. Run the approval checklist. Any unchecked item is a hold on sending the brief.
  10. State the measurement plan: which hooks, which metric (hook-rate-scorer-tiktok-ads), and which format comparison, if any.

Spark authorization note

Spark Ads run an existing post from the creator's handle as an ad. That depends on a permission the creator grants, as labelled in the TikTok app and your Ads Manager. It is separate from content usage rights: a signed paid-usage clause does not by itself record Spark authorization. Record four things in writing: whether Spark is intended, the scope and duration the creator agreed, who at the brand holds the authorization, and how the creator can revoke it. This skill records the agreement; it never grants or approves a permission, and the exact authorization steps are as labelled in your Ads Manager.

Claims ladder

Fill this before writing scenes. Every row cites a fact id or a named approver.

TierMeaningIllustrative skincare exampleSource
VerbatimCreator may say it exactly"Fragrance-free"F1
QualifiedAllowed only with stated wording or a true condition"Works for my routine", from real useCreator's own use
NeverForbidden in every context"Clears acne", "dermatologist approved"Prohibited list
Internal onlyTrue but not for the videoMargin, supplier nameFact sheet

Review loop and creator freedom

ItemBrand may request a changeCreator-owned
Facts, claims, and numbers on screenYesNo
Disclosure and rights fieldsYesNo
Offer wording and end dateYesNo
Voice, humour, outfit, settingOnly for a brand-safety issueYes
Hook wordingOnly if a claim breaksYes, within the three-option rule

Agree the number of revision rounds in the snapshot. A change request names the claim or field it protects; "make it more polished" is not a reason in a native-style ad.

Writing rules for the creator-facing part

  • Plain language, one short paragraph per field. No jargon such as ROAS, CPA, or learning phase.
  • Do not share spend, targets, internal CPA goals, or the internal checklist with the creator.
  • Briefing several creators: keep the message and claims ladder identical, vary the hook and setting per creator, so later reads can separate message from persona.
  • Give reference videos as feel, not as shots to copy.

Decision rules

ConditionVerdictNext step
Fact sheet missing or facts conflictneeds_data, hold on sendingSupply the sheet
Claims list missing for a sensitive categoryholdNamed reviewer approves claims
Rights scope blank (paid use, duration, territory)needs_data, hold on paid useFill the rights block
Spark intended, authorization scope or duration not recordedhold on Spark; organic use may proceed if rights allowRecord it in writing
Disclosure wording unconfirmedholdApproval owner confirms
Fewer than 3 hook options requestedRevise briefRestore the hook block
All checklist items passapproval_neededNamed owner approves sending

Thresholds belong to measurement, not to the brief: T02 reads hooks after 3,000 impressions; T05 treats about 25 results or 7 days as learning-sensitive when the finished video later runs.

Output format

## Creator brief (share this part)
**Snapshot:** brand [..] | product [..] | deliverables [n videos, length range, 9:16] | due [date] | reply to [name] | review rounds [n]
**Who you are talking to:** [viewer situation, one paragraph]
**One message:** [one sentence the viewer should leave with]
**Hook options (give 3):** each with first line and first frame, inside the first 2 seconds. Start on the thing, not on a greeting.
**Scenes:**
| Time | Beat | What the camera shows | Say it your way or say exactly | Mandatory / yours |
**Show on camera:** [proof moments from facts]
**You can say (verbatim):** [..]  **You can say with this qualifier:** [..]  **Never say:** [..]
**Do:** [..]  **Don't:** [..]
**Look and feel:** native phone video, your own voice, real setting; reference [..]
**Disclosure:** [wording and label, as required in your market and as shown in the TikTok app]
**Rights:**
| Item | Agreed (Yes / No / needs_data) | Scope, duration, territory |
|---|---|---|
| Organic post on your handle | | |
| Paid use as a brand-handle ad | | |
| Spark authorization | | |
| Edits, cutdowns, captions, translations | | |
| Raw files delivered to the brand | | |
| Music or sound in the video | | |
| Exclusivity or category limits | | |
**Spark authorization:** [intended or not; what you agree to; how you can revoke it]
**Delivery and review:** [draft date, rounds, what we may ask to fix: facts, claims, disclosure; yours: voice, humour, setting]

## Internal approval checklist (do not share)
[ ] Each claim maps to a fact id or approver [ ] Disclosure confirmed [ ] Rights block complete [ ] Spark scope recorded or marked not intended [ ] 3 hook options requested [ ] Sensitive-category reviewer named [ ] Measurement plan set

### Decision table
| Finding | Evidence | Verdict | Severity | Confidence | Business impact | Next step |
|---|---|---|---|---|---|---|

### Data gaps and approval needed
[missing item] -> [verdict prevented]. [sending the brief] -> [named owner].

Practical example

Illustrative content only. Product: a fragrance-free gel cleanser (fictional). Facts: F1 fragrance-free, ingredient list supplied; F2 120 ml; F3 used morning and evening per the label; F4 price 18; F5 30-day returns. Prohibited: treating or curing any skin condition, any "dermatologist" wording without written approval, results in a number of days, before-and-after skin photos. Reviewer for skincare claims: named in the checklist.

This brief asks a creator for a 20 to 30 second morning routine, phone-shot at a bathroom sink. Message: a simple cleanser with no added fragrance. Hooks to request: (1) first frame is the bottle on the sink, line "Three products out, one in"; (2) on-screen text "Fragrance-free and I can tell" over a pump-and-lather shot; (3) a question to camera about what is in the shower caddy. Verbatim allowed: "fragrance-free" (F1). Qualifier: "works for my routine" only as personal experience, and only if the creator actually used it. Disclosure wording confirmed by the approval owner. Rights: organic post Yes; paid use as a brand-handle ad, 6 months, one territory; Spark authorization intended, scope and duration to be recorded before boosting; raw files delivered.

Check: Spark scope still blank, so verdict is hold on Spark use, needs_data for the field, while the organic use may proceed. Everything else passes, severity medium, business impact brand_safety. Next step: the brand's rights owner fills the Spark row.

Common failure modes

  • Scripting every word; creators lose their voice, and the video reads as an ad in the first second.
  • A claim list that says what is allowed but not what is forbidden, so the creator improvises a medical-sounding line.
  • Treating a paid-usage clause as Spark authorization.
  • Missing raw-file rights, so cutdowns, captions, and translations cannot be made later.
  • Gifted product treated as no disclosure needed; disclosure rules depend on the market, not on payment form alone.
  • Briefing one hook and calling it a test.
  • Quoting a creator's earlier hit and implying the same result is expected.
  • Copy that mentions an offer after its end date.

Guardrails

  • Do not put a claim in the brief that lacks a fact id or a named approver.
  • Do not ask a creator to state an experience they have not had; personal statements must be true.
  • Do not treat usage rights and Spark authorization as one permission; record them separately.
  • Do not promise performance, earnings, or results to a creator or the brand.
  • Do not leave rights, disclosure, or approval-owner fields blank; mark them needs_data.
  • Do not name competitors or show third-party logos unless approved.
  • Do not approve, grant, or change any permission or live ad; stop at a brief awaiting a named approver.

Individual skills in this repo

This repo contains 18 individual skills — each has its own dedicated page.

mardab96/tiktok-ads-claude-skills

Runs an ordered, layer-by-layer triage of an unfamiliar TikTok Ads account (tracking, structure, learning, creative, bidding, landing page) and hands the first blocker to one named sibling skill. Use when the user inherits a TikTok account, onboards a client, asks where to start, says TikTok results dropped with no known cause, asks whether an account is ready to scale, or says "audit this TikTok account" without naming a problem.

mardab96/tiktok-ads-claude-skills

Reconciles TikTok Ads Manager conversions with GA4, Shopify, CRM, or app analytics using a baseline-ratio method, separating click-through from view-through credit, attribution window and timezone differences, and real tracking drift (T07). Use when a TikTok media buyer or client says "TikTok says 200 sales, Shopify says 90", "GA4 does not show our TikTok conversions", "TikTok ROAS looks too good", "the gap got bigger this month", or "which number do we report to the client".

mardab96/tiktok-ads-claude-skills

Checks whether a TikTok ad group's bidding strategy fits its goal, budget, and conversion volume using the labels TikTok currently lists (Maximum Results, Target Cost per Result, value options as shown in the account) and asks for a screenshot before mapping any legacy name. Use when someone types "Maximum Results or Target Cost per Result", "Cost Cap vs Lowest Cost on TikTok", "our target CPA is too low and delivery died", "bid strategy check", or "should we use hybrid bidding".

mardab96/tiktok-ads-claude-skills

Builds a staged TikTok budget plan with entry gates, one change per observation window, stop rules, and a recorded rollback, using T04, T05, T06, and T10 from the shared register. Use when someone types "can we scale this TikTok campaign", "double the budget on the winner", "how fast can I raise the daily budget", "scale before the sale", or "plan the budget increase for next week".

mardab96/tiktok-ads-claude-skills

Strips personal data from TikTok ad comments, clusters them into objections, questions, proof requests, and noise with counts, links each cluster to product facts, and drafts reply options and hook ideas for approval. Use when the user pastes TikTok comments and asks "what are people objecting to", "mine the comments for hooks", "draft replies to these comments", "what do viewers keep asking", or wants an FAQ and creative briefs built from comment themes.

mardab96/tiktok-ads-claude-skills

Diagnoses a TikTok CPA jump by splitting it into CPM, CTR, and CVR movement between a baseline and a current window with the cpa_decompose.py helper, then checking tracking, changes, mix, creative, and landing page in that order. Use when someone types "TikTok CPA doubled", "cost per purchase is up 40%", "why did CPA spike", "CVR dropped but clicks are fine", or "the client wants to know what broke".

mardab96/tiktok-ads-claude-skills

Detects whether a TikTok ad is tiring by comparing the last seven distinct dates with the preceding seven for frequency and CTR, using the bundled fatigue_scan.py script and a 14-date rule, then builds a control-versus-refresh queue. Use when the user asks "is this TikTok ad fatigued", says CTR is dropping while frequency climbs, wants to know when to refresh TikTok creative, or pastes a daily ad export and asks which ads to replace.

mardab96/tiktok-ads-claude-skills

Turns TikTok Shop and GMV Max reporting into a per-product cost-stack ledger with refunds, affiliate commissions, seller-funded coupons, referral fees, ad spend, COGS, and seller-borne shipping, using gmv_profit.py to flag any incomplete cost stack (T09). Use when a TikTok Shop seller or media buyer says "GMV Max ROI looks great but we are not making money", "is this product profitable on TikTok Shop", "check our TikTok Shop margins", "affiliate commissions are eating us", or before raising a GMV Max budget or ROI target.

mardab96/tiktok-ads-claude-skills

Scores the opening seconds of TikTok ads by computing 2-second and 6-second view rates and a thumb-stop proxy from ad-level export columns, comparing them with like-for-like ads, and scoring the script opening on a five-point rubric. Use when the user asks "which TikTok hook is weak", "what's my hook rate", "why do people scroll past my ad", wants a hook test plan, or pastes a transcript of the first seconds next to video-view columns.

mardab96/tiktok-ads-claude-skills

Sequences planned TikTok edits around the learning phase, separating urgent repairs from optimisation, naming which edits TikTok itself labels as affecting learning, and ordering one observable action at a time with rollback. Use when someone types "can I edit this ad group during learning", "will this reset the learning phase", "campaign is in learning, what can we change", "sequence these changes", or "the client wants five edits this week".

mardab96/tiktok-ads-claude-skills

Checks TikTok Pixel and Events API health from Events Manager screenshots and an Ads Manager export, covering event match signals, event_id deduplication between browser and server events, parameter completeness on value events, and primary-event drops against stable clicks (T10). Use when a TikTok media buyer says "purchases dropped but clicks are flat", "check our TikTok pixel", "is Events API deduplicating", "Events Manager shows a diagnostic warning", "TikTok value does not match our orders", or before any bid, budget, or scale call that depends on TikTok conversion data.

mardab96/tiktok-ads-claude-skills

Reviews TikTok Ads delivery split between the TikTok placement and Pangle or TikTok Ad Network inventory (as labelled in your Ads Manager), testing CPA and downstream quality per placement against T08 and keeping brand safety and suitability as a separate question. Use when a TikTok media buyer says "should we turn off Pangle", "where is our TikTok spend actually going", "automatic placement is eating budget", "network traffic converts badly", "is our TikTok ad showing next to unsafe content", or when a client asks for a placement and brand safety readout.

mardab96/tiktok-ads-claude-skills

Reviews TikTok Search Ads search terms and keywords and decides what to add as a keyword, add as a negative, or watch, with match handling as labelled in the account and a lag-aware waste floor. Use when someone types "review our TikTok search terms", "negative keyword list for TikTok Search Ads", "which queries should become keywords", "broad match is bringing junk", or "Search Ads spend with zero conversions".

mardab96/tiktok-ads-claude-skills

Audits a TikTok Smart+ campaign by mapping what Smart+ automates against what the media buyer still controls (creative supply, audience exclusions, conversion event, budget, bidding), then ranks the risks. Use when someone types "audit our Smart+ campaign", "what does Smart+ actually control", "Smart+ vs manual", "Smart+ spend is up but results are flat", or "can we trust Smart+ with this budget".

mardab96/tiktok-ads-claude-skills

Compares TikTok Spark Ads with brand-handle ads like-for-like by matching objective, optimization event, audience, offer, placements, bidding label, dates, and concept before any metric is read, then records authorization status and designs a matched test when no clean pair exists. Use when the user asks "do Spark ads perform better than our brand ads", "Spark vs non-Spark", "should we boost creator posts", "why is the creator ad cheaper", or pastes ad-level data with a format column and wants a verdict.

mardab96/tiktok-ads-claude-skills

Finds mature TikTok campaigns, ad groups, and ads that spent past a CPA-based floor with zero reported conversions, after excluding rows still inside the conversion lag, using the wasted_spend.py helper. Use when someone types "where is the wasted spend on TikTok", "which ad groups burn budget with no conversions", "what can we cut before we scale", "zero conversion ads", or "clean this account before the client call".

mardab96/tiktok-ads-claude-skills

Writes the weekly TikTok Ads client report as a plain-language narrative, a scorecard against the client goal, and next-week decisions with owners and approvals, after an integrity check on tracking, lag, and learning status (T04, T05, T07, T10). Use when an agency or freelance TikTok media buyer says "write the weekly TikTok report", "client update is due", "explain this week's TikTok results to the client", "what do we tell the client about CPA going up", or "set up a repeatable TikTok report format".

mardab96/tiktok-ads-claude-skills

Turns one proven TikTok ad into N distinct angle scripts, each with hook, body beats, CTA, on-screen text, and a shot list, after deconstructing why the winner worked and checking every claim against product facts and rights. Use when the user says "remix my winning TikTok ad", "give me new angles on this winner", "I need five scripts like this one", "my best ad is wearing out, what next", or pastes a winning transcript and asks for variations.

관련 스킬