TikTok safe zone captions: anchor_ratio and safe_width_ratio on Sume

TikTok's ad page says safe zones vary by orientation and caption length and ships reference files. Sume's caption design fields move the line; ranges listed.

5 min readSume
All posts

TikTok's in-feed ad page (read 2026-10-08) says safe-zone dimensions depend on video orientation, caption length and additional formats, and it provides downloadable reference files for left-to-right and right-to-left languages. It does not print the numbers on the page we could fetch, so this post gives none. What it does give is how to move burned-in captions on Sume once you have measured the zone from TikTok's files: placement.anchor_ratio and typography.safe_width_ratio.

The two fields

Sume's video captions docs list a design block that overrides a style for one request. Two groups matter for a safe zone. The docs describe placement.anchor_ratio as the center of the caption line as a fraction of the frame height. The valid ranges come from the caption renderer in the repo.

Caption design fields for placement (Sume docs and repo, as of 2026-10-08)
FieldMeaningRange
placement.anchor_ratioCenter of the line, as a fraction of frame height0.05 to 0.95
placement.landscape_anchor_ratioSame, for landscape frames0.05 to 0.95
typography.safe_width_ratioWidth the caption may use0.3 to 1
typography.font_size_ratioText size relative to the frameSee docs

From TikTok's file to a ratio

Open TikTok's reference file for your orientation and read how far from the top the unsafe band ends and how far from the bottom the next one starts. Divide a pixel position by the frame height to get a ratio. For a 1920 pixel tall frame, a caption centered 1344 pixels from the top has anchor_ratio 1344 / 1920 = 0.7. For a 1080 pixel wide frame where the zone allows 864 pixels of width, safe_width_ratio is 864 / 1080 = 0.8. These two numbers are examples of the arithmetic, not TikTok's values.

{
  "video_url": "https://example.com/clean.mp4",
  "style": "black-outline",
  "design": {
    "placement": { "anchor_ratio": 0.7 },
    "typography": { "safe_width_ratio": 0.8 }
  }
}

Limits of this route

The captions route reads a public HTTPS video URL and needs audible speech unless you author cues. A style of punch or tiktok-green does not take a design block. Use a style such as black-outline, or leave the style off and let the text pick one. The docs also mark standalone captions as a compatibility route and point new caption work at HyperFrames, so check the docs page for the current route before you build on it. The ad caption field rules are in this post.

A workflow that avoids guessing

Start with TikTok's reference file for your orientation, and mark the unsafe bands on a frame of your video. Convert the first safe pixel row and the last safe pixel row to fractions of the frame height. Put the anchor between them, and leave room for a second caption line, since the page says the zone depends on caption length.

Burn one test clip, look at a frame from the result, and adjust anchor_ratio in steps of 0.02 to 0.05. Because a style with a bad design number is rejected at request time with a 400, a wrong value fails before you pay for a render. The ranges are small enough that a 0.05 to 0.95 anchor covers the whole frame.

  • Measure from TikTok's files, not from memory.
  • Test a short clip first.
  • Change one number at a time.

Sources

Related posts

More in Media tools

All Media tools posts

Written by Sume