Position Captions Off Faces and Type
Center-bottom captions sit on generated mouths and burned-in prices. WebVTT and TTML regions, when to raise or split, and a vertical safe-zone review.
Center-bottom is the default caption slot, and it is also where generated talking heads put the mouth, product ads put the price, and every short-form player draws its chrome. A speech-timed, readable caption in that slot still fails if it covers the face or the type. Placement is a third pass, after words and after timing.
BBC subtitle guidelines tell authors to consider the image and to use vertical positioning to avoid obscuring important information. Netflix's language guides: move a subtitle when a horizontal line would obstruct text or action. Neither treats "bottom center, always" as a specification.
Center-bottom is a collision zone
Three things compete for the same band.
Generated mouths. Image-to-video and talking-head models fill the lower third with the face. A two-line caption on that face hides the only visual evidence of who is speaking. Lip-readers lose the cue BBC is trying to protect. Hearing viewers get a talking chin.
Burned-in type. Prices, legal lines, pack shots, and forced narratives already occupy the slot. A caption on a price hides the one number compliance and conversion both need. Netflix Japanese guidance: do not use top horizontal positioning unless you have to; go vertical when a horizontal subtitle would obstruct on-screen text; if dialogue and a forced narrative run at once, put dialogue at the bottom and the narrative vertically, or both vertically on opposite sides.
Player and platform chrome. TikTok's own ad documentation makes caption length a layout input, which is why caption length shrinks the safe zone. Independent of that, safe zones for on-screen text exist because the platform UI is not your caption renderer. A closed-caption region that is "correct" in a bare player still lands under a username, a CTA, or a progress bar in the feed.
Burned-in captions have no escape hatch. A viewer cannot drag them off a mouth. Sidecar captions can be moved if the player honours cue settings; many social uploads will ignore those settings and draw a default bottom block anyway. Decide placement per destination, the same split as burned-in versus SRT and VTT.
What WebVTT and TTML can actually place
SubRip (.srt) cannot place anything. A conversion from VTT to SRT strips cue settings. Versely's browser-side VTT to SRT converter is explicit about that: position, line, size, alignment, STYLE, REGION, and inline classes do not survive, because SubRip has no representation for them. If you need placement, stay in WebVTT or TTML until the player that will draw the captions.
WebVTT cue settings on the timing line:
| Setting | What it does | Typical use |
|---|---|---|
line |
Vertical position (line number or percentage) when text is horizontal | Raise a cue off a face; line:0 or line:10% is top |
position |
Horizontal position of the cue box | Nudge a speaker's line toward that speaker |
size |
Width of the cue box as a percentage of the video | Narrow a box so it does not sit on a pack shot |
align |
Alignment of text inside the cue box (start, center, end) |
Match a left- or right-placed speaker |
vertical |
rl or lr writing mode |
Japanese vertical captions |
region |
Named region defined in a REGION block |
A reserved lower band that the rest of the captions share |
Example of a cue lifted off a talking mouth and narrowed away from a right-side price:
00:00:04.000 --> 00:00:06.400 line:18% position:50% size:70% align:center
We ship Tuesday if you confirm tonight.
TTML / EBU-TT / IMSC do the same job with regions: tts:origin, tts:extent, tts:displayAlign, tts:textAlign. BBC's note for faces: if the region is tall enough for two lines and tts:displayAlign is before, a smaller rendered font moves the second line up into the mouth. Set display alignment so a smaller font still sits on the edge you intended.
WebVTT will try to avoid overlapping cues. TTML will not. In WebVTT, overlap auto-adjustment can shove a placed cue back onto a face. Watch it in the actual player.
None of this runs in Versely's burn-in path. Versely caption presets expose a position field with three values (top, middle, bottom) across 45 presets in nine families. That is the lever for burned-in social work, not a WebVTT region. If the destination honours VTT, author the sidecar separately.
When to raise, split, or shrink
You have three moves. Use them in this order, because each one costs more picture.
Raise. Move the cue to the top or to a high line percentage when the lower third is a mouth, a price, or platform chrome. Several caption families already ship a top variant (Classic Top, Halo Top, Paper Top, Ink Top), so a raise is a preset swap, not a restyle. Top placement competes less with mouths and more with usernames; check the platform safe zone before you batch it.
Middle, only when the subject is not in the middle. Headline Center and other middle presets exist because some shots have a sky or a table in the centre and the face at the edge. On a generated close-up, middle is how you caption the teeth. Do not use it as a generic "safe" slot.
Split the cue into two regions, or two times. If a price and a face both need the bottom, you cannot put a two-line caption there. Split: a short dialogue cue at the top, and leave the price alone. If two speakers are on screen, two short one-line cues placed toward each speaker beat one centered block. BBC still uses colour as the preferred speaker-ID method and treats horizontal placing as a legacy technique, but the underlying need — do not stack two people into one anonymous box over one face — has not gone away.
Shrink the box, not the type. A full-width two-line block is what covers a pack shot. size:60% plus position toward the empty side of the frame keeps the type size and gives the product back. Do not drop to a hairline font to "fit" the lower third; that is a contrast and weight problem, not a placement one.
When the caption is burned in, you cannot line: it later. Pick the preset position before the export. The editor's 480p preview pass is free and carries a short per-user cooldown; use it on the brightest shot and the close-up, because a style that clears a wide product shot can still sit on a mouth in the talking-head cut.
A vertical safe-zone review
Do this on a phone, in the destination UI, not only in the editor.
- Draw the contested bands. On 9:16: the bottom band where captions, prices, and platform UI collide; the top band where usernames and the clock sit; the centre where the generated face usually is. On 16:9 web: the lower-centre default caption region, plus any burned-in lower third already in the file. Decide the surviving region before you render.
- List what must remain visible. Mouths of on-camera speakers. Prices and legal. Pack shots. Faces in testimonials. If a caption would cover any of those, it moves.
- Assign a slot per shot, not per video. A talking-head shot gets top or a high
line. A table-top product shot with a clean lower third can stay bottom. A shot with burned-in price and a face needs the caption at the top or off to the side, and may need the price recut if both still collide. - Preview burned-in presets on your footage. Preview a caption style on a few seconds of the actual video before a full caption pass. Look at the mouth, not the kerning.
- For sidecar VTT, inspect in the real player with cue settings on. Then, if a destination requires SRT, accept that placement will fall back to default. Do not author a careful
line:15%file, convert it to SRT, and expect the raise to survive. - Watch the close-up and the product insert on a phone. A 16:9 monitor will not show you a 9:16 mouth collision. The overlay pass is still yours.
If you are captioning in Versely for a muted feed, burn in a top or middle preset on the shots that need it, and keep bottom for the shots whose lower third is empty. Mixing positions inside one video is allowed. Mixing them at random reads as a broken renderer. Change position when the picture changes, on the cut.
FAQ
Can I leave captions at the bottom and just add a background plate?
A plate (White Box, Black Box, or any opaque card) solves contrast, not occlusion. An opaque box on a mouth is a more legible way to hide the mouth. Raise the cue, or recut the shot so the face is not in the caption band.
Do WebVTT regions work on TikTok and Reels?
Treat them as no. Those destinations want burned-in text in a preset position, which is what adding captions to a video produces. WebVTT line and region are for players that implement the spec: a website <video> with a <track>, some OTT apps, some accessibility-first players. Author both if you ship both.
Should Japanese captions go vertical by default?
Netflix Japanese uses horizontal as the default and vertical when a horizontal line would obstruct text or action, defaulting to the right edge unless that edge is also blocked. Do not verticalize a Latin caption track to "look CJK." Use vertical:rl when the language and the house guide say so.
How do I preview placement without paying for a full export?
In Versely, the 480p preview pass is free and sits behind a short per-user cooldown. For sidecar VTT, play the file in a browser with the track enabled and a safe-zone overlay you trust. A monitor at 16:9 will not show you a 9:16 mouth collision; use a phone.