Skip to main content
PikSpec

Measured design system

Framer design system

The fonts, colours, type scale, spacing and corner radii of framer.com, measured from its home page with PikSpec.

In short: Framer’s website uses GT Walsheim Medium for headings and Inter for body text. GT Walsheim Medium is not on Google Fonts; the closest free match is Manrope; Inter is free on Google Fonts. Framer’s home page is dark (#000000 background, #FFFFFF text) and uses #FFFFFF for its main actions. Its palette: #000000, #111111, #171717, #FFFFFF, #999999, #0099FF.

Updated

What font does Framer use?

Framer’s website uses GT Walsheim Medium for headings and Inter for body text. GT Walsheim Medium is not on Google Fonts; the closest free match is Manrope; Inter is free on Google Fonts.

FontUsed forWeightsFree to use?
InterBody400, 500, 600, 700Yes, Google Fonts
InterCSS name: Inter VariableInterface400Yes, Google Fonts (Inter)
Input Mono RegularCode400, 700Licensed. Free match: JetBrains Mono
GT Walsheim MediumDisplay500Licensed. Free match: Manrope

Framer colour palette

Framer’s home page is dark (#000000 background, #FFFFFF text) and uses #FFFFFF for its main actions. Its palette: #000000, #111111, #171717, #FFFFFF, #999999, #0099FF.

  • #000000
    87.3% · backgrounds
  • #111111
    7.4% · backgrounds
  • #171717
    2.1% · backgrounds
  • #FFFFFF
    1.7% · text
  • #999999
    0.3% · text
  • #0099FF
    0.3% · backgrounds
  • #1A1A1A
    0.2% · backgrounds
  • #242424
    0.2% · backgrounds
  • #1F1F1F
    0.1% · backgrounds
  • #D67A5C
    0.1% · text

Type scale

Each size the page sets text in, with its weight and line height. Framer’s largest type is 54px at weight 500.

StyleSizeWeightLine heightFont
Display Large54px50054pxGT Walsheim Medium
Display Small44px50048.4pxGT Walsheim Medium
Title Large22px40030.8pxInter
Title Medium20px60024pxInter
Title Small18px40024.3pxInter
Body Large15px40020.25pxInter
Body Small14px40019.6pxInter
Label Large13px50020.8pxInter
Label Medium12px50014.4pxInter

Spacing and shape

Spacing steps the page leans on: 4px, 5px, 6px, 7px, 8px, 10px, 12px, 15px, 16px, 20px, 25px, 30px.

Corner radii: 1px, 3px, 4px, 5px, 6px, 7px, 8px, pill. 16 shadow levels measured.

What makes Framer look like Framer

Almost entirely neutral: 99% of the page is painted in #000000 and #111111.

#0099FF is an accent: 0.3% of the page, as small fills such as buttons and badges. Keep it to small areas.

#D67A5C is an accent: 0.1% of the page, used for text only. Don't fill large areas with it.

The largest type (54px GT Walsheim Medium) is medium weight, not bold (500), tracked to -0.04em.

Framer DESIGN.md for Claude Code, Cursor and Lovable

A DESIGN.md is the brief an AI coding tool reads before it writes UI. This one carries everything on this page as rules a model follows: the allowed colours and what each is for, the fonts with free stand-ins, the type scale, spacing, corners, and the things Framer’s design never does.

Put it in your project root and ask your tool to follow it: “Read DESIGN.md and build [your product] in this design language.” It describes a style, not Framer’s product, so use your own name, words and images.

Download Framer DESIGN.md · View it as text

As CSS variables

The measured values as CSS custom properties, with free fonts standing in for licensed ones. Use them to learn from or to start a project in a similar style; Framer’s name, logo, words and images are theirs.

@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Manrope:wght@500&display=swap");

:root {
  --color-background: #000000; /* Background */
  --color-surface: #242424; /* Surface */
  --color-text: #FFFFFF; /* Text */
  --color-text-muted: #999999; /* Text muted */
  --color-border: #0099FF; /* Border */
  --color-action: #FFFFFF; /* Action */
  --color-positive: #00BB88; /* Positive */
  --color-negative: #D67A5C; /* Negative */
  --color-111111: #111111; /* 7.4% of the page, as fills */
  --color-171717: #171717; /* 2.1% of the page, as fills */
  --font-body: "Inter", sans-serif; /* Inter */
  --font-interface: "Inter Variable", "Inter", sans-serif; /* Inter Variable on the site; Inter renders */
  --font-code: "Input Mono Regular", "JetBrains Mono", monospace; /* Input Mono Regular on the site; JetBrains Mono renders */
  --font-display: "GT Walsheim Medium", "Manrope", sans-serif; /* GT Walsheim Medium on the site; Manrope renders */
  --type-display-large: 54px; /* Display Large, weight 500 */
  --type-display-large-leading: 54px;
  --type-display-large-tracking: -0.04em;
  --type-display-small: 44px; /* Display Small, weight 500 */
  --type-display-small-leading: 48.4px;
  --type-display-small-tracking: -0.04em;
  --type-title-large: 22px; /* Title Large, weight 400 */
  --type-title-large-leading: 30.8px;
  --type-title-large-tracking: -0.027em;
  --type-title-medium: 20px; /* Title Medium, weight 600 */
  --type-title-medium-leading: 24px;
  --type-title-medium-tracking: -0.04em;
  --type-title-small: 18px; /* Title Small, weight 400 */
  --type-title-small-leading: 24.3px;
  --type-title-small-tracking: -0.011em;
  --type-body-large: 15px; /* Body Large, weight 400 */
  --type-body-large-leading: 20.25px;
  --type-body-large-tracking: -0.013em;
  --type-body-small: 14px; /* Body Small, weight 400 */
  --type-body-small-leading: 19.6px;
  --type-body-small-tracking: -0.007em;
  --type-label-large: 13px; /* Label Large, weight 500 */
  --type-label-large-leading: 20.8px;
  --type-label-medium: 12px; /* Label Medium, weight 500 */
  --type-label-medium-leading: 14.4px;
  --type-label-small: 10px; /* Label Small, weight 500 */
  --type-label-small-leading: 12px;
  --space-4: 4px;
  --space-8: 8px;
  --space-12: 12px;
  --space-16: 16px;
  --space-20: 20px;
  --space-32: 32px;
  --space-40: 40px;
  --space-52: 52px;
  --space-60: 60px;
  --space-64: 64px;
  --space-100: 100px;
  --space-120: 120px;
  --radius-xs: 1px;
  --radius-sm: 3px;
  --radius-md: 4px;
  --radius-lg: 5px;
  --radius-xl: 6px;
  --radius-2xl: 7px;

How this was measured

PikSpec’s scanner read the framer.com home page in Chrome at 1440px wide on 14 October 2026: the computed styles of its elements, the fonts that rendered and how much of the page each colour covers. Websites change; capture the page yourself with PikSpec for today’s values, any page, and exports in five formats.

Framer is a trademark of its owner. This page is an independent measurement and is not affiliated with or endorsed by Framer.

Similar dark designs: Aesop · Bolt · Descript · DigitalOcean · Discord · GitHub

Questions

What font does Framer use?

Framer’s website uses GT Walsheim Medium for headings and Inter for body text. GT Walsheim Medium is not on Google Fonts; the closest free match is Manrope; Inter is free on Google Fonts.

What are Framer’s brand colors?

Framer’s home page is dark (#000000 background, #FFFFFF text) and uses #FFFFFF for its main actions. Its palette: #000000, #111111, #171717, #FFFFFF, #999999, #0099FF.

Is there a DESIGN.md for Framer?

Yes: download it from this page (/design-systems/framer/DESIGN.md). It is measured from framer.com with PikSpec, with licensed fonts replaced by free matches, and works with Claude Code, Cursor, Codex, Lovable and v0.

How can I build a website in Framer’s style?

Use the values on this page as design tokens, swap any licensed font for its free match, and use your own name, words and images. PikSpec’s Build with AI turns a capture like this into a prompt and starter project for Lovable, Claude, v0, Cursor or Claude Code.

Is this Framer’s official design system?

No. It is measured from the rendered framer.com home page on 14 October 2026 and is not affiliated with or endorsed by Framer. Names and roles are inferred; the values are what the page displayed.

Contact PikSpec

Email support@pikspec.com for support, privacy requests or content reports.