# Script fonts: when handwriting faces work and when they don't

[Canonical HTML page](https://gradiently.design/guide/script-fonts)

A script font can make a card feel handwritten or a logo feel warm. It can also make a menu unreadable. The difference comes down to a few rules about length, size and setting.

## The short version

- Script fonts imitate handwriting or calligraphy, with slanted and often connected letters.
- Scripts read well in a name, a single word or a short phrase, and poorly in sentences or paragraphs.
- Script fonts should never be set in all capitals, because the capitals are designed to start words, not to stand in a row.
- Most scripts need to be set larger than a sans serif to read, often at least twice the size of body text.
- A script works best paired with a plain serif or sans that carries everything else.

**Script fonts** imitate handwriting, from formal copperplate to loose brush lettering, and they work when they are used for one short thing: a name, a single word, a signature or a two word greeting. They stop working in sentences, in capitals, at small sizes and over busy backgrounds, because their joined, slanted letters are harder to tell apart than the upright shapes of a serif or sans. Treat a script as a garnish, not the meal, and it will add warmth without costing you readers.

## The main kinds of script font

Script is a broad family. Each kind carries a different tone, and some are far more readable than others. All the examples below are free on Google Fonts.

| Kind | Looks like | Free examples | Legibility |
| --- | --- | --- | --- |
| Formal | Copperplate pen, fine hairlines, steady slant | Pinyon Script, Great Vibes, Petit Formal Script | Low in sentences, fine for names |
| Brush | Painted strokes, thick and thin, energetic | Kaushan Script, Yellowtail, Pacifico | Medium at large sizes |
| Monoline | Even, low contrast stroke, like a felt pen | Sacramento, Dancing Script | Medium, better than formal |
| Handwritten | Everyday handwriting, often unjoined | Caveat, Kalam, Shadows Into Light | Good, the most readable script |
| Signature | Fast, tall, loose autograph style | Mrs Saint Delafield, Herr Von Muellerhoff | Low, one or two words only |

Five kinds of script, from most formal to most casual. Unjoined handwritten faces are the safest when you need more than a few words.

## When script fonts work

- **Names**, such as a couple's names on a wedding invitation or a person's name on a thank you card.
- **One word that carries feeling**, like Welcome, Thank you, Fresh or Sale, set large.
- **A signature line** at the end of a note or post, where it reads as personal.
- **Logos with short names**, especially for bakeries, florists, salons and stationery, as long as the name stays readable at small sizes.
- **Accents in an otherwise plain layout**, where the contrast between script and sans is the point.

A portrait thank you post with the words Thank you set large and a plain supporting line underneath

A two word greeting is the ideal job for a script. The supporting line underneath belongs in a plain sans.

A save the date card with the names Sophie and Daniel above the date and place in small capitals

A 5×7 inch save the date. Names suit a script; the date and place must be instantly readable, so set them in capitals or a serif.

## When script fonts don't work

### Avoid

- Paragraphs, menus or prices in script
- Scripts in ALL CAPITALS
- Small script under about 2× body size
- Extra letter spacing that breaks the joins
- Script over a busy photo or pattern
- Two different scripts in one design

### Do

- One script phrase, everything else in a sans or serif
- Script in its normal upper and lower case
- Script set large, often 2 to 3× body size
- Zero tracking, so connected letters stay joined
- A calm, even area behind the script
- One script, used consistently

Capitals are the most common mistake. Script capitals are designed with loops and swashes to begin a word, so a row of them becomes a tangle that is hard to read. Letter spacing is the second: connected scripts are drawn so each letter joins the next, and any added tracking leaves visible gaps in the stroke. For capitals, use a serif or sans and read [all caps typography](https://gradiently.design/guide/all-caps-typography).

## How to keep script fonts legible

1. **Limit it to a few words** Five words is a sensible ceiling for a formal or brush script. Handwritten faces like Caveat can stretch to a short sentence.
2. **Set it large** Scripts have small lowercase letters relative to their size. On a 1080 px post, keep a script at 100 px or more; see [font size for Instagram posts](https://gradiently.design/guide/font-size-for-social-media).
3. **Use a heavier weight on screens** Hairlines in formal scripts vanish when a post is compressed. Pick a family with bolder options, or a monoline or brush style.
4. **Give it calm contrast** Scripts have fine strokes and complex outlines. Place them on the quietest part of the background with strong light and dark contrast.
5. **Read it cold** Show the design to someone who has not seen it, for two seconds. If they cannot read the script word, change the font or the size.

## Pairing script fonts

A script needs a calm partner. The pairing works because the two are so different: one is fluid and personal, the other upright and clear. Avoid pairing a script with a decorative display face; two personalities shout over each other. [Font pairing](https://gradiently.design/guide/font-pairing) covers the general rules.

| Script | Partner | Tone |
| --- | --- | --- |
| Pinyon Script | Cormorant Garamond | Formal, romantic, wedding stationery |
| Great Vibes | Montserrat in capitals | Classic with a modern edge |
| Pacifico | Nunito | Relaxed, friendly, beachy |
| Kaushan Script | Oswald | Energetic, sporty, street food |
| Caveat | Inter | Notes, tips and casual social posts |
| Sacramento | Jost | Light, airy beauty and wellness |

Six script pairings from free Google Fonts. The script carries one phrase; the partner carries every detail.

## Script fonts on the web

Many scripts include alternate letters and ligatures that make joins look more natural. Browsers normally turn on standard ligatures and contextual alternates by default; declaring them keeps them on if a reset stylesheet switches them off. Swashes and stylistic sets must be asked for through [font-feature-settings](https://developer.mozilla.org/en-US/docs/Web/CSS/font-feature-settings), and only where the font includes them.

```css
.script {
  font-family: "Great Vibes", "Snell Roundhand", cursive;
  font-size: clamp(2.5rem, 6vw, 4.5rem);
  line-height: 1.2;           /* tall loops need room */
  letter-spacing: 0;          /* never track a connected script */
  text-transform: none;       /* never all caps */
  font-feature-settings: "liga" 1, "calt" 1;
}
```

Keep `letter-spacing` at zero and `text-transform` off. The generic `cursive` fallback means the line still looks handwritten while the font loads.

On social posts, contrast is where scripts struggle most, because their thin strokes cross so many tones of a background. Gradiently Marks move their calmest area behind your words and pick light or dark ink line by line, which gives a delicate script the even ground it needs. For refined faces more broadly, see [elegant fonts](https://gradiently.design/guide/elegant-fonts); for drawn letters rather than fonts, [lettering vs typography](https://gradiently.design/guide/lettering-vs-typography).

## FAQ

### What is a script font?

A typeface that imitates handwriting or calligraphy, usually with slanted and often connected letters, from formal copperplate to casual brush styles.

### Can you use script fonts in all caps?

No. Script capitals are designed to start words, and a row of them is very hard to read. Use a serif or sans for anything in capitals.

### What is the most readable script font?

Unjoined handwritten faces such as Caveat and Kalam are the most readable, followed by monoline scripts like Dancing Script.

### Are script fonts good for logos?

They can be, for short names in warm, personal categories such as bakeries, florists and salons. Test the logo at small sizes, where scripts lose detail first.

### What font pairs well with a script font?

A calm serif or sans, such as Cormorant Garamond, Montserrat or Inter. Let the script carry one phrase and the partner carry everything else.
