Curated font pairings with rationale β all using Google Fonts. Filter by style, use case, or mood. Learn why each pairing works.
π Contrast creates hierarchy
Pair a high-contrast serif heading with a low-contrast sans-serif body. The visual tension between the two creates clarity and separates heading from content.π€ Shared personality
Both fonts should feel like they belong to the same "era" or mood β don't mix a playful display font with a cold modernist body font unless the contrast is intentional.π Two fonts maximum
Most great typography uses just two typefaces β one for headings, one for body. Three is occasionally acceptable; more than three looks chaotic.π€ Serif + sans-serif
The classic pairing rule: a serif heading with a sans-serif body (or vice versa). The contrast in stroke style creates natural visual differentiation.β‘ Same type superfamily
Many foundries create "superfamilies" β a serif and matching sans-serif (e.g. Merriweather + Merriweather Sans). They're designed to work together perfectly.π Consistent x-height
For clean body text pairings, choose fonts with similar x-heights (the height of lowercase letters). Mismatched x-heights create visual tension at body text sizes.