Pairing fonts might seem like a small detail, but it changes how people read and feel about your entire site. When you use Inter for body text and match it with a serif for headings or the other way around you create a clear visual hierarchy that guides the eye without extra effort. This specific combination is popular in editorial layouts, portfolios, blogs, and SaaS landing pages because it blends modern readability with a touch of classic warmth. If you've been searching for how to make this work in CSS, this article covers exactly that.

What does pairing Inter with a serif font mean in CSS?

Font pairing is the practice of using two or more typefaces together on a single page to create contrast and visual interest. When you pair Inter a clean, geometric sans-serif with a serif typeface, you're relying on the natural difference between the two styles to separate content types. Headings in a serif like Lora feel editorial and authoritative. Body text in Inter stays crisp and easy to read at small sizes.

In CSS, this means declaring both fonts in your stylesheet and assigning them to different elements. The pairing works because the two typefaces have different structures serifs have small decorative strokes at the ends of letters, while Inter is clean and open so they don't compete for attention.

Why use a serif font alongside Inter instead of just sticking with one?

Using a single typeface across an entire design can work, but it often makes pages feel flat. A serif companion adds texture to headings, pull quotes, or featured sections without cluttering the layout. Here's why designers reach for this combination:

  • Contrast creates hierarchy. Readers can instantly tell a heading from body text when the two use different styles.
  • Inter handles screen reading well. It was built for interfaces, so it stays legible at 14px–18px on screens. A serif used for larger display sizes adds character where it's most visible.
  • It feels balanced. The geometric simplicity of Inter grounds the design, while a serif brings personality. This is especially useful in content-heavy sites like blogs or documentation.

This approach is one of the best combinations you can build with Inter when your goal is a polished, readable layout.

Which serif fonts actually work well with Inter?

Not every serif pairs equally well. You want one that shares Inter's proportions or complements its geometry without clashing. These are reliable options:

  • Playfair Display High contrast, editorial feel. Works well for hero headings and article titles.
  • Merriweather Designed for screens, so it holds up at smaller sizes. Good if you want a serif for body text with Inter in the UI.
  • Libre Baskerville Classic proportions with a slightly modern touch. Pairs naturally with Inter's clean lines.
  • Source Serif Pro Neutral and workmanlike. Doesn't steal the spotlight but adds enough warmth to headings.
  • Georgia A system serif that requires no external loading. Reliable fallback and pairs smoothly with almost any sans-serif.

If you want to explore more options that work alongside Inter, there's a broader breakdown of fonts that go well with the Inter typeface.

How do you set up Inter and a serif font in CSS?

Here's a straightforward approach using Google Fonts. Load both fonts, then assign them in your font-family declarations.

Step 1: Load the fonts

Add this in your HTML <head>:

  • <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Playfair+Display:wght@700&display=swap" rel="stylesheet">

Step 2: Define your font stacks

In your CSS:

  • body { font-family: 'Inter', sans-serif; }
  • h1, h2, h3 { font-family: 'Playfair Display', Georgia, serif; }

That's the core of it. The sans-serif stack covers your readable body content. The serif stack gives headings a distinct look. You can adjust weights to taste Inter at 400 for paragraphs, Playfair Display at 700 for headings is a common starting point.

Step 3: Fine-tune the sizes and spacing

Serif display fonts often need slightly tighter letter-spacing and a bit more line-height than you'd expect. Test at different viewport widths. On mobile, Playfair Display at 32px can feel heavy consider scaling it down or switching to a lighter serif for smaller screens.

What does this look like in a real page layout?

Picture a blog post. The article title uses Playfair Display at 48px, bold weight, with tight letter-spacing. The paragraph text underneath is Inter at 16px with a line-height of 1.7. Blockquotes pull in the serif at a smaller size, creating a subtle visual break. Navigation, buttons, and form labels stay in Inter throughout.

This kind of layout uses Inter paired with display headings to keep the page structured. The serif draws the eye to key sections. Inter does the heavy lifting everywhere else.

What mistakes should you watch out for?

  1. Using the serif for body text without testing screen rendering. Some serif fonts look beautiful in mockups but feel heavy or blurry at 14px on a real monitor. Stick with Inter for small text unless you've confirmed the serif renders well.
  2. Matching weights too closely. If both fonts are at the same weight and size, neither stands out. The whole point of pairing is contrast make the serif bold or large enough to separate it visually.
  3. Loading too many font files. Adding Playfair Display in four weights plus Inter in six creates a slow page load. Only include the weights you actually use.
  4. Ignoring fallback fonts. Always include a generic serif or sans-serif in your stack. If Google Fonts fails to load, your layout should still look reasonable.
  5. Overusing the serif. If every element on the page uses the decorative font, it stops being decorative. Reserve it for headings, pull quotes, or hero text.

Tips for making this pairing feel intentional

  • Set a clear role for each font. Decide upfront: Inter handles the interface and body. The serif handles headings and editorial moments. Don't mix roles mid-page.
  • Watch your line lengths. Inter reads best at 50–75 characters per line. Serif headings can be wider since they're larger, but keep paragraphs narrow.
  • Use font-weight to your advantage. Inter at 400 for text, 600 for emphasis. The serif at 700 for headings. This keeps the hierarchy sharp without adding more fonts.
  • Test on actual devices. What looks good in a browser on your 27-inch monitor may look different on a phone. Check both.
  • Consider performance. Use font-display: swap so text shows immediately with a fallback, then swaps when the web font loads.

Quick checklist before you ship

  • Both fonts are loaded with only the weights you need
  • Body text uses Inter at a readable size (15px–18px)
  • Headings use the serif at a clearly larger size or heavier weight
  • Fallback fonts are defined in every font-family stack
  • You've tested the page on mobile and desktop
  • Letter-spacing and line-height are adjusted per font, not copied between them
  • Page speed hasn't taken a noticeable hit from font file sizes
Learn More