Market
Pricing
Sign inStart
Field GuideType and text
Type and text

Multilingual typography: fonts, scripts and longer words

A layout that fits English perfectly can break in German, clip Danish accents or reverse wrongly in Arabic. Here is how to design type that survives translation.

GradientlyVerified Gradiently account·October 1, 2026·6 min read
Cover: Bronze Light · GR·DCZY·7M

The short version

  • Translated text is usually longer than English, and short labels grow the most, so layouts need room to expand.
  • A multilingual font must contain every character and script you will publish, including accents such as å, ø, ß, ã and œ.
  • Arabic and Hebrew run right to left, Arabic letters join, and neither script uses capital letters, so letter spacing and all caps tricks do not transfer.
  • Large families such as Noto and IBM Plex cover many scripts with a shared design, which keeps a brand consistent across languages.
  • Mark up language and direction in HTML with lang and dir attributes so browsers choose the right shaping, hyphenation and line breaks.
On this page
Plan for longer wordsChoose fonts that cover every scriptArabic typography and right to left layoutsAccents, diacritics and line heightMultilingual typography in CSSA workflow for designing in many languages

Multilingual typography is the craft of setting type that works in every language you publish, not just the one you designed in. In practice it comes down to four habits: leave room for translations that run longer than English, choose fonts that actually contain every script and accent you need, respect how each script reads (Arabic and Hebrew run right to left, Chinese and Japanese have no spaces), and test real translated text rather than placeholder copy. Get those right and one design system can carry a brand across a dozen languages.

Plan for longer words

Most European languages take more room than English. The effect is strongest on short strings: a one word button can double, while a long paragraph grows far less. The W3C's note on text size in translation explains why. Here are a few everyday labels from languages a European brand often needs.

SettingsEinstellungen

French

Paramètres

Finnish

Asetukset

Spanish

Ajustes
DownloadHerunterladen

French

Télécharger

Finnish

Lataa

Spanish

Descargar
Opening hours

German

Öffnungszeiten

French

Horaires d'ouverture

Finnish

Aukioloajat

Spanish

Horario de apertura
Book nowJetzt buchen

French

Réserver

Finnish

Varaa nyt

Spanish

Reservar ahora
EnglishGermanFrenchFinnishSpanish
SettingsEinstellungenParamètresAsetuksetAjustes
DownloadHerunterladenTéléchargerLataaDescargar
Opening hoursÖffnungszeitenHoraires d'ouvertureAukioloajatHorario de apertura
Book nowJetzt buchenRéserverVaraa nytReservar ahora
German compounds make single long words that cannot wrap. Finnish is sometimes shorter, sometimes much longer. Design for the longest, not the average.
New hours
Open late on Fridays.
Gradiently · @gradiently

The English line fits comfortably on two lines with space around it.

Neue Öffnungszeiten
Freitags bis spät geöffnet.
Gradiently · @gradiently

The German version needs more width and a longer eyebrow. A layout built with slack absorbs it.

  • Let headlines wrap to an extra line instead of fixing them to one.
  • Size buttons and tags to their content, never to a fixed width.
  • Keep a third or more spare space in short labels and eyebrows.
  • Avoid words laid out letter by letter, such as a vertical label, which cannot reflow.

Choose fonts that cover every script

Before you fall in love with a typeface, check its character set. A font that lacks a character falls back to a different one for that letter alone, so a Danish headline can end up with one ø in a different design. Fonts list their supported languages on Google Fonts and on most foundry pages.

Noto Sans and Noto Serif

Scripts covered

Latin, Cyrillic, Greek, Arabic, Hebrew, Devanagari, Thai, Chinese, Japanese, Korean and many more

Good for

The widest coverage with a shared look
IBM PlexLatin, Cyrillic, Greek, Arabic, Hebrew, Devanagari, Thai, Japanese, Korean

Good for

Brands that want one family everywhere
InterLatin, Cyrillic, Greek, Vietnamese

Good for

Interfaces in European languages
Source Sans 3 with Source Han Sans

Scripts covered

Latin, Cyrillic, Greek, plus Chinese, Japanese, Korean

Good for

Pairing Latin with East Asian text
Readex Pro, Cairo, Tajawal

Scripts covered

Arabic and Latin

Good for

Arabic first brands with Latin support
FamilyScripts coveredGood for
Noto Sans and Noto SerifLatin, Cyrillic, Greek, Arabic, Hebrew, Devanagari, Thai, Chinese, Japanese, Korean and many moreThe widest coverage with a shared look
IBM PlexLatin, Cyrillic, Greek, Arabic, Hebrew, Devanagari, Thai, Japanese, KoreanBrands that want one family everywhere
InterLatin, Cyrillic, Greek, VietnameseInterfaces in European languages
Source Sans 3 with Source Han SansLatin, Cyrillic, Greek, plus Chinese, Japanese, KoreanPairing Latin with East Asian text
Readex Pro, Cairo, TajawalArabic and LatinArabic first brands with Latin support
Families designed across scripts keep stroke weight and proportions consistent, so a brand looks like itself in every language.

Where one family can't cover everything, pair a Latin face with a script specific face of similar weight, x height and tone. The same principles as font pairing apply, with one more: set them side by side at the same size and adjust until neither looks smaller.

Arabic typography and right to left layouts

Arabic is the script where Latin habits fail most visibly. It reads right to left, letters change shape depending on their position in a word and join to their neighbours, and there are no capitals. Hebrew also runs right to left but its letters don't join.

Avoid

  • Letter spacing Arabic text, which breaks the joins between letters
  • Faking emphasis with capitals, which Arabic does not have
  • Mirroring a Latin layout without checking icons, numbers and logos
  • Arabic set at the same point size as Latin, which often looks smaller
  • Line spacing so tight that dots and marks collide

Do

  • Use weight or colour for emphasis
  • Flip the layout's direction so reading starts on the right
  • Keep logos, media controls and phone numbers in their usual direction
  • Size Arabic up until it matches the Latin visually
  • Allow generous line height for the marks above and below

Kufi styles are geometric and suit headlines and logos; Naskh styles are rounder and read better in long text. Noto Kufi Arabic and Noto Naskh Arabic give you both in one family.

Accents, diacritics and line height

European languages add marks above and below letters: Å in Swedish, Danish and Norwegian, É in French, Ä and Ö in Finnish and German, Ç in Portuguese. Tight line height, which looks sharp in English capitals, clips these marks or lets them crash into the line above. Test headlines with your heaviest accented capitals before you fix the spacing. Line height covers the basics; all caps text needs extra care here.

French

Test string

Été, Œuvre, ÇA, déjà
German

Test string

ÄÖÜ, Straße, Größe
Spanish

Test string

¿Mañana? ¡Sí!
Portuguese

Test string

Ação, Coração, São
Danish and Norwegian

Test string

Æble, Øre, Århus, blåbær
Swedish and Finnish

Test string

Åsa, Älvsjö, Hyvää yötä
Dutch and Italian

Test string

IJsland, città, perché
LanguageTest string
FrenchÉté, Œuvre, ÇA, déjà
GermanÄÖÜ, Straße, Größe
Spanish¿Mañana? ¡Sí!
PortugueseAção, Coração, São
Danish and NorwegianÆble, Øre, Århus, blåbær
Swedish and FinnishÅsa, Älvsjö, Hyvää yötä
Dutch and ItalianIJsland, città, perché
Paste these into a heading at your tightest line height. If any mark touches the line above or is cut off, loosen the spacing.

Multilingual typography in CSS

On the web, tell the browser what language and direction every page or passage is in. It then chooses the right letter shapes, hyphenation, quotation marks and line breaking. Use logical properties so spacing flips with the direction automatically.

html
<html lang="ar" dir="rtl">
<head>
  <style>
    body { font-family: "IBM Plex Sans", system-ui, sans-serif; }
    :lang(ar) { font-family: "IBM Plex Sans Arabic", "Noto Naskh Arabic", sans-serif; line-height: 1.7; }
    :lang(de), :lang(fi) { hyphens: auto; }
    .card { padding-inline-start: 24px; border-inline-start: 4px solid currentColor; }
  </style>
</head>
<body>
  <p>…</p>
  <p lang="en" dir="ltr">An English quote inside Arabic text.</p>
</body>
</html>
lang picks the font and hyphenation per language; dir sets reading direction; padding-inline-start lands on the right in Arabic and the left in English.

The details of dir and the bidirectional algorithm are on MDN.

A workflow for designing in many languages

  1. 1

    List every language and script

    Write down what you publish today and what you might add. Choose fonts against that list, not just against English.

  2. 2

    Design with your longest language

    Mock up key screens and posts in German or Finnish first. If they fit, English will.

  3. 3

    Test the heaviest accents

    Run the test strings above through every heading style.

  4. 4

    Get a native reader to look

    Line breaks, hyphenation and tone can be technically valid and still feel wrong. A fluent reader catches what tools cannot.

Gradiently's own interface speaks 12 languages, from English, French and German to Danish, Norwegian and Finnish, so a team can work in the language they think in. On Pro, the brand kit takes uploaded heading and body font files, so you can add a face that covers your accents, and new designs start with it. Upload custom fonts and using Gradiently in other languages explain both.

Design with a living gradient

Posts, stories, slides and banners in every size, with text that always reads.

Start designing, free

Questions people ask

What is multilingual typography?

Setting type so it works in every language you publish: fonts that cover each script, layouts with room for longer translations, and correct direction and line breaking.

Which fonts support the most languages?

The Noto family covers the widest range of scripts. IBM Plex also covers Latin, Cyrillic, Greek, Arabic, Hebrew, Devanagari, Thai, Japanese and Korean.

How much longer are translations than English?

It varies by language and string. Short labels grow the most and can double in length, while long paragraphs grow less, so test with real translations.

Can I add letter spacing to Arabic text?

No. Arabic letters join to each other, and letter spacing breaks those joins. Use weight, size or colour for emphasis instead.

How do I make a website right to left?

Set dir="rtl" and the right lang on the html element, and use logical CSS properties such as padding-inline-start so spacing flips with the direction.

Share this guide

Written by GradientlyVerified Gradiently account

The team behind Gradiently, a design tool built around Marks: living gradients that make everything you design look like yours.

See our profile

On this page

Plan for longer wordsChoose fonts that cover every scriptArabic typography and right to left layoutsAccents, diacritics and line heightMultilingual typography in CSSA workflow for designing in many languages

Share this guide

Next in Type and text

Google Fonts pairings: 25 combinations that work

Keep reading

All Type and text guides
Using Gradiently

A design app in other languages: Gradiently speaks 12

5 min read

Gradiently’s screens, emails and AI all work in twelve languages, and the language you design in doesn’t have to be the language you read the app in. Here is how to set both.

Using Gradiently

Upload custom fonts and use your brand type in every design

5 min read

Your brand fonts are half of how people recognise you. Here is how to upload them to Gradiently, how families and weights are grouped, and the licence questions to ask first.

Type and text

Font pairing: simple rules that work

5 min read

Two typefaces that look good alone can fight when they share a page. A few rules, and a handful of proven pairs, take the guesswork out of it.

Find the look that’s only yours.

Every Mark is a living background with one owner. Try an unclaimed Mark, and claim yours when it feels right.

Start designing

Check a certificate

Type a certificate number or a Mark’s code to see who owns it.

Works with ChatGPT and Claude

Ask your AI for a design. It makes it in your Mark, ready to edit.

ChatGPTClaude
How to connect

Product

  • Market
  • Explore
  • Pricing
  • Certificates

Learn

  • Field Guide
  • Help centre
  • What’s new

Developers

  • Overview
  • ChatGPT and Claude
  • API reference
  • API keys

Company

  • About
  • Contact us
  • Sign in

Legal

  • Terms
  • Privacy
  • Refunds
  • Mark protection
  • Cookies
  • All policies
Move through the letters. Each one wears a real Mark.Touch a letter to see its Mark.One name. Ten Marks inside it.
© 2026 Gradiently