Back to Blog
subtitle styling best practicesqualityhow-to

Subtitle Styling That People Actually Read

DubLab TeamSeptember 14, 2026 14 min read

Subtitles are not decoration. When you dub a video, adding captions makes the dialogue readable to anyone in a loud room, without sound, or watching with a language barrier. But bad subtitle styling kills that benefit. Viewers skip ahead, miss context, or abandon the video entirely. The difference between a readable and unreadable subtitle is not a font choice or a color. It is a small set of concrete decisions: line length, speed, position, and contrast.

This is not taste. It is measurement.

Subtitle styling in a video editing interface

Line Length Matters

A single line of subtitle should not exceed 40-45 characters. Above that, your viewer's eyes move left and right instead of down to catch the next subtitle. They miss scenes. They rewind. They leave.

Test this yourself: read a 60-character line at arm's length on your phone. You move your head, not your eyes. That motion breaks focus on the video.

The rule holds across languages, but the impact changes. English compresses well. German and Finnish expand. A 35-character limit in English becomes 30 characters in German if you want the same reading comfort.

Why Long Lines Fail

When subtitles exceed 50 characters, several problems stack. First, your viewer's eyes saccade left and right faster than they can track video action. Second, on mobile screens or TV, oversized text runs off the edge. Third, when a long line pairs with a second line of similar length, the visual block looks dense and hostile to reading.

Consider a worked example. You are dubbing a tutorial video into German. The original English is: "Let's look at how the system processes these requests."

In English (48 characters): Line 1: "Let's look at how the system processes" Line 2: "these requests"

In German (56 characters as one line): "Schauen wir uns an, wie das System diese Anfragen verarbeitet."

The German version needs to split differently: Line 1: "Schauen wir uns an, wie das" Line 2: "System diese Anfragen verarbeitet"

Split longer sentences deliberately. Do not break at random. Cut at clause boundaries or natural pauses in speech.

Bad: "The machine learning model processes images at 100 frames" Good: Line 1: "The machine learning model processes" Line 2: "images at 100 frames"

Failure Mode: The Cut-off Line

You finish your subtitles, upload to YouTube, and notice subtitles on the right side are cropped. This happens when you ignore the safe area and overshoot character limits. Mobile viewers see only partial text, which breaks comprehension. The fix is not to re-upload. The fix is to count characters, measure against the safe area width in your video player, and test on mobile.

Reading Speed and Timing

A subtitle should stay on screen long enough to be read at a comfortable pace, but not so long that it feels static. The baseline is 150 words per minute for comfortable reading. Most viewers read faster than they speak. This is your margin.

For standard subtitle timing, use the minimum rule: 1 second per line of text. If a line has 10 words, give it 1 second. If it has 25 words spread across two lines, give it 1.5 seconds. Never drop below 0.8 seconds (emergencies only). Viewers need time to locate the text, recognize it, and decode it.

When you dub into a language with heavier morphology or longer words (German, Turkish, Polish), add 0.2-0.3 seconds. Your viewers are decoding denser text.

Timing by the Numbers

Here is a practical formula. Count the characters in your subtitle, divide by 14, and round up. This gives you the minimum duration in seconds.

Example: Your subtitle is "Das ist ein sehr wichtiges Konzept" (35 characters). 35 / 14 = 2.5 seconds minimum.

This accounts for the fact that longer languages with more syllables take longer to decode. English "That is a very important concept" (34 characters) takes 2.4 seconds. German takes slightly more.

Check your timing by reading aloud. If you rush, your viewers will too. Play the video back at 1.5x speed. If the subtitles disappear before you finish reading, they are too fast.

Failure Mode: The Vanishing Subtitle

A common mistake: you cut the subtitle duration to fit a gap in the dialogue, but viewers cannot read it in time. They see white text flash for 0.5 seconds and miss it entirely. They rewind, confused. The video feels broken. The symptom is that viewers skip back repeatedly over the same subtitle, or skip the video entirely because it feels hard to follow. The fix is to test timing on a real person. Have someone watch the video without sound and ask if they felt rushed. If yes, add 0.3-0.5 seconds to all subtitles in that section.

ScenarioDurationLanguageCharactersCharacters/Second
Short phrase1sEnglish1515
Medium line2sEnglish2814
Two-line subtitle3sEnglish4214
German equivalent3sGerman4013
Japanese (horizontal)2.5sJapanese208

Note: Japanese and CJK languages decode slower horizontally because longer words take more time to recognize.

Contrast and Color

White text on black background is the standard. It is the standard because it works. Do not use light gray text. Do not use colored text unless you are creating secondary dialogue or speaker identification.

Minimum contrast ratio: 7:1. Test it. Many online tools check WCAG compliance.

For dark backgrounds: pure white (#FFFFFF) or off-white (#F0F0F0). For light backgrounds (rare, avoid them): pure black (#000000).

Add a thin drop shadow or text outline, 1-2 pixels. This keeps subtitles readable when dialogue overlaps lighter areas of the video. Do not use thick outlines. It looks amateur and costs legibility.

For speaker labels or multiple voices, use a second color only if it is a different hue with the same contrast ratio. Yellow for narrator, white for subject. Never use color alone to differentiate speakers.

Testing Contrast

Open your video in your editing software. Export a frame that has both dark and light areas. Place your subtitle text over it. If you can read the text without struggling, your contrast is likely sufficient. Use a tool like WebAIM's contrast checker to verify the ratio. If it is below 7:1, adjust the text color or add a darker background behind the text.

Failure Mode: The Invisible Subtitle

You finish a scene with bright natural sunlight in the background. Your white subtitles are centered at the bottom over a white wall. Nobody can read them. The symptom is that viewers complain subtitles are unreadable in certain scenes, or you notice them squinting at the screen. The fix is to add a semi-transparent dark background panel behind the text, or to add a 2-pixel black outline around the white text.

Safe Areas and Position

Your subtitle safe area is the central 90% of the screen horizontally and the bottom 20% vertically. Stay inside it. Older TVs, mobile screens, and encoded videos all crop margins. Subtitles outside safe area often get cut off.

Position subtitles at the bottom center of the frame, never the top. Your viewer's eye returns to the bottom after reading dialogue. Put text where eyes naturally land.

If the video has hard-burned text at the bottom (on-screen captions, lower-thirds), push subtitles higher or use a semi-transparent background behind text. Do not overlap two layers of text. It is unreadable and breaks accessibility.

Measuring the Safe Area

In a 1920x1080 video:

  • Horizontal safe area: from x=96 to x=1824 (center 1728 pixels)
  • Vertical safe area: from y=864 to y=1056 (bottom 192 pixels)

For subtitle text, aim to place the baseline (the bottom edge of the text) around y=1000. This leaves room for text height and prevents clipping on older displays.

Failure Mode: The Clipped Corner

You upload to TikTok and notice your subtitles disappear on the right side when watched on an iPhone. TikTok crops the video to fill the screen, clipping text outside the safe area. The fix is to never place text closer than 5% of the screen width from the left or right edge.

Per-Language Differences

Subtitle styling is not universal.

English and French viewers expect subtitles at the bottom, 20 pixels up. German viewers tolerate denser text; slightly larger font size helps (14-16pt instead of 12-14pt).

Japanese, Chinese, and Korean have different conventions. Japanese and Chinese can stack vertically, which changes line length rules entirely. If you are using horizontal layout, reduce line length to 12-15 characters and expect larger font sizes.

Right-to-left languages (Arabic, Hebrew) need text justified right, not center. Safe area rules stay the same, but the margin moves.

Language-Specific Decision Framework

Ask these questions in order for each language:

  1. What is the writing system? Left-to-right (most), right-to-left (Arabic, Hebrew), or vertical (Japanese, Chinese)?
  2. How long are typical words? English averages 4.7 characters; German averages 6.3; Finnish averages 7.4.
  3. What platform are viewers using? Mobile changes safe area. YouTube and Netflix have fixed guidelines.
  4. Who is the native speaker? Ask them if timing feels natural or rushed.
LanguageLine LengthFont SizeReading Speed AdjustmentPosition
English40-45 char12-14pt1s per lineBottom center
German30-35 char14-16pt+0.2s per lineBottom center
French38-42 char12-14pt1s per lineBottom center
Japanese (horizontal)12-15 char16-18pt+0.3s per lineBottom center
Arabic35-40 char12-14pt+0.1s per lineBottom right

Run a test subtitle on a native speaker. Ask if the text feels fast or slow. Your timing assumptions may not carry between languages.

Working Example: English to German

You are dubbing a 30-second product demo from English to German. The English script contains 85 words and breaks into five subtitles:

  1. "Welcome to the product demo" (28 chars, English)
  2. "Today we will show you how it works" (35 chars, English)
  3. "First, log in to your account" (29 chars, English)
  4. "You will see your dashboard" (27 chars, English)
  5. "Click any option to get started" (31 chars, English)

Total: 34 seconds of script, spread across five lines.

When you dub to German, these become:

  1. "Willkommen zur Produktdemo" (25 chars, German) - fits without change
  2. "Heute zeigen wir dir, wie es funktioniert" (41 chars, German) - exceeds 40-char limit, must split
  3. "Melde dich zuerst in deinem Konto an" (36 chars, German) - acceptable
  4. "Du wirst dein Dashboard sehen" (29 chars, German) - fits
  5. "Klick auf eine beliebige Option zum Starten" (42 chars, German) - exceeds 40-char limit

For line 2, you split it:

  • "Heute zeigen wir dir,"
  • "wie es funktioniert"

For line 5, you split it:

  • "Klick auf eine beliebige"
  • "Option zum Starten"

This is now six subtitles instead of five. The German dub takes slightly longer to deliver (German tends to have more syllables than English). You add 0.3 seconds to each subtitle's duration. Your total video is now 32 seconds instead of 30, which means you must ask the voice actor to speak slightly slower.

Platform Rules

YouTube, Netflix, and TikTok each have subtitle specifications. YouTube accepts VTT and SRT. Netflix enforces specific fonts and colors. TikTok auto-crops aggressively. Read the platform docs for your intended upload.

Most platforms do not enforce styling if you upload burned-in (hard-coded) subtitles, but burned-in subtitles cannot be turned off. Users who are hard of hearing or watching in silent rooms need this choice.

Use soft subtitles (SRT/VTT) when the platform supports them. Let viewers adjust size, color, and position if they need to. Your beautiful styling choice is worth nothing if it blocks access.

When you export subtitles for platforms, check the encoding. UTF-8 is correct. If you see garbled characters, your export software did not save in the right format.

Common Mistakes and Fixes

Mistake 1: Mixing Font Styles Too Much

You use bold, italic, colored text, and size changes all in the same subtitle set. The result looks chaotic. Viewers struggle to tell what is important. Fix: limit yourself to white text and one accent color (for labels only). Let positioning and timing carry the weight. A single visual treatment (white on black with outline) is cleaner and faster to decode than a rainbow of styles.

Mistake 2: Syncing Subtitles to Video After Dubbing

You finish the dubbing, then add subtitles that match the new audio. But the new audio is faster or slower than the original. The timing is off from the start. Your subtitles disappear before the actor finishes speaking, or they linger after the line is done. Fix: dub to a subtitle file, not the other way around. Build subtitles first from the original script, then dub to that timing. Many dubbing tools can lock timing to an SRT file during export.

Mistake 3: Ignoring Mobile

You design subtitles on a 27-inch monitor and they look perfect. Viewers watch on phones, where the text is tiny or crops off the edge. On small screens, a 14pt font becomes nearly illegible. Fix: test on a real phone at viewing distance, or in your software's mobile preview. Aim for at least 14-16pt on mobile, which often means larger on desktop.

Mistake 4: No Testing on Target Platform

You spend an hour styling subtitles in your editor, upload to YouTube, and discover the colors look wrong or text overlaps video elements. YouTube's player, Netflix's playback, and TikTok's mobile rendering all handle subtitles differently. Fix: export a short test segment (5-10 seconds) to the actual platform and check before finishing the full video. This catches formatting issues before you commit to the full video.

Mistake 5: Forgetting Accessibility

You embed subtitles as burned-in text (hard-coded into the video). This means viewers who want larger text, different colors, or positioning cannot adjust. If your viewer is hard of hearing or deaf, they need soft subtitles that can be restyled. Fix: use soft subtitle formats (SRT, VTT) whenever the platform supports them. Reserve burned-in subtitles for titles and graphics, not dialogue.

What to Do Next

If you are adding subtitles to a dubbed video, follow this order:

  1. Split the script into subtitle lines using the 40-character rule for your language. Test each line for natural break points (clause boundaries or pauses).

  2. Time each subtitle using the formula: (characters / 14) = seconds minimum. Add 0.2-0.3 seconds for morphologically heavy languages.

  3. Place and position at the bottom center of your frame, inside the 90% safe area. Check that no text overlaps dialogue or on-screen graphics.

  4. Test contrast on a sample frame. Place your subtitle over a bright area, a dark area, and a mid-tone. If you cannot read it in all three, add a background or outline.

  5. Preview on the platform where your viewers will watch. Export a short clip and check on YouTube, Netflix, or TikTok before publishing the full video.

  6. Get feedback from a native speaker of the target language. Ask if the pacing felt natural or rushed. If it is rushed, add 0.2 seconds to each subtitle.

  7. Check the final export for encoding, file format, and file size. SRT and VTT files are standard; some platforms accept WebVTT only.

This order means you will not waste time styling a subtitle that is too long or mis-timed. For most creators, white text with a one-pixel outline on black background, positioned at the bottom center, will work. Do not over-engineer it. Readability beats design every time.


🚀 Start Dubbing Your Videos Today

DubLab uses AI to translate your videos into 92+ languages in minutes.

📱 Download for iOS

🌐 Try Free at dublab.app