Communitygithub.com

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".

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

tiktok-ads-claude-skills is a Claude Code agent skill that 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".

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

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

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

문서

Weekly Client Report: TikTok Ads

Use this skill when

An agency owes a client a weekly update that a non-specialist can read in two minutes and act on. Report job: say whether TikTok is on track against the client's goal, explain what moved in words the client uses, and list the decisions for next week with who owns each one. Investigation belongs to specialist skills; this report routes to them. Work from pasted exports; a TikTok for Business connector in Claude is optional.

Typical requests:

  • "Weekly TikTok report for the client, same format as last week."
  • "CPA went up. How do I explain it without panicking them?"
  • "Turn this export into a client email."
  • "We need the client to approve new creators this week. Build it into the report."
  • "Monthly roll-up from the last four weekly reports."

Do not use this skill when:

  • A single problem needs diagnosis. Run the owner: cpa-spike-diagnosis-tiktok-ads (T04), attribution-gap-check-tiktok-ads (T07), pixel-events-api-check-tiktok-ads (T10), creative-fatigue-detector-tiktok-ads (T01).
  • Account is new to the agency. Run account-triage-tiktok-ads first, then start weekly reporting.
  • TikTok Shop margin is the client's question. Run gmv-max-profit-check-tiktok-ads and attach its ledger.

Required input

A weekly report is only comparable if inputs and definitions stay the same each week. Ask once, then reuse.

Ads Manager export from Reporting, campaign level, daily rows for the reporting week and the prior week, columns as labelled in your export: Date, Campaign name, Objective, Optimization event, Cost, Impressions, CPM, Clicks (destination), CTR (destination), Conversions, Cost per conversion, Total purchase value or conversion value, 2-second video views, 6-second video views.

Also required:

  • Reporting week dates, comparison week dates, ad account timezone.
  • Client goal in their terms: cost per sale or lead target, ROAS target, monthly volume, or budget cap.
  • Primary event and attribution setting, plus conversion lag in days.
  • Change log for the week: budget edits, bid or target edits, new ads, paused ads, new ad groups, page or offer changes.
  • Learning status of any campaign or ad group edited this week (screenshot or status column).

Optional input

  • Independent results for the same dates from Shopify, GA4, or CRM (analytics_export or shop_export), with last week's TikTok-to-independent ratio.
  • Events Manager diagnostics status (events_diagnostics).
  • Creative notes: which videos launched, which creators, which hooks.
  • Last week's decisions with their status, so the report carries a running record.

Before analysis

  1. Confirm who reads the report and which decision they make from it: approve budget, approve creative, or simply stay informed. Write the "In short" section for that reader.
  2. Confirm the client's goal number and whether it is judged on TikTok-reported results or on store or CRM results. Report against that number every week.
  3. Pull last week's report and decisions so carried-forward items keep their wording and owners.
  4. Agree the week cut-off once (for example Monday to Sunday in the ad account timezone) and keep it fixed.

Client language rules

  • One idea per sentence, in the words the client uses for their own business (orders, bookings, leads).
  • Every number carries its unit and the goal it is judged against.
  • Good news and bad news get the same plain wording; neither gets hedged into silence.
  • Uncertainty is stated as a check with a date ("we will know by Tuesday"), never as a forecast.

Analysis workflow

  1. Lock definitions: same week cut-off, same timezone, same primary event, same attribution setting as last week. Announce any change at the top of the report.
  2. Run the integrity check before any performance sentence. If the primary event fell at least 30% while clicks stayed within 10% of baseline (T10), lead with measurement and label every result below it as unreliable. If the TikTok-to-independent ratio moved at least 20% against its baseline (T07), say so and route.
  3. Mark immature days. Days inside the conversion lag are reported separately as "still counting", never as a result.
  4. Build the scorecard: spend, reach cost (CPM), tap rate (CTR), results, cost per result, value, and the client's target. Show absolute numbers next to every percentage change.
  5. Flag small samples. When either week has fewer than 10 reported conversions, call the cost-per-result change too small to read, in line with the T04 volume floor.
  6. Explain each material movement with a cause and a confidence label from the shared vocabulary: deliberate change from the log, learning phase after an edit (T05), creative launch or fatigue, mix shift between campaigns, measurement, or unexplained. "Unexplained so far" is an acceptable answer.
  7. Route escalations: CPA up at least 30% with enough conversions (T04) to cpa-spike-diagnosis-tiktok-ads; ratio movement (T07) to attribution-gap-check-tiktok-ads; event drop (T10) to pixel-events-api-check-tiktok-ads; fatigue candidates (T01) to creative-fatigue-detector-tiktok-ads; budget moves to learning-phase-guard-tiktok-ads and budget-scaling-planner-tiktok-ads.
  8. Choose up to three decisions for next week. Each has an owner, a reason, an approval flag, and a check date. Carry last week's decisions forward with status.
  9. Translate into client language using the glossary below, then reread the narrative for any promise of future results and remove it.

Plain-language glossary for the client sections:

Ads termClient wording
CPA / cost per conversioncost per sale (or per lead)
CPMcost to show the ads 1,000 times
CTRshare of viewers who tapped through
Learning phaseTikTok is still working out who to show the ads to after a change
Attributionhow TikTok decides which sales to credit to its ads
Conversion lagsales that arrive days after someone saw the ad

Decision rules

ConditionEvidenceVerdictReport treatment
T10 met this weekads_export + events_diagnosticslikely measurement issueLead with it; hold budget decisions; route to pixel check
T07 ratio movementads_export + analytics_exportpossibleNote gap change; report independent number as the client figure
Fewer than 10 conversions in either week (T04 floor)ads_exportmonitorSay "too small to read" in the scorecard
CPA up at least 30% with at least 10 conversions per week (T04)ads_exportlikely real movementExplain known causes; route unknown ones
Campaign edited and still learning (T05)change_log + statusholdTell the client results are settling; no further edits
Movement explained by a logged changechange_logconfirmedOne sentence, cause and owner
No cause found after log and mix checkall inputspossibleWrite "unexplained so far" and name the check
Spend or budget change proposedanyapproval_neededPut in decisions with client approval flag

Output format

# TikTok weekly report: [client], week of [dates] ([timezone])

## In short
[Three to five sentences in client language: on track or not against the goal, what moved most and why, what we do next week, what we need from you.]

## Scorecard
| Measure | This week | Last week | Change | Goal | Status |
|---|---|---|---|---|---|
| Spend | | | | | |
| Sales or leads (TikTok-reported) | | | | | |
| Cost per sale or lead | | | | | |
| Sales value | | | | | |
| Sales or leads (your store or CRM) | | | | | |
Status words: on track / watch / off track / too small to read / still counting

## What happened this week
- [Plain sentence]: [cause], confidence: [confirmed / likely / possible]

## Decisions for next week
| Decision | Why | Owner | Needs your approval | Check date |
|---|---|---|---|---|

## Last week's decisions
| Decision | Status | Result so far |
|---|---|---|

## Risks and open questions
- [risk or data gap in plain words]

## Operator appendix
| Finding | Evidence | Verdict | Severity | Confidence | Business impact | Next step |
|---|---|---|---|---|---|---|
Routed to: [skill names]
Data gaps: [missing item: blocks conclusion]

Practical example

Illustrative numbers for a fictional apparel client, not a benchmark. Goal: cost per sale at or under 45.00. This week: spend 6,200, 141 TikTok-reported purchases, cost per purchase 43.97. Last week: spend 5,900, 155 purchases, cost per purchase 38.06. Change: up 15.5%, below the T04 escalation line, with well over 10 conversions in both weeks. Shopify TikTok-tagged orders moved in line, so the TikTok-to-Shopify ratio is stable (T07 not met). Purchase events tracked clicks (T10 not met).

Change log: budget raised on two ad groups on Tuesday; both re-entered learning (T05). Four new creator videos launched Wednesday.

Client "In short" section: "TikTok stayed under your 45.00 cost-per-sale goal this week at 43.97, though it cost more per sale than last week. We raised budget on Tuesday, and TikTok is still adjusting who sees the ads after that change, so costs can swing while it settles. Four new creator videos went live Wednesday and are too new to judge. Next week we keep budgets flat while TikTok settles, and we need your approval for three new creator briefs by Thursday."

Decisions: keep budgets flat until learning clears (owner: agency, check Tuesday); approve three creator briefs (owner: client, approval needed); review new videos once each passes the T01 impression floor (owner: agency).

Common misreads

  • Opening with a CPA story while purchase events failed T10 that week.
  • Reporting percentage swings on a handful of conversions.
  • Calling the last two days a drop while they sit inside the conversion lag.
  • Promising that next week will recover. Clients remember promises; report the plan and the check date instead.
  • Using Ads Manager jargon in the summary. Keep terms for the operator appendix.
  • Silently changing the week cut-off or attribution setting between reports.
  • Reporting TikTok-reported sales as the client's revenue when their goal is judged on store or CRM numbers.

Route to next

  • Cost per result up past T04 with enough volume: cpa-spike-diagnosis-tiktok-ads.
  • TikTok and store numbers drifting apart (T07): attribution-gap-check-tiktok-ads.
  • Events dropped while clicks held (T10): pixel-events-api-check-tiktok-ads.
  • Best ads slowing down (T01): creative-fatigue-detector-tiktok-ads, then winning-ad-remix-tiktok-ads.
  • Client wants more budget: budget-scaling-planner-tiktok-ads (T06), checked by learning-phase-guard-tiktok-ads (T05).
  • Shop client asking about margin: gmv-max-profit-check-tiktok-ads (T09).

Guardrails

  • Do not promise future results or recovery dates in client sections.
  • Do not report a performance change on top of a tracking or definition change without saying so first.
  • Do not invent a cause; write "unexplained so far" and name the check.
  • Do not let the client summary contradict the operator appendix.
  • Do not include budget, bid, or targeting changes as done; list them as decisions awaiting approval.
  • Do not paste customer names, emails, or comments with identifiers into the report.

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

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.

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

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.

관련 스킬