The tool you need, ready to use

Letter Spacing Adjuster

Change the gap between letters on an actual-size specimen, then convert the value to CSS em and px, a Tailwind class, Figma %, Photoshop tracking and Word pt. The magnified view hatches where the space is added, and the comparison ladder and the reference graph (Apple SF Pro, Inter, Material 3) give you grounds for choosing a value.

Last updated 2026-10-22All math stays in your browser
Examples

Magnified viewAdded spaceRemoved space (overlap)

Current letter spacing

Values in other appsType in any field and the others update.

CSS


      

Tailwind

Comparison ladder

Reference by sizeEach value was set for its own typeface, so treat it only as a starting point for other fonts. Click or drag the graph to change the font size.

Apple SF ProInterMaterial 3Current value

Last updated 2026-10-22Your inputs are not stored

ROBERIN standardThe tool you need,
ready to use.
  • Clear at a glanceInputs and results sit where you expect them.
  • Result firstThe key number comes first; the working only when you need it.
  • Ask lessNo sign-up and no unnecessary details.

Pick letter spacing by eye and convert it to CSS, Figma and Photoshop values

The letter spacing adjuster lets you change the gap between letters (letter-spacing, also called tracking) on a specimen shown at its real size. Once you settle on a value, it builds the CSS code and a Tailwind class, and converts the same value into the units used in Figma, Photoshop and Word. For example, letter-spacing: -0.02em; on 16px text pulls each letter 0.32px closer to the next, which is −2% in Figma, tracking −20 in Photoshop and −0.24pt in Word for 12pt text.

Type any sentence into the specimen box. The magnified view draws the first few letters large and hatches the places where the space is added. The comparison ladder puts six lines above and below the current value side by side so you can choose by eye. The reference-by-size graph shows the spacing that Apple SF Pro, Inter and Material 3 use at each font size, next to your current value.

Why and when to adjust letter spacing

A typeface ships with default spacing chosen by its designer, and most text looks fine as it is. That default is tuned for a particular size and use, though, so very small text, very large text and all-caps text can look off. Adjusting letter spacing means widening or tightening the gaps a little to make such text easier to read.

  • Moving a design to the web: Writing Figma's −2% or Photoshop's −20 straight into CSS gives a completely different result. Enter the design value in the matching field of the converter below and the em and px values appear at once.
  • Large headings that look loose: As letters grow, the gaps between them grow too and become noticeable. Tightening a little often makes a heading look solid, but with some typefaces the opposite is true, so compare the values above and below on the comparison ladder.
  • Small text and all-caps labels: Photo captions, footnotes, buttons and all-caps labels look less cramped with slightly more space. The Google Fonts typography guide also says that capital letters read better with extra spacing.
  • Logos and wordmarks: Short words are sometimes spread wide for effect. Above about 0.1em, check that the space added after the last letter does not throw off centering.
  • Fitting a document to a line or a page: In Word, a word or two that spills onto the next line is often fixed by condensing the spacing slightly. Each app uses different units and menus, which are listed below.

How to use it

  1. Pick a similar example above (body, small text, heading, display, caps label, logo text), or set the font, font size, weight and line height yourself. Fonts that are not installed on this device are marked "not on this device" in the list.
  2. Type your own sentence into the actual-size specimen. The magnified view and the comparison ladder switch to the first line of that sentence.
  3. Move the letter spacing slider, or click the line that reads better on the comparison ladder. The clicked value moves to the center, so a few clicks narrow it down. The ladder step can be 0.005em, 0.01em or 0.025em.
  4. If you already have a value from a design file, enter it in the "Values in other apps" table (Figma %, Photoshop tracking, Word pt and so on). Whichever field you use, the others update with it.
  5. Choose em or px for the CSS output, then copy the full CSS, a single spacing line or the Tailwind class. You can also save the specimen as an image, or copy a link that carries the current settings to share with someone.

Unit conversion: em, px, %, tracking and pt

Every app counts letter spacing in its own unit. CSS em, Figma % and Adobe tracking are all proportional to the font size, so the ratio survives a change of size. px and Word's pt are fixed lengths, so you have to recalculate them for each font size to keep the same ratio. The table below shows what to enter in each app for −0.02em on 16px (12pt) text.

Where you enter itUnitFormula to em−0.02em at 16px
CSS letter-spacing, Android letterSpacingemas is−0.02em
CSS px, Figma pxpxpx ÷ font size (px)−0.32px
Figma Letter spacing (%)%% ÷ 100−2%
Photoshop, Illustrator, InDesign tracking1/1000 emtracking ÷ 1000−20
Word character spacing (Expanded or Condensed)ptpt ÷ font size (pt)−0.24pt

Word sets font size in pt, so when you match a web size in px, use 1px = 0.75pt (16px = 12pt). iOS kern and SwiftUI tracking are fixed lengths in pt, so for the same numeric font size you enter the same number as in the px field. Tailwind CSS has the six letter-spacing classes below. This tool outputs the class name when the value matches exactly, and an arbitrary-value class such as tracking-[-0.02em] otherwise.

Tailwind classemAt 16pxFigma %Tracking
tracking-tighter−0.05em−0.8px−5%−50
tracking-tight−0.025em−0.4px−2.5%−25
tracking-normal0em0px0%0
tracking-wide0.025em0.4px2.5%25
tracking-wider0.05em0.8px5%50
tracking-widest0.1em1.6px10%100

Different spacing for different font sizes

Even within one typeface, the right spacing changes with size. Apple publishes a tracking table for SF Pro from 6pt to 96pt, Inter publishes a formula that gives the spacing from the font size (−0.0223 + 0.185 × e−0.1745 × size), and Material 3 sets spacing for each of its 15 type roles. All of them add space to small text, but the details differ. Apple and Inter reach 0 around 12px and tighten at body sizes (14 to 20px). Material 3 gives body, label and the smaller title roles (Title Medium and Small) positive values (+0.007 to +0.045em), and Title Large, Headline and Display roles 0 (only the largest, Display Large, is −0.004em). At large sizes Inter stays near −0.022em, while the SF Pro table turns positive again from 24pt and returns to 0 at 80pt and above.

Font sizeApple SF ProInterMaterial 3 (closest role)
11px+0.006em+0.005emLabel Small 11 · +0.045em
12px0em0emBody Small 12 · +0.033em
14px−0.011em−0.006emBody Medium 14 · +0.014em
16px−0.02em−0.011emBody Large 16 · +0.031em
17px−0.026em−0.013emBody Large 16 · +0.031em
20px−0.023em−0.017emTitle Large 22 · 0em
24px+0.003em−0.019emHeadline Small 24 · 0em
32px+0.013em−0.022emHeadline Large 32 · 0em
48px+0.008em−0.022emDisplay Medium 45 · 0em
64px+0.004em−0.022emDisplay Large 57 · −0.004em

Apple's table is in pt and Material 3 is in sp, so on the web the numbers are read as the same number of px and converted to em (three decimal places). Apple's table is the same on iOS and macOS. Because the direction for large headings differs from one source to the next, the safest approach is to build a specimen in the font you will actually use and compare the values yourself.

Where to set letter spacing in Word and design apps

Japanese text starts from a different default. The W3C Requirements for Japanese Text Layout (JLREQ) say that, in principle, the character frames of ideographs, hiragana and katakana are square boxes and the characters are set with no spacing between them (solid setting). In other words, the baseline for Japanese body text is letter spacing 0, and you adjust it only where needed, such as in headings or narrow columns. Each app puts the setting in a different place.

  • Word: On the Home tab, select the Font dialog box launcher, then the Advanced tab. Under Spacing, choose Expanded or Condensed and enter the amount in the By box (in points). Every selected letter changes by the same length.
  • Figma: Enter a value in % or px in the Letter spacing field of the text properties. The Figma plugin documentation defines the unit of this value as either PERCENT or PIXELS.
  • Photoshop, Illustrator, InDesign: Enter it in the tracking field of the Character panel. Adobe's help pages say that both tracking and kerning are measured in units of 1/1000 em.

Accessibility: keep the layout intact when users widen the spacing

WCAG 2.2 Success Criterion 1.4.12 Text Spacing (AA) requires that no content or function is lost when a user sets line height to 1.5 times the font size, spacing after paragraphs to 2 times, letter spacing to 0.12 times and word spacing to 0.16 times. It does not tell you to use those values in your design. It tells you to make sure text is not clipped or overlapped when a reader who needs it widens the spacing. The "WCAG 0.12" tick on the slider marks that value. Check that fixed-width buttons and headings cut to a single line do not overflow at 0.12em.

The Google Fonts typography guide says that all-caps text reads better with extra spacing and advises against negative letter spacing unless the text is at a very large heading size. For body text, start from 0 and compare the values above and below on the comparison ladder.

How CSS letter-spacing actually behaves

  • An em value is turned into px on the element that declares it, and that px value is inherited. CSS Text 3 defines the computed value of letter-spacing as an absolute length. So if a 16px parent has letter-spacing: 0.1em, a 32px child inherits 1.6px unchanged (measured in Chrome 151). To keep the ratio in a child of a different size, write the em value again on the child. The % unit added in CSS Text 4 is inherited as a percentage, and MDN's compatibility data lists support from Chrome 145, Firefox 45 and Safari 7.
  • Some browsers add space after the last letter too. The specification says no spacing is added at the start or end of a line, but Chrome 151 does add space after the last letter. As a result, centered text shifts to the left by half of the letter spacing. Give the heading block a padding-left of the same value, or subtract the same value with margin-right on the element wrapping the text, and it returns to the center. The faded last hatch mark in the magnified view is that space.
  • Ligatures may be turned off. The specification recommends not applying optional ligatures such as fi when letter spacing is not 0. If you need them, you can switch them on with font-feature-settings, and the specification says that setting takes priority.
  • Cursive scripts such as Arabic get no spacing. The specification says letter spacing must not be added between letters of a script that connects.

Common mistakes

  • Using Photoshop tracking directly as px: Tracking −20 is not −20px but −0.02em. At 16px that is −0.32px.
  • Using Figma % as em: Writing Figma's −2% as −2em makes the letters overlap completely. Divide by 100 and write −0.02em.
  • Fixing a px value and then changing only the font size: A −0.32px that suited 16px text becomes −0.01em, half the ratio, on a 32px heading. Use em wherever the size changes.
  • Forgetting that a parent's em spacing reaches children as px: An em spacing set on a large heading is passed down as px to the small text inside, making it too wide, or the reverse.
  • Applying negative spacing to capitals: Start all-caps labels on the wider side. The caps label example uses +0.08em.
  • Fitting text tightly into a fixed-width button: If a user widens spacing to 0.12em, the text overflows (WCAG 1.4.12). Let the button width grow with the text.
  • Centering widely spaced text: With 0.2em on logo text, Chrome shifts it left by 0.1em. Use the correction above as well.

Limits and cautions

  • The specimen is drawn only with fonts installed on this device. A font marked "not on this device" in the list, or a custom name that cannot be found, is drawn with a fallback font, so the spacing can differ from the web font on your real site.
  • Some things vary by browser, such as the space after the last letter and the rounding of fractional px. The measurements in this article are from Chrome 151, and Safari and Firefox were not measured. The magnified view measures whether the browser you are using adds space after the last letter and tells you.
  • Figma's documentation says only that the Letter spacing units are % and px and does not state what % is relative to. This tool calculates % as a percentage of the font size, so compare the px value Figma shows after you switch its unit to px with the px field here at least once.
  • Saving as an image redraws the specimen on a canvas, so lines may break in different places than on screen. In browsers without canvas letterSpacing support (before Safari 18.4, according to MDN), letters are drawn one by one and kerning is lost.
  • The values in the reference graph were set by Apple, Inter and Material 3 for their own typefaces. For other fonts, use them as a starting point and confirm with the specimen.

As of October 22, 2026. Based on W3C CSS Text Level 3 (Candidate Recommendation Draft 2026-08-14) and Level 4 (Editor's Draft 2026-08-14), WCAG 2.2 (2024-12-12), MDN browser-compat-data 8.1.6, Apple HIG Typography (updated 2025-12-16), androidx Material 3 TypeScaleTokens, W3C JLREQ, and measurements in Chrome 151.

Sources

Frequently asked questions

How many px is a letter spacing of −0.02em?

Multiply the em value by the font size. At 16px, −0.02 × 16 = −0.32px; at 14px it is −0.28px and at 24px it is −0.48px. Because em is proportional to the font size, the same −0.02em removes a longer distance on larger text.

How do I convert Figma letter spacing to CSS?

If Letter spacing in Figma is set in %, divide by 100 and write it in em: −2% is letter-spacing: -0.02em. A value set in px is written as the same px in CSS. Figma's documentation does not say what the % is relative to, so compare the px value Figma shows after you switch its unit to px with the px field in this tool at least once.

How do I convert Photoshop tracking to CSS?

Tracking in Photoshop, Illustrator and InDesign is measured in 1/1000 em, so divide by 1000 to get em. Tracking −25 is −0.025em, which is −0.4px at 16px. Do not write the tracking number as px, or the letters will overlap badly.

What letter spacing is right for body text?

There is no fixed value. Japanese text layout requirements (JLREQ) set Japanese body text solid, with no spacing between characters, and Google Fonts advises against negative spacing unless the text is at a very large heading size. Start at 0, compare the values above and below on the comparison ladder, and look first at widening small text and all-caps text a little.

Should large headings be tightened?

It depends on the source. Material 3 gives its largest role, Display Large, −0.004em and its other headline and display roles 0. The Apple SF Pro table is positive from 24pt through 76pt and 0 from 80pt, and Inter stays near −0.022em. Build a specimen in the font you will use and choose on the comparison ladder.

Should I use em or px for letter-spacing?

Use em wherever the font size changes, such as responsive headings, so the same ratio is kept. Note that the computed value of letter-spacing is an absolute length such as px, so an em value set on a parent reaches its children as px. For children of a different size, write the em value again, or use the % unit, which MDN's compatibility data lists from Chrome 145, Firefox 45 and Safari 7.

Why does centered text with wide letter spacing look off to one side?

The specification says no spacing is added at the end of a line, but Chrome 151 also adds it after the last letter, so the text shifts left by half of the letter spacing. Give the heading block a padding-left of the same value, or subtract the same value with margin-right on the element wrapping the text, and it returns to the center.

What letter spacing does web accessibility require?

WCAG 2.2 Success Criterion 1.4.12 Text Spacing (AA) does not ask you to use a particular value. It requires that content and function stay intact when a user sets letter spacing to 0.12 times the font size, word spacing to 0.16, line height to 1.5 and paragraph spacing to 2. Check that fixed-width buttons and single-line headings do not overflow at 0.12em.