On-Screen Text Expansion in German and Finnish
English supers overflow in German and Finnish and starve in CJK. Set expansion budgets, two-line fallbacks, and a regenerate-the-plate rule before type shrinks.
English supers are written to the plate they will sit on. German and Finnish are then asked to occupy that same plate, and they do not. Short English is the dangerous case, not body copy. A three-word hook that fills a lower third in English arrives in German as a compound that cannot wrap, or in Finnish as a case-inflected string that is longer than the English and refuses to hyphenate where a designer expected. The usual fix is to shrink the type until it "fits." That is how you ship unreadable supers in the two languages that most needed a layout, not a font-size slider.
CJK is the opposite pressure. Character counts often drop, but each glyph is denser and needs more vertical space, so a plate designed around English x-height looks sparse horizontally and cramped vertically at the same time. One expansion budget does not cover both problems. Design the plate for the worst case you will actually publish, write a two-line fallback, and regenerate the plate when the fallback still fails. Do not steal stroke width from the letters.
Short English is the case that breaks
W3C's article on text size in translation republishes IBM's average expansion figures for English into European languages. The pattern is the one operators keep forgetting: the shorter the source, the larger the expansion.
| English source length | Average expansion (IBM, via W3C) |
|---|---|
| Up to 10 characters | 200–300% |
| 11–20 | 180–200% |
| 21–30 | 160–180% |
| 31–50 | 140–160% |
| Over 70 | 130% |
A lower third, a sticker, a CTA button, an end-card verb: those live in the top rows. Body paragraphs live in the bottom row, which is why a translated blog can look fine while the matching video super overflows.
W3C's Flickr example is the working picture. English "views" became German "-mal angesehen" at a 2.8 ratio, Portuguese "visualizações" at 2.6, Italian "visualizzazioni" at 3. The string that was designed as a tight status label is the string that blew the layout. Video supers are status labels with motion.
Two further complications, from the same W3C article, matter more on a 9:16 plate than in a reflowing web page:
Compound nouns. German, Finnish, and Dutch build one long word where English used a phrase. W3C's example: English "Input processing features" can become German "Eingabeverarbeitungsfunktionen". English wraps. The German often will not, because there are no spaces to wrap on. A lower third that was two English lines of three words each becomes one German token that runs off the pack.
Character width and line height, the other direction. CJK glyphs are typically more complex. W3C notes that English "desktop" becomes Japanese "デスクトップ": one fewer character, more horizontal space. Non-Latin scripts also often need more line height than Latin at the same point size. A plate packed to English metrics starves in CJK even when the translator "saved characters."
None of this is a percentage you apply to every line. It is a reason to stop designing the plate around the English and calling the other languages a typesetting pass.
German compounds, Finnish agglutination
German is not "30% longer." German is sometimes almost the same length, and sometimes a single compound that is the entire super. The failure mode is wrap, not word count. If your layout assumes a space will appear where a line can break, German will not always provide one. Hyphenation rules are a linguistic decision, not a CSS overflow: hidden. A compound broken in the wrong place is a different word, or looks like one.
Finnish is agglutinative: case endings, possessives, and clitics stack onto a stem, so "in my first box" can be one token rather than four. Like German, the long token will not wrap on spaces it does not have. Finnish also uses relatively few distinct vowel letters with frequent length distinctions; shrinking type to fit a compound does not just lose elegance, it loses the difference between letters that were already small.
Practical consequences on a video plate:
- Do not set a one-line lock on any super that will go into German or Finnish. A one-line lock is an English luxury. Budget two lines at the English size, not one line at a reduced size.
- Do not pick a condensed display face as the "we'll need the room" solution. Condensed Latin is already light on stroke width. German and Finnish need the stroke more, not less, because the strings are longer and the viewer has less time. Caption readability is a reading-speed problem before it is a language problem; shrinking type to win a wrap makes both worse.
- Do not generate the letters inside the footage. In-frame type has to be right every frame. On-screen text in generated video is a temporal-consistency problem. Expansion makes it worse, because the string is longer. Stamp type in the timeline from a font that actually has the glyphs.
Check the font registry before you commit a face for a German or Finnish super. Display scripts, handwriting faces, and ultra-condensed headline fonts are the first to drop diacritics or to become unreadable at the size a 9:16 lower third actually ships. Choosing a caption font from the registry is the same check, applied to captions; supers need it too.
Expansion budgets and two-line fallbacks
Write the English to a budget, then store a fallback. Do not discover the overflow at in-market review.
A working set of rules for supers, stickers, and end cards:
- Count the English in characters, not words. IBM's table is a character table. "Get 20% off" and "Weeknight reset" are both short-string risk, even if one has more words.
- Reserve the plate for the 200–300% case on anything under 10 English characters, and for ~180% on 11–20. That is not a promise that German will use all of it. It is a promise that the layout will still exist if it does.
- Set a two-line fallback at the same point size as the one-line English. The fallback is a line break and, if needed, a shorter wording. It is not a 20% type dump. The adaptor writes the two-line version as part of the language job, not as a designer afterthought.
- Give the fallback a maximum line length in the brief. "Two lines, each no longer than the English one-liner." That gives the adaptor a real constraint. "Make it fit" does not.
- Keep the offer and the legal line on their own plates if they cannot share a two-line stack. A stacked CTA-plus-disclaimer is how the disclaimer loses hold time. Legal hold is a duration, not a font size.
Worked example, 9:16 lower third, English one-liner FIRST BOX 20% OFF (18 characters, including spaces):
| Version | Copy | Layout |
|---|---|---|
| EN, primary | FIRST BOX 20% OFF | One line, current plate |
| DE, fallback | ERSTE BOX\n20 % GÜNSTIGER | Two lines, same size, same safe zone |
| FI, fallback | ENSIMMÄINEN RASIA\n–20 % | Two lines. Do not force a one-line compound. |
The German is not a word swap of "first box 20% off." It is a two-line layout that keeps the number, the unit, and the legal shape of the offer. If the live German offer is not "20 %," the fallback is rewritten around the live offer, not around the English characters.
Safe zone is a second budget. Where on-screen text survives platform UI is not a single percentage, and TikTok caption length shrinks the safe zone. A two-line German super that "fits the plate" can still sit under the platform caption. Design the expansion into the remaining safe rectangle, not into the full frame.
If you are prompting a still that will become a title card, do not describe "a short headline at the bottom." Pin a box that already has two-line room. JSON layout prompting is how you stop a model from treating "bottom" as a one-line strip.
When to regenerate the plate
Shrinking type is allowed once: a step of weight or tracking, not a dive until the string fits. After that, the plate is wrong.
Regenerate (or rebuild in the editor) when any of these is true:
- The two-line fallback at the original size still collides with a face, a pack, or a platform control.
- The only way to keep one line is a condensed face or a size that fails a glance test on a phone.
- The super is doing legal work (offer, disclaimer, age gate) and the hold time at a readable size is shorter than the brief requires.
- CJK type looks "too small" in the English x-height even though the character count dropped. That is a line-height and glyph-density problem. Open the plate; do not add tracking to Latin metrics and hope.
The clean-plate rule still applies. Generate a blank lower-third region or a blank pack face, then stamp the localized string as a timeline overlay. Timed text overlays exist so the words can change without a new generation. Editing copy inside a finished graphic is the still-image version of the same idea. A German compound is exactly the kind of string you do not want to bake into pixels you cannot edit.
CJK is not a smaller German. Treat it as a different layout: fewer characters, heavier glyphs, more line height, often more vertical space for the same meaning. A plate that "has room for German" can still starve a Japanese super because the empty English-shaped box is the wrong shape. Budget height, not only width.
Preview the stacked type on the real picture, at the real aspect ratio, before you export. The editor's 480p preview pass is free and carries a short per-user cooldown; the final export is charged once. Use the preview to read the fallback on a phone, not to admire the English.
FAQ
Can I just leave more padding around every English super?
Padding helps, and it is not a budget. A 20% pad covers some French and fails a 10-character German CTA. Put the IBM/W3C table on the plate: short strings get two lines, not a fatter margin around one line.
Should the English be written shorter so the translation fits?
Sometimes. A shorter English source can expand more as a percentage, which is the IBM point. Write English that can accept a two-line fallback, not English that has already used the entire plate. The job of the line still has to be done; a three-word joke that cannot survive German is a transcreation problem, not a typesetting problem.
Do captions follow the same expansion math?
Captions reflow by design, so they fail on reading speed and line breaks more than on plate overflow. They still fail if you burn a one-line English caption style into German and refuse to wrap. Transcribe each language from its own audio. Do not stretch the English caption file.
When is shrinking type actually acceptable?
A single step, on a non-legal, non-offer super, when the two-line fallback is worse than a slightly smaller one-liner (for example a two-line stack that covers a face). If you need a second step, the plate is wrong. Rebuild it.