v0 design system

v0's website (v0.dev) uses a light interface and GeistSans as the main typeface, with GeistMono alongside it. designlang measured 9 font sizes from 10px to 48px, 7 spacing values, 5 corner radii.

Captured 25 June 2026Light UI2,535 elements read

v0 colors

The brand roles and neutrals v0.dev renders, with how many elements use each one.

Neutrals

  • #d2d2d22,468 uses
  • #0202021,695 uses
  • #222222839 uses
  • #ffffff160 uses
  • #f4f4f478 uses
  • #34343462 uses
  • #6464646 uses
  • #e2e2e23 uses
  • #9595952 uses

Backgrounds

  • #f4f4f4
  • #ffffff
  • #e2e2e2

Text colors

  • #00000019.09:1 on #f4f4f4
  • #02020218.86:1 on #f4f4f4
  • #22222214.47:1 on #f4f4f4
  • #ffffff1.1:1 on #f4f4f4
  • #6464645.38:1 on #f4f4f4
  • #34343411.32:1 on #f4f4f4

Contrast checks (WCAG 2.1)

Text and background pairs found together on the page; 100% of them pass.

TextBackgroundRatioResult
#ffffff#02020220.75:1AAA
#222222#ffffff15.91:1AAA
#020202#ffffff20.75:1AAA

v0 fonts and type scale

Every font family and size in use, read from computed styles rather than the CSS source.

Font families

  • GeistSans: sans, most text (2,368 elements)
  • GeistMono: mono, body (6 elements)

Body text: 13px at weight 500, line height 19.5px.

Weights in use: 400, 500, 600.

Type scale

SizeWeightLine heightTrackingUsed on
48px60056px-2.88pxh3, br, h2, span
32px60040px-1.28pxh1, h2
24px60032px-0.96pxh2
20px60026px-0.4pxh3
18px40028pxnormalp
16px40024pxnormalhtml, head, meta, link
14px50020pxnormala, svg, path, span
13px50019.5pxnormalbutton, div, span, svg
10px40015pxnormalspan

Spacing and radii

Spacing scale

  • 1px
  • 64px
  • 96px
  • 108px
  • 128px
  • 192px
  • 208px

Corner radii

  • 4px
  • 8px
  • 12px
  • 16px
  • 35px

Medium radii lead, with a few larger ones. 5 distinct box shadows.

Motion

The motion reads as springy.

Durations

  • xs: 100ms
  • sm: 200ms
  • md: 300ms
  • lg: 500ms
  • xl: 1000ms

Easing

  • custom (184 uses): cubic-bezier(0.4, 0, 0.2, 1)
  • spring (2 uses): cubic-bezier(0.34, 1.56, 0.64, 1)
  • ease-out (12 uses): cubic-bezier(0, 0, 0.2, 1)

Design system audit

designlang scores how consistently a site uses its own values. How the audit works.

Overall

90/100, grade A

Components found: buttons (75), cards (131), links (319), navigation (2), footer (2), dropdowns (2).

By category

Color Discipline85/100
Typography Consistency80/100
Spacing System100/100
Shadow Consistency100/100
Border Radius Consistency90/100
Accessibility100/100
CSS Tokenization100/100
  • No clear primary brand color detected
  • 300 !important rules — prefer specificity over overrides
  • 5442 duplicate CSS declarations

Download the tokens

The files designlang wrote for v0.dev. Run it yourself for a fresh read: npx designlang v0.dev.

The core values as CSS variables

:root {
  --color-background: #f4f4f4;
  --color-text: #000000;
  --color-neutral-1: #d2d2d2;
  --color-neutral-2: #020202;
  --color-neutral-3: #222222;
  --color-neutral-4: #ffffff;
  --font-primary: "GeistSans", sans-serif;
  --font-secondary: "GeistMono", monospace;
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 12px;
}

Read v0.dev yourself

Run the free CLI to get these tokens, plus a Tailwind config, a shadcn theme and rules for Cursor and Claude.

Quick answers

What font does v0 use?
v0.dev sets most of its text in GeistSans (2,368 elements), with GeistMono alongside it. designlang read this from the computed styles of the live page on 25 June 2026.
How do I use the v0 design system in my own app?
Download the DTCG tokens, Tailwind config or CSS variables on this page, or run npx designlang v0.dev for a fresh read. To apply the look to an existing repo, Retheme maps the tokens onto your Tailwind or shadcn theme and opens a pull request.
Is this the official design system?
No. It is measured from v0.dev's public pages on 25 June 2026, so it shows what the site renders, not v0's internal source files. v0 is a trademark of its owner and is not affiliated with designlang.

Measured from the public pages of v0.dev on 25 June 2026. v0 is a trademark of its owner; designlang is not affiliated with it. More: the full v0 brand kit, the token extraction guide and the markdown version of this page.