Step 1: Write the brief
Every TikTok ad that performs starts as a one-page brief, not a shot list. The brief locks four things before a phone comes out: target outcome (what number moves — CPA, CTR, install rate), audience (who must keep watching past second 3), hook angle (the single specific claim that earns the next 20 seconds), and CTA (what one action the viewer takes at second 25–30). Anything not on the page is noise.
Brief-first beats footage-first by a wide margin. Teams that shoot first end up editing around whatever the creator happened to say, which means the hook is decided in post — far too late. Teams that brief first walk onto the shoot already knowing the opening line, the B-roll requirement, the on-screen text, and the CTA frame. The shoot becomes execution, not discovery. The Ad Bench database shows brief-first ads score a median of 78 on native-feel; footage-first ads score 61. That gap compounds in delivery.
A complete brief fits on one page and answers: what specific outcome this ad is responsible for, which audience must convert, what hook angle (formula plus opening line), what the proof or demo is in the middle, what the CTA is at the end, and which platform specs apply. For a full template and worked example, see /learn/creative-brief. Skip this step and you'll spend three times the budget learning what should have been decided in 30 minutes of writing.
Step 2: Pick the hook formula
Hooks are not invented in the moment. They are selected from a formula library and then customized to the offer. The six formulas that consistently score above 70 in The Ad Bench's hook category — pattern interrupt, curiosity gap, controversy, social proof, problem-agitate-solution, and value promise — are documented in /learn/writing-hooks with the failure patterns to avoid. Pick one formula per ad and write the opening line against it.
Selection criteria are mechanical. If the audience is cold and the product solves a quantifiable pain, use problem-agitate-solution. If the offer is a strong claim that'll provoke reaction, use controversy. If you have a real, specific number — installs, users, revenue — use social proof. If the product is hard to explain in one line, use curiosity gap and let the demo close the loop. Pattern interrupt and value promise are the most general-purpose and the best defaults when the brief doesn't obviously fit another.
Write three hook variants per ad before you shoot anything. The /library/hooks library has thousands of scored examples sortable by formula and category — start there, lift a structure, swap in your specifics. A team writing one hook and shooting it is gambling. A team writing three and shooting all three is testing. The cost delta on the shoot is negligible; the learning rate is 3x.
Step 3: Shoot for sound-off + vertical
The technical floor is 9:16, 1080×1920, 30fps, H.264 in an MP4 container, under 500MB. Anything else triggers re-encoding, letterboxing, or outright rejection in Ads Manager. Vertical means shot vertical — not a horizontal clip cropped to vertical. The difference is visible to the algorithm and to the viewer; cropped horizontal footage reads as “repurposed” and ad-detection signals fire faster.
Aesthetic is the larger decision. TikTok rewards selfie-cam (handheld, front-facing phone, natural light, single subject talking to the lens) over studio polish. Studio-grade ads — three-point lighting, gimbal moves, color grading that looks like a commercial — consistently underperform native-feel ads by 30–40% on hook rate. The viewer's feed is 90% UGC; an ad that looks like UGC inherits the trust the surrounding content already established.
Captions are non-optional. Burn them in on every spoken line, from the first frame. TikTok's sound-off rate is around 40% — lower than Reels or Feed, but still high enough that a quarter of paid impressions land silent. An ad that depends on audio for its hook loses those impressions outright. Captions in a high-contrast font (white text, black stroke, sans-serif, sized to read at arm's length) is the safe default. Center or lower-third placement; avoid the top 15% and bottom 15% where the platform UI overlaps.
Step 4: Edit for the 3-second contract
The first frame is a thumb-stopper or it's nothing. That means a high-contrast visual, the subject already mid-action or mid-sentence, and on-screen text already showing. No fade-in, no logo card, no black frame, no “wait for it” build-up. The viewer is scrolling at full speed; the algorithm gives you 0.8 seconds before they swipe. Frame one has to do work.
Cut every 1–2 seconds for the first 5 seconds. Hard cuts, not dissolves. Each cut resets the viewer's attention and signals “something is happening.” Slow cuts in the opening read as broadcast pacing, which reads as ad, which triggers the skip reflex. After second 5, you can stretch cuts to 2–3 seconds as the viewer is committed and pacing can serve the story.
Audio must hit by 0.5 seconds. A frame of silence at the start functions as a buffering signal — the viewer's brain interprets it as “video isn't loaded” and the thumb keeps moving. Whether it's the creator's voice mid-sentence, a beat drop, or a sound effect, something has to be in the audio channel from frame one. On-screen text from frame one is the parallel rule for the visual channel. Together they form the 3-second contract: in the first three seconds, the viewer knows what the video is about, who it's for, and why they should keep watching.
Step 5: Audio + Commercial Music Library
Paid promotion on TikTok must use audio from the Commercial Music Library (CML). Any other audio — including the trending sounds that dominate the organic For You feed — will get the ad rejected, or worse, approved and then silenced after spend has started. The CML contains roughly 1M cleared tracks. It is searchable inside Ads Manager and inside CapCut for Business. Filter by mood, BPM, and length; the platform's own search is the source of truth.
The trending audio you saw on the organic side isn't available for paid use. This catches teams off guard constantly: the audio that made the organic version go viral cannot be lifted into the ad. The workaround is to find the closest CML equivalent by BPM and mood, or to use a Spark Ad on the organic post itself (see Step 7), which inherits the audio license through the boost mechanism rather than treating it as new ad creative.
Audio-trend alignment is a measurable score. The Ad Bench rates how well your audio choice matches what's currently performing in your vertical — too generic and the ad blends into stock-music background; too on-trend without the right edit pacing and it reads as a forced trend chase. The target is “sounds like the feed, not like a stock library.” CML tracks tagged as currently trending within your category are the strongest defaults.
Step 6: Score the cut before publishing
Before the ad ships, run it through The Ad Bench. The rubric scores six categories: hook, native-feel, pacing, CTA, audio-trend alignment, and platform-spec compliance. Each category returns a 0–100 score with specific failure flags. A cut that scores above 75 across the board is launch-ready. A cut that scores below 70 on hook or below 75 on native-feel is going to underperform — the cost-per-result delta against a cut that hits those thresholds is typically 2–3x.
Rewrite, don't rationalize. The most common operator mistake is shipping a cut that scored 58 on hook because the brief is due, the shoot already cost $4K, and rewriting feels like sunk-cost recovery. The math is the other way around: a hook score of 58 means CPAs that are 2x your target. The cost of a 90-minute rewrite and a quick reshoot is dwarfed by the spend you'll burn learning what The Ad Bench told you in 30 seconds.
The flag worth special attention is CTA. Hooks fail loudly — bad hook, bad watch time, obvious in the data. CTAs fail quietly: the viewer watched, didn't click, and you can't tell why without scoring the ending. A CTA score below 70 usually means the ask was either too soft (“learn more”) or too late (after second 28 when 80% of viewers have already gone). Fix before launch, not after.
Step 7: Spark Ads vs In-Feed Ads
You have two ways to put a creative into paid distribution on TikTok. Spark Ads boost an existing organic post (yours or a creator's with permission). In-Feed Ads upload new creative directly into Ads Manager with no organic presence. The choice has measurable consequences.
Spark Ads inherit the organic signal: comments, shares, follows, and the audio licensing of the original post. They show up in the feed with the creator's handle attached, which keeps them looking native. Cost-per-result on Spark Ads runs 30–50% lower than equivalent In-Feed Ads in the Ad Bench database, primarily because the algorithm has already seen the post perform organically and has confidence signals it can use to find the right audience faster.
Use Spark Ads whenever you have an organic post that's performing (hook rate above 35%, completion rate above 25%) and the creator will grant a Spark code. Use In-Feed Ads when you're launching a net-new creative, when there's no organic version, or when the creative concept depends on CML-licensed audio you couldn't use organically. Most mature accounts run 70% Spark / 30% In-Feed; new accounts often run the opposite while they build an organic library to boost from.
Step 8: Set up in Ads Manager
Campaign objective first. For most direct-response advertisers in 2026, the right objective is Website Conversions or App Install with Smart+ Campaigns turned on. Reach and Traffic objectives underdeliver on conversion learning and should only be used when you have no pixel signal yet. The objective you pick locks the optimization signal — changing it later resets learning, so be deliberate.
Targeting: broad first, narrow later. The 2026 algorithm punishes tight audience definitions for cold-start campaigns; you'll spend the first three days teaching the system who converts and spend more per learning than you would with a broad open. Start with age range, country, language, and either Smart Targeting or a single broad interest cluster. Narrow only after you have 50+ conversions and clear segment signal in the breakdown reports.
Budget and creative count matter as much as targeting. TikTok needs a minimum of $30–50/day per ad set to exit the learning phase inside a week; below that, delivery is so thin the algorithm can't find consistent signal. Creative diversity matters more than budget size: ad sets with 3–5 distinct creatives outperform single-creative ad sets by 40% on average CPA, because the algorithm can rotate to whichever creative the current audience slice responds to. One winning ad is a fluke. A creative library that the algorithm can choose from is a system.
Step 9: Launch + monitor 24 hours
The first 24 hours decide the ad set's trajectory. Watch three numbers: hook rate (viewers past second 3), CPC (cost per click), and CVR (conversion rate). Don't wait for CPA to stabilize — by the time CPA is reliable, you've spent more than you needed to spend to learn what hook rate told you in the first four hours.
Kill criteria are mechanical, not emotional. Any creative below 20% hook rate after 4 hours and $10–15 of spend is dead — turn it off, don't hope it improves. A weak hook does not recover; it just burns budget while it doesn't recover. CPC above 2x your benchmark with hook rate above 30% is a CTA problem, not a hook problem — fix the ending, relaunch. CVR below benchmark with healthy CPC is a landing-page or offer problem, not a creative problem.
Scale winners by 20% per day, not by doubling. TikTok's learning phase resets when you increase budget by more than ~20% inside 24 hours, and a reset wastes the audience learning the ad set has already done. The cadence that compounds: morning review, kill anything below threshold, raise winners by 20%, end the day with a cleaner ad-set composition than you started with. Do that for seven days and you have a paid program with predictable economics — not a series of one-off launches and reactions.