New: animated Dynamic templates for Reels and ShortsSee them

← Guides

Picking caption fonts for Indian scripts

By Captionwale · 31 October 2026

Plenty of caption fonts lack Indian letters. How a device fills that gap, why one caption can mix two typefaces, and how to judge a font for a native script.

Why a caption font may lack Indian letters

Fonts contain only the characters someone designed. Captionwale's own caption styles use two Latin display fonts, Anton and Bebas Neue, and neither has any Devanagari, Tamil, Bengali or Urdu. That is a matter of coverage, not quality: Devanagari by itself requires hundreds of additional glyphs for conjuncts and vowel signs, a whole second design job that plenty of Latin families never got.

When a caption calls for a letter its font is missing, the text engine moves down the style's font list, then on to the device's own fonts, and borrows from the first that has it. An empty rectangle, nicknamed tofu, appears only when nothing anywhere can draw the character.

The words survive this; the design doesn't. The borrowed font may be lighter, narrower or set higher or lower, and two operating systems can borrow two different fonts. Burned-in captions remove that last risk, since the export draws the text once and every viewer gets the same pixels.

One caption, two typefaces

The engine picks a font for each character, not for each word. Look at ये caption बहुत clean दिखता है: the Latin face covers caption and clean, the engine keeps searching the list for the Devanagari letters, and a single line ends up drawn in two typefaces.

For each script Captionwale transcribes, every built-in style has a backup face sitting lower in its font list. Baloo 2 family faces handle eight scripts: Devanagari, Gurmukhi, Gujarati, Odia, Kannada, Telugu, Tamil and Malayalam. For Bengali the backup is Noto Sans Bengali, and for Urdu it is Noto Nastaliq Urdu.

The Native script font setting, under Fonts, lets you put a face of your own choosing in place of that backup. It applies to letters in Urdu and the Indian scripts; English words carry on in the Family face. Uploaded fonts come without any backup faces, so pair an uploaded font with a Native script font choice whenever the transcript is in a native script.

Testing a native-script font

Judge every candidate on real lines taken from your own transcript, shown at phone size:

  • Weight. Many Urdu and Indian-script families in the list ship in one regular weight only. Some are display designs that are chunky anyway, but the plainer ones look feeble beside a heavy Latin word. If the style is heavy, go for a family with a proper bold.
  • Marks above and below. Lots of Indian letters reach outside the main row, with vowel signs above or beneath it, and in Kannada and Telugu a following consonant tucked under the first. Outlines are painted behind the glyphs in Captionwale, so a heavy outline closes up the narrow spaces around those parts. Push Thickness up a little at a time, and stop before the spaces disappear.
  • Room between rows. Marks hanging under one row and rising over the next share the same strip of space. The Line spacing slider on multi-row templates spans 0.9 to 1.8; a native-script caption generally wants a higher setting than a Latin one.
  • With a headline or without. Devanagari, Bengali and Gurmukhi tie most of a word's letters together with a horizontal stroke across their tops, and extra letter spacing chops that stroke into dashes. Tamil, Malayalam, Gujarati, Kannada, Telugu and Odia lack that stroke. In Kannada, Malayalam, Odia and Telugu, rounded letters enclose tiny gaps that a very bold weight or thick outline can fill.

How many faces each script gets

Devanagari, used by both Hindi and Marathi, leads Captionwale's font list with 60 families. Telugu follows with 26, then Gujarati with 21 and Tamil with 16. Bengali, Kannada and Urdu get 10 apiece; Gurmukhi has 9, Malayalam 8, Odia just 5.

Sixty choices means whittling down; five means searching for one with enough weight. Type a script name, Tamil for instance, into the font search to list its faces. Each language also has a templates page that opens the gallery filtered to it: Hindi and Bengali; Gujarati and Punjabi; Tamil and Telugu; Kannada and Odia.

The special case of Urdu

Urdu needs its own rules. It reads right to left, its letters link up and take a different form next to different neighbours, and the traditional hand for it is Nastaliq, where each linked group slopes down to the baseline. Nastaliq wants a lot of line height. The dots matter too: they are all that separates ب from ت and پ.

In Captionwale styles, Urdu falls back to Noto Nastaliq Urdu. That family stops at weight 700, so a heavier style still draws its Urdu at 700. Some of the Urdu faces on offer, Noto Kufi Arabic and Noto Naskh Arabic among them, are Kufi or Naskh designs, and someone raised on Nastaliq may read them as Arabic in style rather than Urdu.

Once a caption holds any Urdu at all, the whole line runs right to left, English words too. Letter-by-letter entrances deliver each Urdu word complete, as joined letters cannot be separated. Leave letter spacing alone, and keep any outline light enough that the dots stay apart.

Limits of choosing a font

SRT and VTT files carry nothing but words and timings. Whatever app or player displays them picks the typeface, and with native-script subtitles that can again be a system fallback. If the look of the type matters, burn the captions into the video; the comparison of SRT, VTT and burned-in captions sets out the differences.

It is the browser that joins letters and positions marks, not Captionwale. Captionwale makes sure every face a caption depends on has loaded before the export's first frame is drawn, but it has no way to tell a well-made face from a poor one, and any character your family lacks is borrowed from whichever font lower down the list contains it. Watch the exported video on a phone. If the script is not one you read, get a reader of it to look.

A font can't make a script legible to someone who doesn't read that script. Viewers who take in their Hindi through Latin letters need a different approach; see choosing between native script, romanised and English captions.

Questions

My Hindi words look different from the English ones. Why?

Probably because the main font in the style lacks Devanagari, so a backup face further down its list draws the Hindi. Set Native script font to a Devanagari face of your choice to decide their look.

Why are vowel signs crowded in my two-row captions?

There isn't enough room between the rows, so the marks of the upper and lower rows squeeze into one gap. Turn Line spacing up, and lighten the outline if it has filled the spaces around the marks.

What font should I try first for Urdu captions?

Start with Noto Nastaliq Urdu, the backup Captionwale styles already use, and give multi-row templates generous line spacing. Use a Naskh face instead only when your audience normally sees Urdu set that way.