TikTok ads ban QR codes: how to check a video for one
TikTok's ad policy says ad content must not contain QR codes, with exceptions. How to pull stills from an AI-made ad video with Sume and look before upload.

No: TikTok's ad format policy says ad content must not contain quick response (QR) codes. The page lists what is allowed, a QR on product packaging or in an application, and unscannable matrix codes including item barcodes. It also lists what is not allowed in select markets: ad content with QR codes leading to third-party websites, including social media pages. An AI video model can draw a scannable-looking square without being asked, so look at the frames before you upload. Sume can extract stills at times you name.
What exactly does the policy say?
The rule sits in the Ad format and functionality policy, last updated April 2026. The table separates the general rule from the exceptions and the market-limited case. The market list for the third-party QR rule is long and includes Australia, Germany, France, Indonesia, Italy, Singapore and others; read the list on the page for your market rather than relying on a summary.
| Case | Policy position |
|---|---|
| QR code in ad content | Not allowed |
| QR on product packaging or application | Listed as allowed |
| Unscannable matrix codes, including item barcodes | Listed as allowed |
| QR leading to third-party sites, including social pages | Not allowed in the select markets listed on the page |
Why does an AI-generated ad need a check?
A product shot of a box, a poster in the background or a phone screen in a hand scene can all contain a square code pattern that the model invented. Sume's Video Router and Timeline outputs are ordinary video files, so nothing in the pipeline removes a pattern like that. The policy puts the burden on the ad, not on the tool that made it.
The check is a human or script looking at stills. Do it on the final cut, after captions and overlays are burned in, because an overlay is the usual way a code gets into an ad.
How do you pull the frames with Sume?
Video frames takes one clip on media.sume.com plus either at[] (1 to 24 times in seconds) or fps (above 0 up to 2) and returns image artifacts at source size, or clamped with max_edge from 16 to 2160. The source can be up to 300 seconds. Submit is always 202, so poll the resource. An Idempotency-Key is required on MCP writes and recommended on REST.
Video inspect is the whole-clip alternative: omit frames and you get 8 mid-bin stills at 768 px by default, with probe facts. Use png when you want lossless stills of a small code region, and pass max_edge up to 2160.
curl -X POST https://api.sume.com/v1/video-frames \
-H "Authorization: Bearer $SUME_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: qr-check-001" \
-d '{
"video_url": "https://media.sume.com/artifacts/artf_demo/ad.mp4",
"fps": 1,
"format": "png"
}'Which codes are safe to leave in?
The policy's allowed list is narrow and specific. A QR printed on a product box or shown inside an application is listed as allowed, and so are unscannable matrix codes such as item barcodes. A code that sends a viewer to a third-party site, a social page included, is the case the page restricts in the listed markets.
That wording matters for a creative brief. If a shot of a retail box happens to show a code, ask whether it leads anywhere and whether a viewer could scan it from the video. If you cannot answer yes to both, re-frame the box or blur nothing: simply choose another angle, because the policy also forbids blurred or masked third-party watermarks, so a blur is not a free fix for every overlay.
What do you do when a frame has a code?
Cut around it or regenerate the shot. Video trim takes a start and an end or duration, so removing a two second moment is two trims joined in Timeline or re-cut from the master. If the pattern sits on packaging or an app screen, the policy lists that as allowed, but a reviewer will still judge what they see, so keep the shot only when the context is clear.
Write down the rule for your team: stills at 1 fps on every final cut, a person scans for square patterns, and any hit gets a re-render. Frames are billed by their worker compute, not a fixed fee per image, so an fps of 1 on a short ad is cheap.
Sources
Related posts
More in Use cases
- Swipe up text in a TikTok ad: why it breaks policy, what to use
TikTok's ad policy names 'Swipe up to learn more' as an unsupported gesture. Keep fake gestures out of AI ad video and burn a real call to action with Sume.
- Misspelled or garbled text in an AI ad: TikTok's rule and the fix
TikTok's ad policy bans spelling mistakes in captions and illegible or unclear visuals. Stop AI video models from drawing text: burn authored cues with Sume.
- Add TikTok commercial content disclosure to a posted video
TikTok's help page lists a path for a video you already posted: More options, Ad settings, then Disclose commercial content. Labels, partner tag, and web steps.
- TikTok Ads Manager Video Editor: Three Ways In and What to Prepare
TikTok's Video Editor opens from Tools, from campaign creation, or from the Creative Library. Here is what to bring from Sume trim, captions and music.
Written by Sume