TikTok Shopping Assistant: what should product videos say?

TikTok's Shopping Assistant answers sizing, shipping and availability in chat. Make product clips that match your listing, with photo-to-video and burned cues.

5 min readSume
All posts

TikTok's new Shopping Assistant is a chat agent, so your product video no longer has to carry every answer, but it must not contradict the answers the assistant gives. TikTok announced it at Advertising Week New York on 5 October 2026 and describes it as giving "product details, shipping, sizing, availability and purchasing all within one conversation". The practical job for a seller is to make short product clips whose claims match the listing, one clip per question a shopper asks. Sume can make those clips from the photos you already have.

This post covers what TikTok has said, which details a clip should leave to the listing, and a repeatable photo-to-clip batch. It does not claim the assistant reads or ranks your videos, because TikTok's announcement does not say that.

What did TikTok actually announce for shoppers?

The TikTok newsroom post lists Shopping Assistant next to Buy Direct, which is one-click checkout from the For You feed. It also lists Agentic Leads, TikTok Ad Network and Smart+ Creative Selection. Only the first two are shopper-facing.

Shopper-facing items in TikTok's 5 October 2026 announcement (read 2026-10-13)
FeatureWhat TikTok says it doesWhat it means for a clip
Shopping AssistantConversational guidance on product details, shipping, sizing, availability and purchasingKeep clip claims identical to the listing
Buy DirectIn-app checkout from the For You feedThe clip is the last thing seen before purchase
Smart+ Creative SelectionOne approval workflow for brand uploads, creator content and AI-generated contentLabel what is generated in your own records

Which facts should the clip leave to the listing?

If a shopper can ask the assistant about shipping, sizing and availability, those facts live in one place: your catalog. A video that says "ships in 2 days" or "fits true to size" creates a second copy that can go stale. Show the product, show it in use, and leave the changing facts to the listing.

  • Show: the item from the angles in your photos, the material, a hand or object for scale.
  • Leave out: delivery times, stock counts, size advice and prices as spoken or burned text.
  • Keep consistent: color, bundle contents and accessories must match what the buyer receives.

What spec does the clip need?

For a non-Spark in-feed ad, TikTok's help page asks for 9:16 vertical at 540x960 or larger, up to 10 minutes, MP4 or MOV among others, at most 500 MB, with a bitrate of at least 516 kbps. Spark ads have no stated duration restriction. Generated clips from Sume sit well below those limits.

TikTok non-Spark in-feed video spec vs a Sume clip (read 2026-10-13)
ItemTikTok pageSume video request
Aspect ratio9:16 recommended, 16:9 and 1:1 allowedaspect_ratio 9:16
Minimum size540x960 for verticalresolution 720p or 1080p where the model lists it
DurationUp to 10 minutesduration 4-15 s on seedance-2; 4-30 s on seedance-2.5
File size500 MB or lessCheck the exported file; a short 720p clip is small

How do I turn one product photo into a clip?

Send the photo as the first frame in Sume video generation with frame_images and frame_type: first_frame. The photo sets the product and the prompt sets the motion. The request below makes a 6-second 9:16 clip; fill in the photo URL and a prompt that describes only camera and light movement, not new product features.

Run it once per photo and keep the job id next to the SKU, so the clip can be traced to its source image.

import os, time, requests

H = {"Authorization": f"Bearer {os.environ['SUME_API_KEY']}"}
body = {
    "model": "seedance-2",
    "prompt": "Slow push-in on the product on a clean table, soft daylight",
    "frame_images": [{
        "type": "image_url",
        "image_url": {"url": "https://example.com/product-front.jpg"},
        "frame_type": "first_frame",
    }],
    "aspect_ratio": "9:16",
    "resolution": "720p",
    "duration": 6,
}
job = requests.post("https://api.sume.com/v1/videos", headers=H, json=body).json()
while True:
    time.sleep(30)
    s = requests.get(job["polling_url"], headers=H).json()
    if s["status"] in ("completed", "failed"):
        break
print(s["status"], s.get("unsigned_urls"))

How do I add words without contradicting the listing?

Burn short authored lines with video captions: send cues with text, start and end, which burns overlay text without speech-to-text. Use product-name and benefit lines only. If a clip runs longer than you want, video trim cuts a [start, end) range into a new MP4 and leaves the source unchanged.

Before you publish, compare each clip against the listing: color, bundle, accessories. For the Shop-side AI content rules, see our post on TikTok Shop AI rules.

Sources

Related posts

More in Use cases

All Use cases posts

Written by Sume