taste-skill / Compare styles / Vercel vs Framer

Vercel vs Framer: design style comparison

Vercel is Geist Architectural Grid & Swiss Precision Monochrome; Framer is Pitch-Black Interactive Canvas & Electric #0099FF Blue Glow. Both were extracted with the same taste-skill pipeline, so every value below is directly comparable. 18 of 18 tracked tokens differ.

Side-by-side preview

Vercel style · light
Ship the product, not the pixels.
Preview text rendered with the extracted Vercel canvas, text, muted and accent tokens.
Sign Up Deploy now
Card on extracted card recipe
Accent link: #0070F3 · border #EBEBEB
Framer style · dark
Ship the product, not the pixels.
Preview text rendered with the extracted Framer canvas, text, muted and accent tokens.
Sign up Get started for free
Card on surface + border tokens
Accent link: #0099FF · border rgba(0, 153, 255, 0.42)

Key differences

Token table

TokenVercelFramer
Canvas#FAFAFA#000000
Surface#FFFFFF#111111
Text#171717#FFFFFF
Muted text#4D4D4D#999999
Accent#0070F3#0099FF
Border#EBEBEBrgba(0, 153, 255, 0.42)
Heading fontGeistSansGT Walsheim Medium
Body fontGeistSansInter
Mono fontGeistMonoJetBrains Mono
H164px / -0.06em (w400)54px / -0.04em (w500)
Button radius6px8px
Button height32px30px
Most-used radius6px15px
Most-used shadowrgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgba(0, 0, 0, 0) 0px 0px 0px 0px, rgb(235, 235, 235) 0px 0px 0px 1pxrgba(255, 255, 255, 0.35) 0px 1px 1px 0px inset, rgba(255, 255, 255, 0.35) 0px -1px 1px 0px inset
Easingcubic-bezier(0.4, 0, 0.2, 1)—
Duration0.1s—
Container max-width1448px1200px
Modelightdark

Primary buttons

RenderedHeightPaddingRadiusBackground / TextBorderFont
Sign Up32px0px 6px6px#171717
#FFFFFF
none14px / 500
Deploy now40px0px 12px9999px#171717
#FFFFFF
none16px / 500
Log In32px0px 6px6px#FFFFFF
#171717
none14px / 500
RenderedHeightPaddingRadiusBackground / TextBorderFont
Sign up30px8px 10px8px#FFFFFF
#0000EE
none12px / 400
Get started for free34px10px 14px8px#FFFFFF
#0000EE
none12px / 400
Copy30px0px 10px8px#1F1F1F
#000000
none12px / 400

Which style should you pick?

Pick Vercel if you want Architectural #FAFAFA / #FFFFFF daylight grid with exposed 1px #EBEBEB structural hairlines, corner crosshair markers, ultra-tight -0.06em GeistSans display type, and #171717 monochrome CTAs — signals: light, monochrome, grid, crosshairs, geist, vercel, developer, cloud, infra, minimal, swiss, high-contrast, 1px-grid.

Pick Framer if you want Pure #000000 canvas with #111111 elevated stage cards, glowing rgba(0,153,255,0.42) borders, 54px GT Walsheim Medium headlines (-0.04em tracking), and #0099FF electric blue + #FFFFFF 8px CTAs — signals: dark, design, web-builder, no-code, framer, electric-blue, gt-walsheim, creative, motion.

Rules that differ

Vercel never:

  • NEVER substitute generic uncalibrated gray backgrounds for Vercel’s exact #FAFAFA canvas and #FFFFFF surface pairing.
  • NEVER replace GeistSans display typography or ignore its signature scale (64px / -0.06em (w400)).
  • NEVER use thick opaque borders that clash with #EBEBEB (1px solid #EBEBEB).

Framer never:

  • NEVER substitute generic uncalibrated gray backgrounds for Framer’s exact #000000 canvas and #111111 surface pairing.
  • NEVER replace GT Walsheim Medium display typography or ignore its signature scale (54px / -0.04em (w500)).
  • NEVER use thick opaque borders that clash with rgba(0, 153, 255, 0.42) (1px rgba(0,153,255,0.42)).

Go deeper

Values extracted from https://vercel.com and https://www.framer.com. Not affiliated with either company.

Get all 30 full SKILL.md specs (Cursor / Claude Code / Codex ready) plus the Pro growth skills.

See taste-skill Pro →