Duolingo brand colors, fonts & UI tokens
The palette, type, corner geometry and surface tones behind Duolingo’s website, with contrast ratios and tokens you can paste into Tailwind, CSS or Figma.
Typography
- Headings
- Feather Bold
- Body
- duolingo-sans
- Monospace
- SF Mono
- Free stand-in
- Nunito / JetBrains Mono
Feather Bold is a bespoke display face made with Fontsmith; the site sets text in an in-house variable font (duolingo-sans). The guidelines name Nunito as the free substitute.
Geometry & surface
- Radius style
- Rounded · 8-14 px
- Controls
- 12px
- Cards
- 16px
- Scale
- 8px · 12px · 16px
Design language
- Feather Green (#58CC02) leads; a named animal palette (Macaw blue, Cardinal red, Bee yellow, Fox orange, Beetle purple) covers everything else.
- Text uses Eel (#4B4B4B) and Wolf (#777777) grays instead of black, keeping the tone soft and friendly.
- Rounded everywhere: the guidelines call pointy shapes off-brand, and buttons use 12 px corners.
Live UI preview
Duolingo’s palette, type and corner geometry on a navbar, hero, pricing table, form field and toast. Switch to the WCAG-fixed palette or dark mode to compare.
Plan, track and release work with your team in one place. Start free and upgrade when you grow.
Your team can sign in now. Invite links expire in 7 days.
Every plan includes the core workspace.
For individuals
- 3 projects
- Basic reporting
- Community support
For growing teams
- Unlimited projects
- Advanced reporting
- Priority support
For larger organizations
- SSO and audit log
- Custom roles
- Dedicated manager
Sample content. Colors, type and corners come from the Duolingo profile.
Technical SEO snapshot
www.duolingo.com · scanned 11 Nov 2026- warnTitle tag8 chars: “Duolingo”
- passMeta description148 chars
- failSingle H1 headingNo H1 found
- passCanonical URLhttps://www.duolingo.com/
- warnHTML lang attributeMissing lang on <html>
- passMobile viewportwidth=device-width,initial-scale=1,user-scalable=no
- passOpen Graph tags3/3 of og:title, og:description, og:image
- passTwitter / X cardsummary
- warnStructured data (JSON-LD)No JSON-LD found
- passHTTPSServed over HTTPS
- passIndexable (robots meta)robots="NOODP"
- passXML sitemap63 URLs · https://www.duolingo.com/sitemap_index.xml
- passFavicon / touch iconIcon link present
- passImage alt textNo images on page
WCAG contrast ratios
| Pairing | Colors | Ratio | WCAG AA |
|---|---|---|---|
| Body text on surface | #4B4B4B / #FFFFFF | 8.72:1 | Pass |
| Secondary text on surface | #777777 / #FFFFFF | 4.48:1 | Large text only |
| Primary as link/text on surface | #58CC02 / #FFFFFF | 2.09:1 | Fail |
| Button label on primary | #111113 / #58CC02 | 9.03:1 | Pass |
| Accent on surface | #FFC800 / #FFFFFF | 1.55:1 | Fail |
| Secondary on surface | #1CB0F6 / #FFFFFF | 2.44:1 | Fail |
| White on secondary | #FFFFFF / #1CB0F6 | 2.44:1 | Fail |
| Dark mode: text on canvas | #F5F5F7 / #0D110C | 17.49:1 | Pass |
| Dark mode: primary on canvas | #58CC02 / #0D110C | 9.12:1 | Pass |
Use the Duolingo system in SuiteAnvil
Each tool opens with Duolingo preloaded as the active BrandProfile.
Duolingo tokens for Tailwind CSS v4
Paste into your global stylesheet, or open StyleExtract for CSS variables, Figma tokens, DESIGN.md and .cursorrules.
/* Duolingo design tokens, extracted from https://www.duolingo.com
Generated by SuiteAnvil StyleExtract · https://suiteanvil.com */
@import "tailwindcss";
@theme {
/* Brand roles */
--color-brand: #58CC02;
--color-brand-foreground: #111113;
--color-secondary: #1CB0F6;
--color-accent: #FFC800;
--color-surface: #FFFFFF;
--color-ink: #4B4B4B;
--color-ink-muted: #777777;
--color-line: #E5E5E5;
/* Surfaces (UI vibe: Neutral white) */
--color-canvas: #FFFFFF;
--color-card: #FFFFFF;
--color-hairline: #E5E5E5;
/* Primary tonal scale */
--color-brand-50: #F7FCF2;
--color-brand-100: #EBF9E1;
--color-brand-200: #D5F2C0;
--color-brand-300: #B4E88D;
--color-brand-400: #8ADB4E;
--color-brand-500: #58CC02;
--color-brand-600: #4CAF04;
--color-brand-700: #3F8E05;
--color-brand-800: #316B07;
--color-brand-900: #254E09;
--color-brand-950: #1B350A;
/* Typography: brand family first, free stand-in second */
--font-heading: "Feather Bold", Nunito, -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
--font-sans: duolingo-sans, Nunito, -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;
--font-mono: "SF Mono", "JetBrains Mono", "SF Mono", ui-monospace, Menlo, Consolas, monospace;
/* Shape (UI vibe: Rounded · 8-14 px) */
--radius-sm: 8px;
--radius-md: 12px;
--radius-lg: 16px;
--radius-button: 12px;
--radius-control: 12px;
--radius-card: 16px;
}
/* Dark mode overrides (toggle with <html data-theme="dark">) */
@custom-variant dark (&:where([data-theme="dark"], [data-theme="dark"] *));
[data-theme="dark"] {
--color-brand: #58CC02;
--color-brand-foreground: #111113;
--color-accent: #FFC800;
--color-surface: #0D110C;
--color-canvas: #0D110C;
--color-card: #151A15;
--color-hairline: #252924;
--color-ink: #F5F5F7;
--color-ink-muted: #A1A1AA;
--color-line: #252924;
}
SuiteAnvil extracts publicly visible design tokens, logos, and font references for workflow automation. You are responsible for ensuring you hold valid commercial rights or client authorization for any proprietary fonts, trademarks, and brand assets before commercial publication. Licensing notice
FAQ
What is Duolingo’s primary brand color?
Duolingo’s primary color is #58CC02 (rgb(88, 204, 2)), used for primary actions and emphasis. Text is set in #4B4B4B on a #FFFFFF surface.
What font does Duolingo use?
Duolingo uses Feather Bold for headings and duolingo-sans for body text, with SF Mono for code. Feather Bold is a bespoke display face made with Fontsmith; the site sets text in an in-house variable font (duolingo-sans). The guidelines name Nunito as the free substitute.
What is a free alternative to Duolingo’s font?
Nunito is a close free alternative for headings, and JetBrains Mono works for monospace.
What corner radius does Duolingo use?
Duolingo reads as rounded · 8-14 px: controls use 12px, cards about 16px, on a neutral white canvas (#FFFFFF).
Do Duolingo’s brand colors meet WCAG contrast?
4 of 9 key pairings pass WCAG 2.1 AA. Secondary text on surface is 4.48:1; Primary as link/text on surface is 2.09:1; Accent on surface is 1.55:1; Secondary on surface is 2.44:1; White on secondary is 2.44:1
Reference snapshot of Duolingo’s public website styling for educational and interoperability purposes, scanned 11 Nov 2026. Duolingo and its logo are trademarks of their owner, shown for identification only; SuiteAnvil is not affiliated with or endorsed by Duolingo.
Compare your website with Duolingo
Scan your own site and see its palette, fonts, corner radius, WCAG contrast and SEO score next to Duolingo's, side by side.