Duolingo - The world’s most popular way to learn Design System

duolingo.com
PROEngine v4
Visual system
100% confidence
100% confidence
hero-displayDesign is intelligence made visibleFeather80px / 700 / 1.1
display-lgDesign is intelligence made visibleFeather64px / 700 / 1.5
display-mdDesign is intelligence made visibleFeather62px / 700 / 1.1
headline-lgDesign is intelligence made visibleDuolingo Sans40px / 700 / 1.1
headline-mdDesign is intelligence made visibleDuolingo Sans32px / 700 / 1.5
headline-smDesign is intelligence made visibleDuolingo Sans28px / 700 / 1.15
title-lgDesign is intelligence made visibleDuolingo Sans25px / 700 / 1.35
title-mdDesign is intelligence made visibleDuolingo Sans24px / 700 / 1.65
title-smDesign is intelligence made visibleDuolingo Sans20px / 700 / 1.2
body-lgDesign is intelligence made visibleDuolingo Sans20px / 500 / 1.4
body-lg-strongDesign is intelligence made visibleDuolingo Sans20px / 700 / 1.4
bodyDesign is intelligence made visibleDuolingo Sans17px / 500 / 1.2
button-lgDesign is intelligence made visibleDuolingo Sans16px / 700 / 1
buttonDesign is intelligence made visibleDuolingo Sans15px / 700 / 1.15
label-capsDesign is intelligence made visibleDuolingo Sans15px / 700 / 1.35
nav-linkDesign is intelligence made visibleDuolingo Sans15px / 700 / 1.5
100% confidence
button-ghost-3-padding-x
11px
section-padding-y
96px
footer-inner-inner-max-width
1048px
100% confidence
sm · 8px
md · 12px
lg · 16px

Components

Buttons4

100% match

ghost · desktop

Label y is 16px, the site has 14px; Label height is 17px, the site has 21px.

At rest100% match2 of 27 measurements differ

Original
Original Button, ghost on the site, at rest
Render
Isolated render of Button, ghost, at rest

Focus100% match22 measurements match

Original
Original Button, ghost on the site, focus
Render
Isolated render of Button, ghost, focus
Recipe in DESIGN.md

100% match

ghost · desktop

At rest100% match40 measurements match

Original
Original Button, ghost (2) on the site, at rest
Render
Isolated render of Button, ghost (2), at rest

Focus100% match18 measurements match

Original
Original Button, ghost (2) on the site, focus
Render
Isolated render of Button, ghost (2), focus
Recipe in DESIGN.md

100% match

ghost · desktop

At rest100% match28 measurements match

Original
Original Button, ghost (3) on the site, at rest
Render
Isolated render of Button, ghost (3), at rest

Focus100% match22 measurements match

Original
Original Button, ghost (3) on the site, focus
Render
Isolated render of Button, ghost (3), focus
Recipe in DESIGN.md

98% match

secondary · desktop

It renders 98% like the site, below the 97% bar.

At rest98% match22 measurements match

Original
Original Button, secondary on the site, at rest
Render
Isolated render of Button, secondary, at rest

Focus98% match19 measurements match

Original
Original Button, secondary on the site, focus
Render
Isolated render of Button, secondary, focus
Recipe in DESIGN.md

Cards5

100% match

desktop

Group 2 y is 259px, the site has 273px; Group 2 height is 92px, the site has 68px and 4 more.

At rest100% match6 of 153 measurements differ

Original
Original Card on the site, at rest
Render
Isolated render of Card, at rest

Hover100% match18 measurements match

Original
Original Card on the site, hover
Render
Isolated render of Card, hover

Focus100% match18 measurements match

Original
Original Card on the site, focus
Render
Isolated render of Card, focus

At rest, instance 2100% match6 of 153 measurements differ

Original
Original Card on the site, at rest, instance 2
Render
Isolated render of Card, at rest, instance 2

At rest, instance 3100% match6 of 153 measurements differ

Original
Original Card on the site, at rest, instance 3
Render
Isolated render of Card, at rest, instance 3

At rest, instance 4100% match6 of 153 measurements differ

Original
Original Card on the site, at rest, instance 4
Render
Isolated render of Card, at rest, instance 4
Recipe in DESIGN.md

100% match

desktop

Group y is 139px, the site has 0px; Link y is 139px, the site has 0px and 1 more.

At rest100% match3 of 97 measurements differ

Original
Original Card (2) on the site, at rest
Render
Isolated render of Card (2), at rest

Hover100% match18 measurements match

Original
Original Card (2) on the site, hover
Render
Isolated render of Card (2), hover

Focus100% match2 of 18 measurements differ

Original
Original Card (2) on the site, focus
Render
Isolated render of Card (2), focus

At rest, instance 2100% match3 of 97 measurements differ

Original
Original Card (2) on the site, at rest, instance 2
Render
Isolated render of Card (2), at rest, instance 2

At rest, instance 3100% match3 of 97 measurements differ

Original
Original Card (2) on the site, at rest, instance 3
Render
Isolated render of Card (2), at rest, instance 3

At rest, instance 4100% match3 of 97 measurements differ

Original
Original Card (2) on the site, at rest, instance 4
Render
Isolated render of Card (2), at rest, instance 4

At rest, instance 5100% match3 of 97 measurements differ

Original
Original Card (2) on the site, at rest, instance 5
Render
Isolated render of Card (2), at rest, instance 5
Recipe in DESIGN.md

100% match

desktop

At rest100% match104 measurements match

Original
Original Card (3) on the site, at rest
Render
Isolated render of Card (3), at rest

Focus100% match22 measurements match

Original
Original Card (3) on the site, focus
Render
Isolated render of Card (3), focus

At rest, instance 2100% match104 measurements match

Original
Original Card (3) on the site, at rest, instance 2
Render
Isolated render of Card (3), at rest, instance 2

At rest, instance 3100% match104 measurements match

Original
Original Card (3) on the site, at rest, instance 3
Render
Isolated render of Card (3), at rest, instance 3

At rest, instance 4100% match104 measurements match

Original
Original Card (3) on the site, at rest, instance 4
Render
Isolated render of Card (3), at rest, instance 4

At rest, instance 5100% match104 measurements match

Original
Original Card (3) on the site, at rest, instance 5
Render
Isolated render of Card (3), at rest, instance 5

At rest, instance 6100% match104 measurements match

Original
Original Card (3) on the site, at rest, instance 6
Render
Isolated render of Card (3), at rest, instance 6
Recipe in DESIGN.md

Not verifiable

desktop

Not verifiable: photos, media or ads the page placed in it cover most of it and nothing else differs, so the comparison says nothing about the recipe.

At rest99% match121 measurements match

Original
Original Card (4) on the site, at rest
Render
Isolated render of Card (4), at rest

Hover100% match18 measurements match

Original
Original Card (4) on the site, hover
Render
Isolated render of Card (4), hover

Focus99% match18 measurements match

Original
Original Card (4) on the site, focus
Render
Isolated render of Card (4), focus

At rest, instance 2100% match121 measurements match

Original
Original Card (4) on the site, at rest, instance 2
Render
Isolated render of Card (4), at rest, instance 2

At rest, instance 399% match121 measurements match

Original
Original Card (4) on the site, at rest, instance 3
Render
Isolated render of Card (4), at rest, instance 3

At rest, instance 4100% match121 measurements match

Original
Original Card (4) on the site, at rest, instance 4
Render
Isolated render of Card (4), at rest, instance 4
Recipe in DESIGN.md

100% match

desktop

Group 2 height is 80px, the site has 105px; Text 3 height is 50px, the site has 75px.

At rest100% match2 of 164 measurements differ

Original
Original Card (5) on the site, at rest
Render
Isolated render of Card (5), at rest

At rest, instance 2100% match2 of 164 measurements differ

Original
Original Card (5) on the site, at rest, instance 2
Render
Isolated render of Card (5), at rest, instance 2

At rest, instance 3100% match2 of 164 measurements differ

Original
Original Card (5) on the site, at rest, instance 3
Render
Isolated render of Card (5), at rest, instance 3
Recipe in DESIGN.md

Extras7

100% match

desktop

At rest100% match94 measurements match

Original
Original Accordion on the site, at rest
Render
Isolated render of Accordion, at rest
Recipe in DESIGN.md

100% match

desktop

Icon x is -9px, the site has 16px.

At rest100% match1 of 102 measurements differ

Original
Original App store badge on the site, at rest
Render
Isolated render of App store badge, at rest

Focus100% match22 measurements match

Original
Original App store badge on the site, focus
Render
Isolated render of App store badge, focus
Recipe in DESIGN.md

100% match

desktop

At rest100% match182 measurements match

Original
Original Footer navigation on the site, at rest
Render
Isolated render of Footer navigation, at rest
Recipe in DESIGN.md

Not checked

desktop

No recipe was made: the element could not be found on the page.

Nothing was compared for this component.

100% match

desktop

At rest100% match40 measurements match

Original
Original Language selector (2) on the site, at rest
Render
Isolated render of Language selector (2), at rest

Focus100% match18 measurements match

Original
Original Language selector (2) on the site, focus
Render
Isolated render of Language selector (2), focus
Recipe in DESIGN.md

100% match

desktop

Group width is 1016px, the site has 1002px; List width is 1016px, the site has 1002px.

At rest100% match2 of 496 measurements differ

Original
Original Language tabs on the site, at rest
Render
Isolated render of Language tabs, at rest
Recipe in DESIGN.md

100% match

desktop

It renders 100% like the site, below the 96% bar.

At rest100% match24 measurements match

Original
Original Step list item on the site, at rest
Render
Isolated render of Step list item, at rest

Hover100% match18 measurements match

Original
Original Step list item on the site, hover
Render
Isolated render of Step list item, hover

Focus100% match18 measurements match

Original
Original Step list item on the site, focus
Render
Isolated render of Step list item, focus

At rest, instance 2100% match24 measurements match

Original
Original Step list item on the site, at rest, instance 2
Render
Isolated render of Step list item, at rest, instance 2

At rest, instance 3100% match24 measurements match

Original
Original Step list item on the site, at rest, instance 3
Render
Isolated render of Step list item, at rest, instance 3

At rest, instance 4100% match24 measurements match

Original
Original Step list item on the site, at rest, instance 4
Render
Isolated render of Step list item, at rest, instance 4
Recipe in DESIGN.md

Headers10

99% match

desktop

At rest99% match156 measurements match

Original
Original Header (inner) on the site, at rest
Render
Isolated render of Header (inner), at rest

Focus on link 299% match18 measurements match

Original
Original Header (inner) on the site, focus on link 2
Render
Isolated render of Header (inner), focus on link 2

Focus on link99% match18 measurements match

Original
Original Header (inner) on the site, focus on link
Render
Isolated render of Header (inner), focus on link

Focus on logo99% match18 measurements match

Original
Original Header (inner) on the site, focus on logo
Render
Isolated render of Header (inner), focus on logo
Recipe in DESIGN.md

89% match

desktop

Root height is 128px, the site has 70px; Inner y is 18px, the site has 0px and 12 more.

At rest89% match14 of 216 measurements differ

Original
Original Header (inner, 2) on the site, at rest
Render
Isolated render of Header (inner, 2), at rest

Focus on cta 289% match19 measurements match

Original
Original Header (inner, 2) on the site, focus on cta 2
Render
Isolated render of Header (inner, 2), focus on cta 2

Focus on cta 389% match19 measurements match

Original
Original Header (inner, 2) on the site, focus on cta 3
Render
Isolated render of Header (inner, 2), focus on cta 3

Focus on cta89% match18 measurements match

Original
Original Header (inner, 2) on the site, focus on cta
Render
Isolated render of Header (inner, 2), focus on cta

Focus on logo89% match18 measurements match

Original
Original Header (inner, 2) on the site, focus on logo
Render
Isolated render of Header (inner, 2), focus on logo
Recipe in DESIGN.md

100% match

desktop

At rest100% match114 measurements match

Original
Original Header (inner, 3) on the site, at rest
Render
Isolated render of Header (inner, 3), at rest

Focus on button100% match18 measurements match

Original
Original Header (inner, 3) on the site, focus on button
Render
Isolated render of Header (inner, 3), focus on button

Focus on logo100% match18 measurements match

Original
Original Header (inner, 3) on the site, focus on logo
Render
Isolated render of Header (inner, 3), focus on logo
Recipe in DESIGN.md

86% match

desktop

It renders 86% like the site, below the 96% bar.

At rest86% match119 measurements match

Original
Original Header (inner, 4) on the site, at rest
Render
Isolated render of Header (inner, 4), at rest

Focus on logo86% match18 measurements match

Original
Original Header (inner, 4) on the site, focus on logo
Render
Isolated render of Header (inner, 4), focus on logo
Recipe in DESIGN.md

94% match

desktop

Text y is 25px, the site has 23px; Text height is 17px, the site has 21px.

At rest95% match2 of 99 measurements differ

Original
Original Header (landing) on the site, at rest
Render
Isolated render of Header (landing), at rest

Focus on cta95% match18 measurements match

Original
Original Header (landing) on the site, focus on cta
Render
Isolated render of Header (landing), focus on cta

Hover on cta94% match18 measurements match

Original
Original Header (landing) on the site, hover on cta
Render
Isolated render of Header (landing), hover on cta

Focus on logo95% match18 measurements match

Original
Original Header (landing) on the site, focus on logo
Render
Isolated render of Header (landing), focus on logo
Recipe in DESIGN.md

93% match

mobile

Root height is 128px, the site has 70px; Inner y is 18px, the site has 0px and 9 more.

At rest93% match11 of 145 measurements differ

Original
Original Header (inner, 2) on the site, at rest
Render
Isolated render of Header (inner, 2), at rest

Focus on logo93% match18 measurements match

Original
Original Header (inner, 2) on the site, focus on logo
Render
Isolated render of Header (inner, 2), focus on logo
Recipe in DESIGN.md

100% match

mobile

At rest100% match57 measurements match

Original
Original Header (inner, 3) on the site, at rest
Render
Isolated render of Header (inner, 3), at rest

Focus on logo100% match18 measurements match

Original
Original Header (inner, 3) on the site, focus on logo
Render
Isolated render of Header (inner, 3), focus on logo
Recipe in DESIGN.md

95% match

mobile

It renders 95% like the site, below the 96% bar.

At rest95% match101 measurements match

Original
Original Header (inner, 4) on the site, at rest
Render
Isolated render of Header (inner, 4), at rest

Focus on logo95% match18 measurements match

Original
Original Header (inner, 4) on the site, focus on logo
Render
Isolated render of Header (inner, 4), focus on logo
Recipe in DESIGN.md

100% match

mobile

At rest100% match113 measurements match

Original
Original Header (inner) on the site, at rest
Render
Isolated render of Header (inner), at rest

Focus on logo100% match18 measurements match

Original
Original Header (inner) on the site, focus on logo
Render
Isolated render of Header (inner), focus on logo

Focus on menu toggle100% match18 measurements match

Original
Original Header (inner) on the site, focus on menu toggle
Render
Isolated render of Header (inner), focus on menu toggle
Recipe in DESIGN.md

100% match

mobile

At rest100% match57 measurements match

Original
Original Header (landing) on the site, at rest
Render
Isolated render of Header (landing), at rest

Focus on logo100% match18 measurements match

Original
Original Header (landing) on the site, focus on logo
Render
Isolated render of Header (landing), focus on logo
Recipe in DESIGN.md

Footers8

100% match

desktop

At rest100% match223 measurements match

Original
Original Footer (inner) on the site, at rest
Render
Isolated render of Footer (inner), at rest

Focus on nav link100% match18 measurements match

Original
Original Footer (inner) on the site, focus on nav link
Render
Isolated render of Footer (inner), focus on nav link

Hover on nav link100% match18 measurements match

Original
Original Footer (inner) on the site, hover on nav link
Render
Isolated render of Footer (inner), hover on nav link
Recipe in DESIGN.md

100% match

desktop

Root height is 118px, the site has 79px; Nav height is 78px, the site has 39px and 1 more.

At rest100% match3 of 201 measurements differ

Original
Original Footer (inner, 2) on the site, at rest
Render
Isolated render of Footer (inner, 2), at rest

Focus on nav link100% match18 measurements match

Original
Original Footer (inner, 2) on the site, focus on nav link
Render
Isolated render of Footer (inner, 2), focus on nav link

Hover on nav link100% match18 measurements match

Original
Original Footer (inner, 2) on the site, hover on nav link
Render
Isolated render of Footer (inner, 2), hover on nav link
Recipe in DESIGN.md

100% match

desktop

Root height is 78px, the site has 39px; Link y is 51px, the site has 12px.

At rest100% match2 of 182 measurements differ

Original
Original Footer (inner, 3) on the site, at rest
Render
Isolated render of Footer (inner, 3), at rest

Focus on link100% match18 measurements match

Original
Original Footer (inner, 3) on the site, focus on link
Render
Isolated render of Footer (inner, 3), focus on link
Recipe in DESIGN.md

99% match

desktop

Group height is 431px, the site has 381px; Group height is 431px, the site has 285px and 29 more.

At rest99% match31 of 2279 measurements differ

Original
Original Footer (landing) on the site, at rest
Render
Isolated render of Footer (landing), at rest

Focus on link 299% match18 measurements match

Original
Original Footer (landing) on the site, focus on link 2
Render
Isolated render of Footer (landing), focus on link 2

Focus on link99% match18 measurements match

Original
Original Footer (landing) on the site, focus on link
Render
Isolated render of Footer (landing), focus on link
Recipe in DESIGN.md

100% match

mobile

At rest100% match201 measurements match

Original
Original Footer (inner, 2) on the site, at rest
Render
Isolated render of Footer (inner, 2), at rest

Focus on nav link100% match18 measurements match

Original
Original Footer (inner, 2) on the site, focus on nav link
Render
Isolated render of Footer (inner, 2), focus on nav link

Hover on nav link100% match18 measurements match

Original
Original Footer (inner, 2) on the site, hover on nav link
Render
Isolated render of Footer (inner, 2), hover on nav link
Recipe in DESIGN.md

100% match

mobile

At rest100% match182 measurements match

Original
Original Footer (inner, 3) on the site, at rest
Render
Isolated render of Footer (inner, 3), at rest

Focus on link100% match18 measurements match

Original
Original Footer (inner, 3) on the site, focus on link
Render
Isolated render of Footer (inner, 3), focus on link
Recipe in DESIGN.md

100% match

mobile

Root height is 155px, the site has 116px; Inner height is 117px, the site has 78px and 4 more.

At rest100% match6 of 223 measurements differ

Original
Original Footer (inner) on the site, at rest
Render
Isolated render of Footer (inner), at rest

Focus on nav link100% match18 measurements match

Original
Original Footer (inner) on the site, focus on nav link
Render
Isolated render of Footer (inner), focus on nav link

Hover on nav link100% match18 measurements match

Original
Original Footer (inner) on the site, hover on nav link
Render
Isolated render of Footer (inner), hover on nav link
Recipe in DESIGN.md

100% match

mobile

Inner height is 274px, the site has 378px; List 2 height is 148px, the site has 252px and 7 more.

At rest100% match9 of 2279 measurements differ

Original
Original Footer (landing) on the site, at rest
Render
Isolated render of Footer (landing), at rest

Focus on link 2100% match18 measurements match

Original
Original Footer (landing) on the site, focus on link 2
Render
Isolated render of Footer (landing), focus on link 2

Focus on link100% match18 measurements match

Original
Original Footer (landing) on the site, focus on link
Render
Isolated render of Footer (landing), focus on link
Recipe in DESIGN.md

Input1

94% match

desktop

It renders 94% like the site, below the 97% bar.

At rest94% match22 measurements match

Original
Original Input on the site, at rest
Render
Isolated render of Input, at rest

Focus94% match18 measurements match

Original
Original Input on the site, focus
Render
Isolated render of Input, focus
Recipe in DESIGN.md

Extracted from Duolingo - The world’s most popular way to learn’s public website, not official brand guidelines. Check another site’s fonts

More like this

Browse all
Apple website preview
Utilities & Everyday Tools · Browser Extensions & Small Utilities

Apple

Design tokens extracted from CSSOM frequency analysis without LLM interpretation.

Airbnb website preview
Travel, Transport & Logistics

Airbnb

Airbnb's design system is built around a single proprietary variable font (Airbnb Cereal VF), a near-monochrome neutral palette anchored by deep charcoal (#222222) and light grays, with the brand's signature "Rausch" coral-pink (#ff385c) reserved exclusively for primary CTAs and the logo. The layout is a responsive photo-card grid with generous image-to-text ratios, soft 20px rounded corners on cards, and a multi-layer ambient shadow system that creates subtle depth without harsh contrast. The search bar is a prominent pill-shaped container that unifies the core user action.

IKEA website preview
Commerce & Retail · E-commerce Store

IKEA

IKEA's global homepage uses a bold, flat design system anchored by the iconic IKEA Yellow (#ffdb00) as the primary action surface and IKEA Blue (#0058a3) as the brand logo accent. The entire typographic system is built on a single custom typeface — Noto IKEA — spanning weights 400 and 700 across a tightly defined scale from 14px body text to 51px display headings. Elevation is conveyed entirely through color contrast and layout structure rather than shadows. The layout uses a max-width container of 90rem with a 1.5rem desktop grid gap, and a consistent 8px border-radius token applied to interactive elements. The off-white background (#fffefb) provides warmth against the stark #111111 text, creating a high-contrast, accessible reading experience.

Notion website preview
Software & SaaS · Productivity & Notes

Notion

Notion's marketing homepage pairs a deep navy (#02093a) hero section with a light (#f6f5f4) body, using a custom typeface (NotionInter) across all text roles. The design employs a 12-column grid with 28px gutters, a dual-radius language (8px for cards, 9999px for pills), and a multi-layer progressive shadow system for floating UI elements. Brand blue (#2537b1) drives CTAs and accent highlights, while a semantic gray-scale ladder (gray-200 through gray-900) structures all text and surface hierarchy.

Railway website preview
Developer & Infrastructure · Developer Tools & IDEs

Railway

Railway's design system is a dark-first developer platform UI anchored in deep near-black navy surfaces (#13111c, #0b0b0f), high-contrast off-white text (#f7f7f8), and a distinctive purple brand accent (#853bce / #553f83). The hero uses IBM Plex Serif for editorial weight, while Inter handles all UI copy and JetBrains Mono / SF Mono serve code contexts. Elevation is achieved through inset white-glow borders (rgba(255,255,255,0.2) 1.5px inset) rather than drop shadows, giving the UI a glass-panel aesthetic. The spacing system is 4px-based with a strong 8/12/16/24/32 rhythm. Border radii are tight (4px dominant) with selective 8px and 16px for cards and hero containers.

Shopify website preview
Business & Professional Services

Shopify

Shopify's marketing homepage uses a dramatic full-bleed video hero with a near-black (#02090a) background that contrasts sharply with the white navigation bar above. The primary brand accent is a vivid mint green (#36f4a4) used sparingly for highlights and interactive states. Typography is split between NeueHaasGrotesk for display/editorial headings and Inter-Variable for UI body copy. CTAs use fully-rounded pill shapes (border-radius: 9999px). The overall system is confident, high-contrast, and aspirational — built to convert visitors into merchants.