Systems Lab

Agent skill

tiktok-shopping-ads-guide

This skill should be used when the user asks to \"set up TikTok Shop ads\", \"create dynamic product ads on TikTok\", \"fix TikTok product feed errors\", \"build collection ads on TikTok\", or mentions \"TikTok Shopping\", \"Video Shopping Ads\", or \"TikTok product catalog\".

activeReaches the webInstructions only3,435 words

Filed under ABM and paid.

From Ad-Superpowers/ad-superpowers-plugin · 120 skills · 5 · pushed 2026-09-10

What it does when it runs

This skill should be used when the user asks to \"set up TikTok Shop ads\", \"create dynamic product ads on TikTok\", \"fix TikTok product feed errors\", \"build collection ads on TikTok\", or mentions \"TikTok Shopping\", \"Video Shopping Ads\", or \"TikTok product catalog\". Do NOT use for: general TikTok creative strategy (use tiktok-hook-optimization-guide), audience building (use tiktok-audience-strategy), or Spark Ads (use tiktok-spark-ads-strategy).

Read from the skill and the 0 files bundled beside it. A skill’s own description is written to be selected by an agent, so it describes the job and not the dependencies.

Keys and connectors you must supply
None found.
Hosts it reaches
  • cdn.com
  • shop.com
Tool permissions it declares
No allowed-tools in the frontmatter. It only issues instructions, so there is nothing to bound.
Actions present in the files
None. Instructions only.

Ask about tiktok-shopping-ads-guide

Opens your assistant with this page's verified links already in the prompt.

Is this safe to install?ClaudeChatGPT
Adapt it to my stackClaudeChatGPT
What else do I need for it to workClaudeChatGPT
Rather ask a human? Talk to Cheetah
git clone --depth 1 --filter=blob:none --sparse https://github.com/Ad-Superpowers/ad-superpowers-plugin.git /tmp/ad-superpowers-plugin
git -C /tmp/ad-superpowers-plugin sparse-checkout set "plugin/skills/tiktok-shopping-ads-guide"
mkdir -p ~/.claude/skills/tiktok-shopping-ads-guide
cp -R "/tmp/ad-superpowers-plugin/plugin/skills/tiktok-shopping-ads-guide/." ~/.claude/skills/tiktok-shopping-ads-guide/

Picked up without a restart. A project skill of the same name is shadowed by your personal one. For one repository only, swap ~/.claude/skills for .claude/skills. Claude Code docs ↗

Or take the whole library

This repo ships a .claude-plugin manifest, so Claude Code can install all 120 skills at once. Plugin skills are invoked as /<plugin>:<skill>, so they never collide with your own.

/plugin marketplace add Ad-Superpowers/ad-superpowers-plugin
/plugin

The folder is the same in every client that implements the format — 46 of them — so if yours is not above, only the destination changes.

Reproduced in full from Ad-Superpowers/ad-superpowers-plugin/blob/9b6385d2d2d228e4dac096a1d6bc5715c04fa736/plugin/skills/tiktok-shopping-ads-guide/SKILL.md, which is licensed MIT (repository). 3,435 words, 38 headings.

TikTok Shopping Ads Guide

Purpose

Help advertisers set up and optimize product-focused advertising on TikTok, including catalog-based dynamic ads, Video Shopping Ads (VSA), TikTok Shop integration, and collection ads. E-commerce on TikTok is growing at 3-4x the rate of traditional social commerce, but the technical setup and creative requirements are unique to the platform.

When to Use This Skill

Invoke when user mentions:

  • TikTok Shop: "How do I set up TikTok Shop ads?"
  • Product catalog: "How do I upload my product feed to TikTok?"
  • Dynamic product ads: "How do I retarget with product ads on TikTok?"
  • Shopping ads: "What are Video Shopping Ads?"
  • Collection ads: "How do I create collection ads on TikTok?"
  • Product feed: "My TikTok product feed has errors"

Required Tools

ToolPurpose
tiktok_queryPull campaign data, ad group configurations, and catalog status
tiktok_get_reportRetrieve product-level and ad-level performance data

Part 1: TikTok Shopping Ad Formats

Automated Shopping Campaign Types

TikTok offers two automated campaign types optimized for shopping outcomes:

Campaign TypeWhat It DoesBest For
Smart+ Shopping CampaignsFully automated targeting, bidding, and creative optimization using AIAccounts with sufficient pixel data (50+ purchases/week), hands-off scaling
GMV MaxMaximizes Gross Merchandise Value across TikTok Shop organics + paid adsTikTok Shop sellers wanting to maximize total store revenue

Smart+ vs Manual: Smart+ often outperforms manual setup once the algorithm has learned (typically after 7-14 days and 50+ conversions). Start manual to establish baseline data, then test Smart+. GMV Max is only available for TikTok Shop (in-app checkout) sellers.

Format Overview

TIKTOK SHOPPING AD ECOSYSTEM:
─────────────────────────────

VIDEO SHOPPING ADS (VSA)
├── Full-screen video with product card overlay
├── Product card shows: image, title, price, CTA
├── Tap product card → product detail page → checkout
├── Can link to TikTok Shop OR external website
├── Best for: Single product promotion with storytelling
└── ROAS benchmark: 3-6x for optimized campaigns

CATALOG LISTING ADS
├── Auto-generated ads from product catalog
├── TikTok creates the creative using catalog images
├── Product title, price, and image displayed
├── Lower creative effort, algorithmic optimization
├── Best for: Large catalogs (100+ SKUs)
└── ROAS benchmark: 2-4x (less creative control)

COLLECTION ADS
├── Video ad with swipeable product gallery below
├── Gallery shows 2-6 products from catalog
├── Video plays while user browses products
├── Tap product → instant landing page (in-app)
├── Best for: Product discovery, category promotion
└── ROAS benchmark: 2.5-5x

DYNAMIC SHOWCASE ADS (DSA)
├── Personalized product ads based on user behavior
├── Retargets users who viewed/carted/purchased
├── Auto-generates creative from catalog
├── Shows products the user previously engaged with
├── Best for: Retargeting, abandoned cart recovery
└── ROAS benchmark: 5-12x (retargeting advantage)

LIVE SHOPPING ADS
├── Promote a live stream with integrated product cards
├── Users watch live, tap products in real-time
├── Combines entertainment with instant purchase
├── Requires TikTok Shop + live streaming capability
├── Best for: Flash sales, product launches, demonstrations
└── ROAS benchmark: 4-10x (high engagement, high conversion)

Format Selection Decision Tree

                    What's your primary goal?
                            │
           ┌────────────────┼────────────────┐
           ▼                ▼                ▼
     Product           Retargeting      Brand +
     Discovery                          Commerce
           │                │                │
           ▼                ▼                ▼
      How many           Dynamic         Video Shopping
      products?          Showcase Ads     Ads (VSA)
           │                                 │
     ┌─────┼─────┐                           ▼
     ▼     ▼     ▼                    Single product
    1-5   6-50   50+                  or category?
     │     │     │                     │         │
     ▼     ▼     ▼                     ▼         ▼
   VSA   Collection  Catalog         VSA      Collection
         Ads        Listing Ads               Ads

Do you have TikTok Shop set up?
├── Yes → All formats available, prefer in-platform checkout
└── No  → VSA + Collection Ads linking to external website
          (Dynamic Showcase requires pixel + catalog)

Part 2: Product Catalog Setup

Catalog Creation Methods

MethodBest ForSetup TimeMaintenance
Manual upload (CSV)Small catalogs (<100 products)1-2 hoursManual updates
Scheduled feed (URL)Medium catalogs (100-10K)2-4 hoursAuto-refresh (hourly/daily)
TikTok Catalog Manager APILarge catalogs (10K+)4-8 hoursFully automated
Shopify integrationShopify stores30 minutesAuto-sync
WooCommerce integrationWooCommerce stores1-2 hoursAuto-sync
BigCommerce integrationBigCommerce stores30 minutesAuto-sync

Product Feed Specification

Required fields:

FieldFormatExampleNotes
sku_idString, max 100"PROD-12345"Unique per product, never reuse
titleString, max 255"Blue Organic Cotton T-Shirt"Include key attributes
descriptionString, max 10,000"Premium organic cotton..."Rich description, no HTML
availabilityEnum"in stock""in stock", "out of stock", "preorder"
conditionEnum"new""new", "refurbished", "used"
priceDecimal + currency"29.99 EUR"Must match landing page price
linkURL"https://shop.com/product"Product detail page URL
image_linkURL"https://cdn.com/img.jpg"Min 500x500px, max 4MB
brandString"EcoBrand"Brand name

Recommended fields (improve performance by 20-40%):

FieldFormatImpact
additional_image_linkUp to 10 URLs+15-25% CTR (more visual variety)
product_typeCategory pathBetter algorithmic matching
google_product_categoryGoogle taxonomy IDStandard categorization
sale_priceDecimal + currencyTriggers "SALE" badge (+20% CTR)
custom_label_0 through custom_label_4Any stringSegment products for campaigns
age_groupEnumCompliance in regulated categories
genderEnumBetter targeting alignment
colorStringVisual attribute matching
sizeStringSize-specific remarketing
materialStringHelps with search/discovery

Product Feed Best Practices

TITLE OPTIMIZATION:
├── Structure: [Brand] + [Product Type] + [Key Attribute] + [Variant]
├── Example: "EcoBrand Organic Cotton T-Shirt - Ocean Blue, M"
├── Include: Brand, product type, material, color, size
├── Exclude: ALL CAPS, excessive punctuation, promotional text
├── Length: 65-150 characters (optimal for display)
└── Impact: Optimized titles improve CTR by 15-30%

IMAGE OPTIMIZATION:
├── Primary image: Product on white/clean background
├── Additional images: Lifestyle, in-use, detail shots
├── Resolution: 800x800px minimum (1200x1200px recommended)
├── Aspect ratio: 1:1 for catalog display
├── No text overlay on product images (TikTok policy)
├── No watermarks or logos on images
└── Impact: High-quality images improve CVR by 20-40%

PRICE ACCURACY:
├── Feed price MUST match landing page price (within 1 hour)
├── Include sale_price when on promotion
├── Currency must match target market
├── Price updates should sync at minimum every 6 hours
└── Impact: Price mismatches = ad disapproval + trust destruction

AVAILABILITY SYNC:
├── Out-of-stock products waste ad spend (clicks to dead ends)
├── Sync inventory at minimum every 4 hours
├── Set up alerts for high-traffic products going OOS
├── Use "preorder" status for upcoming launches
└── Impact: Accurate stock = 10-15% better ROAS

Feed Troubleshooting

ErrorCauseFix
"Invalid image URL"Image URL returns 404 or is not HTTPSUse HTTPS CDN URLs, verify accessibility
"Price format invalid"Missing currency or wrong decimal formatUse "29.99 EUR" format (space between value and currency)
"Duplicate SKU"Same sku_id used for multiple productsEnsure unique sku_id per variant
"Title too long"Title exceeds 255 charactersShorten to essential attributes
"Missing required field"Required field empty or nullFill all required fields, use "N/A" only where permitted
"Image too small"Image below 500x500pxRe-export at minimum 800x800px
"Price mismatch"Feed price differs from landing pageSync feed more frequently, check currency
"Category not recognized"Non-standard product_type valueUse Google Product Taxonomy categories
Low match rateProducts not showing in adsCheck availability, increase image quality

Part 3: Video Shopping Ads (VSA)

VSA Structure

┌─────────────────────────────────┐
│                                 │
│         FULL-SCREEN VIDEO       │
│                                 │
│    (15-60 second TikTok ad)     │
│                                 │
│                                 │
│  ┌───────────────────────────┐  │
│  │ 📦 Product Name     €29  │  │
│  │ ⭐ 4.8 (2.1K reviews)   │  │
│  │        [Shop Now]         │  │
│  └───────────────────────────┘  │
│                                 │
│    ♥ 💬 ↗ 🎵                   │
└─────────────────────────────────┘

Product card appears at bottom of video.
Tapping card → Product Detail Page → Checkout

VSA Creative Best Practices

VIDEO REQUIREMENTS:
├── Length: 15-60 seconds (optimal: 21-34 seconds)
├── Aspect ratio: 9:16 (full screen vertical)
├── Resolution: 720x1280 minimum (1080x1920 recommended)
├── Show product within first 3 seconds
├── Product must be clearly visible (not blurry/distant)
├── Include at least one close-up product shot
└── End with product in hand/use + verbal CTA

CREATIVE STRUCTURE FOR VSA:
Second 0-2:   Hook (problem statement or product reveal)
Second 3-8:   Product introduction (what it is, why it matters)
Second 9-18:  Demonstration (show product in use)
Second 19-25: Social proof (reviews, results, testimonials)
Second 26-30: CTA + price anchor ("only €29, link below")

TOP-PERFORMING VSA FORMATS:
1. "TikTok Made Me Buy It" review (conversion-focused)
2. Product demo/tutorial (consideration-focused)
3. Before/after transformation (proof-focused)
4. Unboxing experience (excitement-focused)
5. "Found this on TikTok" story (social proof-focused)

VSA Performance Benchmarks

MetricBelow AverageAverageGoodExcellent
ROAS<2x2-4x4-7x>7x
CTR<0.8%0.8-1.5%1.5-2.5%>2.5%
CVR (from click)<1%1-2.5%2.5-5%>5%
Add to Cart Rate<3%3-6%6-10%>10%
Product Card Click Rate<2%2-5%5-8%>8%
Cost Per Purchase>€50€25-50€10-25<€10

Part 4: Dynamic Showcase Ads (Retargeting)

How DSA Works

USER JOURNEY → DSA RESPONSE:

1. User views product page (pixel fires ViewContent)
   → DSA shows that exact product + similar products

2. User adds to cart (pixel fires AddToCart)
   → DSA shows carted products with urgency messaging

3. User initiates checkout but doesn't complete (pixel fires InitiateCheckout)
   → DSA shows checkout products with "complete your order" CTA

4. User purchased (pixel fires CompletePayment)
   → DSA shows complementary/upsell products

5. User browsed category but no specific product (pixel fires PageView on category)
   → DSA shows top products from that category

DSA Retargeting Windows

AudienceWindowCreative AngleExpected ROAS
Viewed product (no action)1-7 days"Still thinking about it?"3-6x
Viewed product (no action)8-14 days"This is selling fast"2-4x
Added to cart1-3 days"Your cart is waiting"8-15x
Added to cart4-7 days"Still available — for now"5-10x
Initiated checkout1-3 days"Complete your order" + discount10-20x
Purchased (cross-sell)7-30 days"Customers also bought"4-8x
Purchased (replenish)30-60 days"Time for a refill?"5-10x

DSA Setup Requirements

PREREQUISITES:
□ TikTok Pixel installed and firing correctly
□ Pixel events configured: ViewContent, AddToCart, InitiateCheckout, CompletePayment
□ Product catalog uploaded and approved (>20 active products)
□ Catalog items match pixel content_id parameter
□ Minimum 1,000 pixel events in last 28 days (for algorithm learning)
□ Custom audience created from pixel events

COMMON ISSUES:
├── "No products to show" → content_id in pixel doesn't match sku_id in catalog
├── "Low delivery" → Retargeting audience too small (<1,000 users)
├── "Products showing wrong" → Catalog not synced, stale product data
└── "High CPC" → Window too long (showing to cold users)

Part 5: Collection Ads

Collection Ad Structure

┌─────────────────────────────────┐
│                                 │
│         HERO VIDEO              │
│    (plays automatically)        │
│                                 │
│                                 │
├─────────────────────────────────┤
│  ┌──────┐  ┌──────┐  ┌──────┐  │
│  │ Prod │  │ Prod │  │ Prod │  │
│  │  1   │  │  2   │  │  3   │  │
│  │ €29  │  │ €39  │  │ €19  │  │
│  └──────┘  └──────┘  └──────┘  │
│         Swipe for more →        │
└─────────────────────────────────┘

Tapping any product → Instant Page (in-app) → External site / TikTok Shop

Collection Ad Best Practices

HERO VIDEO:
├── Length: 10-30 seconds (shorter is better for collections)
├── Show all gallery products in the video
├── Feature products in lifestyle/use context
├── End with a browse CTA ("Swipe to shop the look")
└── Don't make the video too product-dense (3-4 products max)

PRODUCT GALLERY:
├── 2-6 products (optimal: 4 products)
├── Products should have visual cohesion (same collection/style)
├── Price range should be clear (anchor low and high)
├── Lead with best seller or lowest price
├── Include a mix of price points
└── All products must be in stock

INSTANT PAGE (landing experience):
├── TikTok hosts the page (loads in-app, not external browser)
├── Load time: <1 second (native, not web redirect)
├── Include: Product images, description, price, Add to Cart
├── Customizable layout (TikTok templates available)
├── Can include video embedded in the page
└── Exit to external site for checkout (if not TikTok Shop)

Collection Ad Use Cases

Use CaseHero Video ContentGallery ProductsGoal
"Shop the Look"Outfit / lifestyle videoIndividual items from the lookCross-sell
"New Arrivals"Season/collection launch video4-6 new productsDiscovery
"Best Sellers"Compilation of product shotsTop 4-6 sellersSocial proof
"Gift Guide"Gift-giving scenario videoCurated gift options by priceSeasonal
"Under €50"Value-focused lifestyle videoBest products under price pointConversion
"Bundle Deal"Bundle in useIndividual items + bundleAOV increase

Part 6: TikTok Shop Integration

TikTok Shop vs External Website

FactorTikTok ShopExternal Website
Checkout frictionVery low (in-app checkout)Higher (redirect to browser)
Conversion rate2-4x higherBaseline
Customer data ownershipTikTok owns primary dataYou own all data
Payment processingTikTok handles (commission 2-8%)Your processor
Return/refund handlingTikTok policies applyYour policies
Branding controlLimited (TikTok template)Full control
AttributionBuilt-in, accuratePixel-dependent
Organic discoveryProducts appear in TikTok Shop tabNo organic TikTok traffic
ShippingTikTok logistics availableYour fulfillment
Available marketsUS, UK, ID, TH, MY, VN, PH, SG, IEGlobal

TikTok Shop Setup Requirements

ELIGIBILITY:
□ Business registered in supported market
□ Business license or registration document
□ Bank account for payouts
□ Product compliance (no prohibited categories)
□ Minimum inventory and fulfillment capability
□ Agree to TikTok Shop seller terms

SETUP STEPS:
1. Apply at seller-center.tiktok.com
2. Upload business documents for verification (1-3 business days)
3. Set up warehouse and shipping templates
4. Upload products (manual, CSV, or API)
5. Set pricing and promotions
6. Link TikTok Ads Manager account
7. Create first Video Shopping Ad

COMMISSION STRUCTURE (varies by category):
├── Electronics: 3-5%
├── Fashion/Apparel: 5-8%
├── Beauty/Personal Care: 5-8%
├── Home & Garden: 5-8%
├── Food & Beverage: 2-5%
└── General: 5% baseline

TikTok Shop Performance Optimization

PRODUCT LISTING OPTIMIZATION:
├── Title: Include search keywords (TikTok Shop has search)
├── Images: 5-9 images per product (includes lifestyle shots)
├── Video: Add product video (listings with video get 2x views)
├── Reviews: Seed with initial reviews (offer samples to early buyers)
├── Price: Competitive within TikTok Shop (users compare easily)
└── Shipping: Offer free shipping if possible (biggest conversion driver)

PROMOTIONS:
├── Flash deals: 24-hour discounts (3-5x traffic increase)
├── Bundle deals: Buy 2+ for discount (AOV increase)
├── Vouchers: Shop-wide or product-specific coupons
├── Free shipping thresholds: Increase AOV
└── Exclusive TikTok pricing: Incentivize in-app purchase

Part 7: Product Feed Custom Labels Strategy

Using Custom Labels for Campaign Segmentation

Custom labels (custom_label_0 through custom_label_4) allow you to segment your catalog for targeted campaigns.

RECOMMENDED LABEL STRATEGY:

custom_label_0: PERFORMANCE TIER
├── "bestseller" — Top 20% by revenue
├── "mid-performer" — Middle 60%
├── "slow-mover" — Bottom 20%
└── Use: Allocate more budget to bestseller campaigns

custom_label_1: MARGIN TIER
├── "high-margin" — Gross margin >60%
├── "medium-margin" — Gross margin 30-60%
├── "low-margin" — Gross margin <30%
└── Use: Set ROAS targets by margin (higher margin = lower ROAS acceptable)

custom_label_2: SEASONALITY
├── "spring-summer" — Seasonal products
├── "fall-winter" — Seasonal products
├── "evergreen" — Year-round products
├── "holiday" — Holiday-specific products
└── Use: Activate/deactivate seasonal campaigns automatically

custom_label_3: PRICE RANGE
├── "under-25" — Products under €25
├── "25-50" — Products €25-50
├── "50-100" — Products €50-100
├── "over-100" — Products over €100
└── Use: Tailor creative and targeting by price sensitivity

custom_label_4: PRODUCT TYPE / COLLECTION
├── "new-arrival" — Last 30 days
├── "clearance" — End of lifecycle
├── "core-collection" — Always available
├── "limited-edition" — Scarcity messaging
└── Use: Match messaging to product lifecycle stage

Campaign Structure Using Custom Labels

CAMPAIGN: Prospecting (cold audiences)
├── Ad Group 1: Bestsellers, high margin → Aggressive bidding
├── Ad Group 2: New arrivals → Discovery-focused creative
└── Ad Group 3: Core collection → Evergreen creative

CAMPAIGN: Retargeting (warm audiences)
├── Ad Group 1: Viewed products (DSA) → "Still interested?"
├── Ad Group 2: Cart abandoners (DSA) → "Complete your order"
└── Ad Group 3: Past purchasers → Cross-sell complementary products

CAMPAIGN: Seasonal
├── Ad Group 1: Spring-summer products → Seasonal creative
├── Ad Group 2: Holiday products → Gift-guide creative
└── Ad Group 3: Clearance products → Urgency + deep discount

Part 8: Measuring Shopping Ad Performance

Pull Shopping Ad Data

tiktok_get_report(
    start_date="2026-03-29",
    end_date="2026-04-05",
    level="ad",
    metrics=["spend", "impressions", "clicks", "conversion",
             "cost_per_conversion", "conversion_rate",
             "total_purchase_value", "total_onsite_shopping_value"]
)
# Note: ROAS is calculated as total_purchase_value / spend.

Shopping-Specific KPIs

KPIFormulaGood BenchmarkAction if Below
ROASRevenue / Ad Spend>3x (prospecting), >6x (retargeting)Review product selection, creative quality
Add-to-Cart RateAdd to Carts / Clicks>5%Improve product page / pricing
Cart-to-Purchase RatePurchases / Add to Carts>30%Fix checkout friction, add urgency
Product Card CTRProduct Card Clicks / Impressions>3%Improve product card image/price display
Average Order ValueTotal Revenue / Number of OrdersAbove product price (cross-sell working)Add bundles, recommendations
Cost Per AcquisitionAd Spend / Purchases<30% of AOVOptimize targeting, creative, product mix
Catalog Match RateMatched Products / Total Products>90%Fix feed errors, update sku_ids

Product-Level Optimization

Identify your best and worst performing products:

PRODUCT PERFORMANCE QUADRANT:

             HIGH ROAS
                │
    SCALE UP    │    CASH COWS
    (high ROAS, │    (high ROAS,
     low spend) │    high spend)
                │
   ─────────────┼─────────────── HIGH SPEND
                │
    CUT/FIX     │    REVIEW
    (low ROAS,  │    (low ROAS,
     low spend) │    high spend)
                │
             LOW ROAS

Action by quadrant:
├── Cash Cows: Maintain, protect, increase budget cautiously
├── Scale Up: Increase budget, promote to collection ads hero
├── Review: Test new creative, check product page, fix pricing
└── Cut/Fix: Pause if ROAS <1x, fix feed issues, or remove from catalog

Quick Reference: Shopping Ads Setup Checklist

  1. Choose shopping format(s) based on goal and product count
  2. Set up product catalog with all required fields
  3. Upload additional images and optimized titles
  4. Configure custom labels for campaign segmentation
  5. Install and verify TikTok Pixel (ViewContent, AddToCart, InitiateCheckout, CompletePayment)
  6. Verify pixel content_id matches catalog sku_id
  7. Create product sets using custom labels
  8. Set up prospecting campaign (Collection or VSA with bestsellers)
  9. Set up retargeting campaign (DSA with pixel audiences, 1-7 day windows)
  10. Monitor catalog health daily, product performance weekly, ROAS continuously

Other skills for the same job

Different authors, same problem. Matched on the words in the skill name, across every library in the catalogue except this one.

Need help setting it up?

This page tells you what tiktok-shopping-ads-guide does and what it needs. Cheetah builds the agent setup it runs inside: data, CRM, sequencing and the guardrails.

Book a call →

The directory stays free. There is nothing gated behind this.