Skip to content

Venmo Design System

Sand-and-white pages, signature blue #008cff in the header gradient, Athletics 500 and Scto Grotesk A: Venmo as a DESIGN.md for React and AI tools.

Primary color
#008cff
Typeface
Scto Grotesk A
Shape
Mixed
Base radius
24px
Colors
20
Type tokens
12
Components
18
Spacing values
9

About Venmo DESIGN.md

Curated by Dov Azencot, updated May 13, 2026. Source venmo.com (opens in a new tab).

Venmo's marketing canvas is what happens when a peer-to-peer payments brand decides photography of friends does the warmth typography would otherwise carry. The page opens on the header gradient `#008cff` — the brand's signature electric blue — fading down to the white hero where "Pay friends." renders in Athletics at 63px / weight 500 with `letterSpacing: -1.89px`. Below the fold the page alternates two structural surfaces: white `#ffffff` for photography catalogue rows ("Venmo everything online and in-store", "Venmo your friends", "Grow a business") and warm sand `#f1efea` for the rotating Stash-card hero band. The primary button is a pill at radius `1000px` — the literal value Venmo ships — filled `#0074de` with white text. The signature blue `#008cff` is reserved for the page-top gradient and the rotating hero card mockup rather than the button itself. Body text runs Scto Grotesk A at 16/22.4 or 17.86/25 at weight 400, with weight 700 reserved for inline link emphasis on a small set of anchor rows.

This page packages the Venmo marketing canvas into a single DESIGN.md file built on the Google Labs DESIGN.md specification. Inside the spec: 20 colors tokens grouped into brand, link, ink, surface, and hairline roles; 12 typography tokens spanning a 63px Athletics hero down to a 14px PayPal Open footer caption; six radius tokens including the load-bearing `1000px` pill and the 32px product-tile corner that appears 12 times across the page; nine spacing tokens climbing from 4px through a 53px section band; and 18 components tokens covering the gradient header, both pill button variants, the rotating hero card, the four photography-led product rows, the Venmo Debit / Check Out / Credit Card tile triad, the FAQ-style link rows, and the regulatory footer. Every hex is quoted; every Athletics weight (500) and Scto Grotesk A weight (400 / 500 / 700) is reproducible.

A working React or Next.js developer drops the file into Claude, Cursor, or GitHub Copilot and the agent reproduces Venmo's social-payments rhythm rather than a generic neobank or wallet template. Tokens map onto Tailwind config or CSS variables, and components reference each other by name so `card-product-tile` resolves through `{colors.surface-sand}` and `{rounded.lg}` to the actual `#f1efea` and `32px`. The system is worth studying for one disciplined choice that mirrors Airbnb's restraint with Rausch and Monzo's restraint with Hot Coral: a famous brand colour treated as the page's atmospheric voltage — the colour of the header sky, the colour of the rotating card — rather than the colour of the click. Where most payments brands paint the CTA in their brand blue, Venmo paints the weather.

What makes it distinct

5 highlights

  1. Single voltage blue`#008cff` carries the header gradient and rotating hero card, never the primary CTA fill
  2. Athletics 500 across every heading33px section opener up to a 63px hero with `letterSpacing: -1.89px`
  3. Pill geometry at 1000pxThe explicit value Venmo ships, not the conventional 9999px shortcut
  4. Sand-and-white band rhythm`#f1efea` warm sand alternating against `#ffffff` photography rows, no gradient transitions
  5. Two-typeface stackAthletics for display, Scto Grotesk A for body, PayPal Open scoped to the legal-footer chrome only

Live at venmo.com

Venmo in production, as captured. Scroll the window to see the whole page.

Venmo's website at venmo.com

20 colors

Venmo's system runs on #008cff as its primary voltage, used in 2 of 18 components. Type is set in Scto Grotesk A across 12 tokens from 14px to 63px, weights 400–700. Shape language is mixed across 18 components, blending pills, soft rounds, and squarer corners.

Brand & Accent

Sparing, CTA-only voltage · 7

Surface

Page and card backgrounds · 3

Text

Headlines, body, captions · 6

Borders & Hairlines

Dividers, outlines, rules · 3

Other

Specialty colors · 1

12 type tokens

Set in Scto Grotesk A across 12 tokens, from 14px to 63px, weights 400–700. Shown in its own stack: where the font isn't installed, the fallback the file names stands in.

  • display-xxl63px · weight 500 · lh 1 · tracking -1.89pxThe quick brown fox jumps over the lazy dog
  • display-xl51px · weight 500 · lh 1.05 · tracking -1.02pxThe quick brown fox jumps over the lazy dog
  • display-md33px · weight 500 · lh 1.05 · tracking -0.67pxThe quick brown fox jumps over the lazy dog
  • body-lg22px · weight 400 · lh 1.4The quick brown fox jumps over the lazy dog
  • body-lg-strong22px · weight 700 · lh 1.4The quick brown fox jumps over the lazy dog
  • body-md18px · weight 400 · lh 1.4The quick brown fox jumps over the lazy dog
  • body-md-lead18px · weight 500 · lh 1.4The quick brown fox jumps over the lazy dog
  • body-sm16px · weight 400 · lh 1.4The quick brown fox jumps over the lazy dog
  • link-md18px · weight 700 · lh 1.33The quick brown fox jumps over the lazy dog
  • link-sm16px · weight 700 · lh 1.38The quick brown fox jumps over the lazy dog
  • footer-label14px · weight 600 · lh 1.71The quick brown fox jumps over the lazy dog
  • footer-body14px · weight 400 · lh 1.43The quick brown fox jumps over the lazy dog

Radii and spacing

7 corner radii and 9 spacing values. Shape language: mixed, on a 24px base radius.

Radii7

  • none0px
  • xs4px
  • sm8px
  • md24px
  • lg32px
  • circle50%
  • full1000px

Spacing9

  • xxs4px
  • xs8px
  • sm12px
  • md16px
  • lg24px
  • xl32px
  • xxl48px
  • section53px
  • band79px

18 components

Each rendered from its tokens (color, type, radius, padding) on Venmo's own canvas.

  • Header Gradient
    Header Gradientheader-gradient
  • Top Nav
    Top Navtop-nav
  • Nav Link
    Nav Linknav-link
  • Button Primary
    Button Primarybutton-primary
  • Button Primary Hover
    Button Primary Hoverbutton-primary-hover
  • Button Outline Dark
    Button Outline Darkbutton-outline-dark
  • Hero Band Light
    Hero Band Lighthero-band-light
  • Hero Band Sand
    Hero Band Sandhero-band-sand
  • Card Rotating Hero
    Card Rotating Herocard-rotating-hero
  • Card Product Tile
    Card Product Tilecard-product-tile
  • Card Photography Row
    Card Photography Rowcard-photography-row
  • Card Feature Pale
    Card Feature Palecard-feature-pale
  • Link List Row
    Link List Rowlink-list-row
  • Inline Link
    Inline Linkinline-link
  • Badge Tag
    Badge Tagbadge-tag
  • Footer Light
    Footer Lightfooter-light
  • Footer Link
    Footer Linkfooter-link
  • App Download Pill
    App Download Pillapp-download-pill

The system, in use

Venmo's tokens on the kind of product it builds.

Marketing heroThe homepage: its nav, a headline and the main call to action.
Open account

Money that moves as fast as you do

Send, save and spend with an account built for the way you live and work.

Open an accountSee how it works
A
Gross volume$84,210
Net balance$23,904
Payments1,284
Disputes3
Gross volumeLast 30 days

Venmo design system FAQ

Venmo's tokens, its components and how to use this DESIGN.md in your project.

What are the color tokens in the Venmo DESIGN.md?

Venmo's DESIGN.md has 20 color tokens: brand (#008cff), brand-link (#0074de), brand-link-hover (#005ba4), brand-legacy (#0070ba), brand-pale (#deefff), brand-header-deep (#012169) and 14 more. Every value is a quoted hex you can copy.

What is Venmo's primary color hex code?

The color token `brand` is #008cff, used by 2 components. The surface behind it is `canvas-light` (#ffffff).

How do I use Venmo's colors in Tailwind CSS?

Map the tokens to your CSS variables: `brand` (#008cff) to `--primary`, `canvas-light` (#ffffff) to `--background`, `brand-link` (#0074de) to `--foreground`. shadcn/ui's Tailwind setup maps them to classes such as `bg-primary` and `text-foreground`, so they then use Venmo's palette.

What is Venmo's primary brand color and how is it used?

Venmo's signature is `#008cff` — a fully-saturated electric blue that sits brighter than PayPal's corporate navy and warmer than typical fintech indigo. The structural rule on the marketing canvas: `#008cff` is an atmospheric colour, not a CTA colour. It fills the top-of-page header gradient (count 4 in extraction, all as gradient stops) and the rotating hero card mockup behind the phone photography. The primary button is a pill at `#0074de` (a one-step-darker blue) with white text — `#008cff` never fills a button on the marketing surface. A deeper hover step `#005ba4` and an older navy `#0070ba` round out the structural blue ladder.

Use Venmo in your project

One machine-readable file. Drop it into Claude Code, Cursor, VS Code or any AI tool that reads DESIGN.md.

Download DESIGN.md
  1. Download the DESIGN.md

    One machine-readable file: every color, type, radius, spacing, and component token of Venmo.

  2. Feed it to your AI tool

    Drop it into Claude, Cursor, or GitHub Copilot. The agent writes React components and Tailwind classes that match Venmo's visual language.

  3. Reference the tokens directly

    Or paste the values into your Tailwind config, CSS variables, or component library: every color, size and radius is a quoted, ready-to-copy value.

Read the full DESIGN.md overview, rationale, do’s and don’ts

Overview

Venmo's marketing canvas is two structural surfaces — white #ffffff and warm sand #f1efea — alternating in full-bleed bands, with the signature blue #008cff reserved for the atmospheric weather above the page rather than the click below it. The page opens on a #008cff header gradient fading into the white hero where "Pay friends." sits in Athletics at 63px / weight 500 with letterSpacing: -1.89px. Below it, photography of friends holding phones — never typography — carries the warmth across rows. The primary CTA on every band is a pill #0074de with white text at radius 1000px — the brand's explicit pill value, not the customary 9999px shortcut.

Atmospheric blue as signature: Venmo treats {colors.brand} (#008cff) the way Airbnb treats Rausch and Monzo treats Hot Coral — as a material, not a CTA. The header gradient is #008cff. The rotating Stash card mockup is #008cff. The button is #0074de (one step darker). Where most payments brands paint the CTA in their brand colour, Venmo paints the weather above it.

Display type is Athletics at the single weight 500 across every tier from a 33px section opener up to a 63px hero with lineHeight: 1.0 and letterSpacing ranging -0.67px to -1.89px. There is no thin display alternative and no weight 700 variant. Body type is Scto Grotesk A at weight 400 for prose, weight 500 for lead paragraphs, and weight 700 for inline link emphasis. PayPal Open Regular is scoped to the regulatory footer at 14px and never appears above the fold — a structural reminder that Venmo is a PayPal subsidiary, but the brand voice on the marketing canvas is its own.

Key Characteristics:

  • Two-mode band rhythm — {colors.canvas-light} (white) for photography catalogue rows, {colors.surface-sand} (#f1efea) for the rotating-card band, switched in full-bleed with no soft transitions.
  • Signature {colors.brand} (#008cff) is the colour of the header sky and the rotating hero card — never the colour of a CTA button.
  • The primary CTA is {components.button-primary} — a {colors.brand-link} (#0074de) pill with white text, {rounded.full} (1000px) radius, {spacing.sm} 34px padding, 48px tall.
  • Display is Athletics at weight 500 exclusively — 33px to 63px, with letterSpacing from -0.67px to -1.89px and lineHeight: 1.0 on the hero.
  • The pill radius is the literal value 1000px rather than the customary 9999px — a deliberate maximal-pill commitment that survives in production CSS.
  • Cards lean on one corner: 32px on every product tile in the "Venmo everything" triad and on the rotating hero card. The 32px radius appears 12 times — by far the dominant value on the page.

Colors

Source pages: home (/).

Brand

  • Venmo Blue ({colors.brand} — #008cff): frequency 4. Used as gradient (4). The signature electric blue — a fully-saturated voltage that fills the header gradient at the top of the page and the rotating Stash card mockup. Rare on the marketing canvas (under 5% of total chromatic load); reserved as an atmospheric colour. Where most fintech brands push their primary into CTA fills, Venmo holds it back to the weather above and the object on the page.
  • Brand Link ({colors.brand-link} — #0074de): frequency 19. Used as text (11), border (8). One step darker than the signature — fills the primary pill button, anchors text on link-list rows, and renders inside the Venmo Debit Card / Credit Card tile labels. The actual interactive blue on the page.
  • Brand Link Hover ({colors.brand-link-hover} — #005ba4): frequency 2. Used as text (1), border (1). Two steps darker than #0074de — used on pressed/hover states for primary CTAs and on a single body-text emphasis row.
  • Brand Legacy ({colors.brand-legacy} — #0070ba): frequency 6. Used as text (3), border (3). A slightly older PayPal-leaning blue captured by the extractor — appears on a small number of legacy elements (the "Discover" rail label, one footer link). Reserved for transitional UI.
  • Brand Pale ({colors.brand-pale} — #deefff): frequency 2. Used as bg (2). The pale-cyan tint that fills a single info chip set and the soft surface behind tertiary callouts. The brand's tertiary tint.
  • Brand Header Deep ({colors.brand-header-deep} — #012169): the themeColor declared in the brand's manifest at <meta name="theme-color"> — a deep navy that drives the browser-chrome colour on iOS Safari and Chrome. It does not paint any pixel on the rendered page, but it is the declared brand voltage at the manifest level. Reserved for browser chrome and PWA install surfaces.

Ink

  • Ink ({colors.ink} — #000000): frequency 314. Used as text (156), border (155), shadow (3). The brand's load-bearing dark — pure black on every heading and most body prose on white. Not a navy or near-black; Venmo paints body type with true #000000, which inverts the Monzo / Mercury convention of using a deep navy for warmth.
  • Ink Mute ({colors.ink-mute} — #2f3033): frequency 148. Used as text (74), border (74). A very dark gray with a faint blue tint — fills secondary body prose, the bodyText <p> rows under section headings, and footer-light copy in PayPal Open. The brand's "second ink" colour.

Surface

  • Canvas Light ({colors.canvas-light} — #ffffff): frequency 18. Used as bg (13), gradient (4), border (1). Default page background; carries the photography catalogue bands, the FAQ-style link-list rows, the Venmo Debit / Check Out / Credit Card tile triad, and the footer.
  • Surface Sand ({colors.surface-sand} — #f1efea): frequency 1. Used as bg (1). The warm off-white sand band — fills the rotating Stash card hero strip. The single non-white structural surface on the page; reads as warmth without leaving the neutral spectrum.
  • Surface Pale Blue ({colors.surface-pale-blue} — #deefff): the same hex as {colors.brand-pale}, doubling as a tertiary tinted surface for chips and soft callouts. Scoped to chip backgrounds only.

On-color

  • On Brand ({colors.on-brand} — #ffffff): white text and iconography on {colors.brand} and {colors.brand-link} surfaces — the only legible-foreground colour over saturated blue.
  • On Ink ({colors.on-ink} — #ffffff): the same hex as on-brand, scoped to dark-fill app-download pills.

Hairline & Scrim

  • Hairline Light ({colors.hairline-light} — rgba(0,0,0,0.12)): 12%-alpha black — 1px borders between link-list rows and the footer-top divider.
  • Hairline Mute ({colors.hairline-mute} — rgba(47,48,51,0.16)): 16%-alpha ink-mute — 1px borders inside FAQ-style accordions.
  • Divider Soft ({colors.divider-soft} — rgba(0,0,0,0.06)): 6%-alpha black — micro-dividers on dense legal-footer rows.
  • Scrim ({colors.scrim} — rgba(0,0,0,0.5)): 50%-alpha black — image overlay on photography rows where text needs contrast against a busy background.
  • Brand Glow ({colors.brand-glow} — rgba(0,140,255,0.16)): 16%-alpha signature blue — used as a faint atmospheric wash on the rotating hero card edge.
  • Ink Overlay ({colors.ink-overlay} — rgba(0,0,0,0.04)): 4%-alpha black — the lightest hover wash on outline pill buttons.
  • On Dark Mute ({colors.on-dark-mute} — rgba(255,255,255,0.72)): 72%-alpha white — secondary copy on the #008cff header gradient and on rotating card sub-labels.

Semantic

The marketing canvas does not declare a separate semantic palette (success / warning / danger / info). Error states live inside the authenticated app product (transaction failures, splits, the social feed) and are out of scope here.

Typography

Font Family

Three families, with one scoped exception:

  • Athletics at the single weight 500 — every heading tier from {typography.display-md} (33px) up to {typography.display-xxl} (63px) renders in this one weight. There is no thin display alternative; there is no weight 700 variant.
  • Scto Grotesk A at weights 400 (body prose), 500 (lead paragraphs), and 700 (inline link emphasis and anchor labels). Body sizes are 16px (caption), 18px (default), and 22px (lead).
  • PayPal Open Regular at weights 400/500/600 — scoped exclusively to the regulatory footer at 14px. Never appears above the fold.

Athletics is proprietary to Venmo's display licensing; Scto Grotesk A is by Schick Toikka; PayPal Open is the parent company's UI sans. When Athletics cannot be licensed, Söhne Display or Inter Display at weight 500 with letterSpacing: -1.5px to -2px is the closest open-source path. Scto Grotesk A's substitute is Inter or Söhne at weights 400/500/700 — the brand's grotesque silhouette matches both.

Hierarchy

TokenSizeWeightLine HeightTrackingUse
{typography.display-xxl}63px5001.0-1.89pxHero ("Pay friends.")
{typography.display-xl}51px5001.05-1.02px"Meet Venmo" section opener
{typography.display-md}33px5001.05-0.67pxProduct tile h3 ("The Venmo Debit Card")
{typography.body-lg}22px4001.40Hero supporting paragraph
{typography.body-lg-strong}22px7001.40Inline strong emphasis inside lead paragraphs
{typography.body-md}18px4001.40Default prose body
{typography.body-md-lead}18px5001.40Product tile description, lead paragraph variant
{typography.body-sm}16px4001.40Nav link prose, caption rows
{typography.link-md}18px7001.330"Learn more" / "Sign up" anchor labels
{typography.link-sm}16px7001.380Top-nav link labels
{typography.footer-label}14px6001.710App-download pill label, footer column heading
{typography.footer-body}14px4001.430Footer legal copy, FCA / FDIC disclosure rows

Principles

  • Single display weight is the brand. Athletics never appears below weight 500 in the marketing system. Drop to Scto Grotesk A only when the size is below 24px and the role is body or lead.
  • Negative tracking scales with size. Athletics tracks -0.67px at 33px, -1.02px at 51px, and -1.89px at 63px — the larger the type, the tighter the letters. Scto Grotesk A keeps letterSpacing: normal at every size.
  • Line-height collapses on the hero. display-xxl at 63px uses lineHeight: 1.0. Every other display token uses 1.05; every body token uses 1.4.
  • PayPal Open is footer-only. The parent-company UI sans is structurally walled off to legal chrome — never use it above the fold or inside product-tile copy.

Note on Font Substitutes

Athletics and Scto Grotesk A are both proprietary. Söhne Display at weight 500 (display) plus Inter Variable at weights 400/500/700 (body) is the closest open-source pairing. Avoid Helvetica or Roboto — both are too geometric for Athletics's slightly humanist display silhouette.

Layout

Spacing System

  • Base unit: 8px (with 4 / 12 / 16 sub-tokens).
  • Tokens: {spacing.xxs} 4px · {spacing.xs} 8px · {spacing.sm} 12px · {spacing.md} 16px · {spacing.lg} 24px · {spacing.xl} 32px · {spacing.xxl} 48px · {spacing.section} 53px · {spacing.band} 79px.
  • Section padding: 48–79px on marketing surfaces; 24px on mobile.
  • Card internal padding: 32px on product tiles and the rotating hero card, 24px on photography rows, 24px on pale-blue feature cards.
  • Button padding: 12px 34px on every pill variant — the same value across primary, hover, and outline.

Grid & Container

The page centers in a ~1100px column on desktop; the rotating hero card extends to the column edge with the photography rows clamping the grid to a 3-up tile triad in the "Venmo everything" row. The "Venmo your friends" and "Grow a business" rows use a 2-up split with one photography pane and one product copy pane. Section gaps tend toward 53px with the rotating-card band breathing at 79px.

Whitespace Philosophy

Bands have generous vertical breathing room (53–79px section padding) and the column width holds at ~1100px even on wide screens — the brand chooses readable rhythm over edge-to-edge density. Inside cards the rhythm tightens: 16px between body rows, 8px on adjacent label-and-value pairs.

Elevation & Depth

LevelTreatmentUse
0FlatDefault surface — most cards have no shadow at all
1Photography fillThe rotating card lifts off the sand band via image content, not shadow
21px solid rgba(0,0,0,0.12) hairlineProduct tiles, link-list rows, footer top divider
3Band switch — white slams against #f1efea sandThe brand's primary depth medium

Decorative Depth

Venmo's depth system is structural: the alternation between {colors.canvas-light} and {colors.surface-sand} is the visual lift, not a shadow ladder. Drop shadows do not appear on any extracted component — the page registers depth through hairline borders and band switches. The header gradient #008cff at the very top of the page is the one soft transition; below it every band edge is hard.

Shapes

Border Radius Scale

TokenValueCountUse
{rounded.none}0px—Hero bands, footer, nav, FAQ-style row borders
{rounded.xs}4px3Inline tags, small badges
{rounded.sm}8px2Form inputs, small surfaces
{rounded.md}24px2Mid-size feature cards
{rounded.lg}32px12Product tiles, rotating hero card — the dominant page radius
{rounded.circle}50%1Avatar circles, profile photos
{rounded.full}1000px4All pill buttons and app-download pills

Pill Geometry

The 1000px value is the actual radius Venmo ships — not the customary 9999px infinity-radius shortcut. The literal 1000px reads in the stylesheet as a maximal-pill commitment rather than a "round it off to whatever" convention. Every button across primary, hover, and outline variants uses this same radius, with 12px 34px padding and a 48px height. The 32px product-tile corner is the page's load-bearing decorative geometry — it appears 12 times across the rotating hero card and the "Venmo everything" tile grid, three times more than the next-most-common value.

Components

Headers & Navigation

header-gradient — the brand-blue page-top gradient strip.

  • Background {colors.brand} (#008cff), text {colors.on-brand} (#ffffff) via {typography.link-sm}, height 64px, padding 16px 24px. The single atmospheric blue surface on the page; fades into the white hero immediately below.

top-nav — the page header underneath the gradient.

  • Background {colors.canvas-light}, text {colors.ink} weight 700 via {typography.link-sm}. Logo wordmark on the left, primary nav center, sign-in + filled button-primary on the right.

nav-link — inline nav anchor.

  • Background {colors.canvas-light}, text {colors.ink} weight 700 via {typography.link-sm}. No underline default; no hover colour shift documented.

Buttons

button-primary — the dominant CTA system-wide.

  • Background {colors.brand-link} (#0074de), text {colors.on-brand} (#ffffff), type {typography.link-md}, padding 12px 34px, rounded {rounded.full} 1000px, height 48px.
  • Used on every marketing band as the single filled pill. {colors.brand} (#008cff) never fills this button.

button-primary-hover — the pressed/hover variant.

  • Background {colors.brand-link-hover} (#005ba4), inherits the rest from button-primary. Two steps darker than the base — a luminance step, not a chromatic shift.

button-outline-dark — 1px ink border on white.

  • Background {colors.canvas-light}, text {colors.ink}, 1px solid {colors.ink} border, same pill geometry, height 48px. Appears as the secondary CTA on rows where the filled blue pill anchors the primary action.

Hero & Bands

hero-band-light — the white hero carrying "Pay friends."

  • Background {colors.canvas-light}, text {colors.ink}, type {typography.display-xxl} (63px / 500 / letterSpacing: -1.89px), padding 53px 24px. The brand's tightest display tracking and largest type tier live here.

hero-band-sand — the warm sand band carrying the rotating Stash card.

  • Background {colors.surface-sand} (#f1efea), text {colors.ink}, type {typography.display-md} (33px / 500), padding 53px 24px. The single non-white structural band on the page.

Cards

card-rotating-hero — the signature-blue Stash card mockup.

  • Background {colors.brand} (#008cff), text {colors.on-brand} (#ffffff), padding 32px, rounded {rounded.lg} 32px. Hosts the rotating "Venmo everything" hero illustration on the sand band — the single component where {colors.brand} fills the surface.

card-product-tile — the "Venmo Debit / Check Out / Credit Card" triad.

  • Background {colors.canvas-light}, text {colors.ink}, type {typography.body-md-lead}, padding 32px, rounded {rounded.lg} 32px, 1px {colors.hairline-light} border. The dominant card geometry on the page — three tiles render in this exact spec.

card-photography-row — the "Venmo your friends" and "Grow a business" rows.

  • Background {colors.canvas-light}, text {colors.ink}, type {typography.body-lg}, padding 24px, rounded {rounded.lg} 32px. Pairs photography of friends holding phones with a single product copy block per row.

card-feature-pale — soft pale-blue interlude.

  • Background {colors.surface-pale-blue} (#deefff), text {colors.ink}, padding 24px, rounded {rounded.md} 24px.

Rows & Lists

link-list-row — the FAQ-style anchor row.

  • Background {colors.canvas-light}, text {colors.brand-link} (#0074de) via {typography.link-md} weight 700. Padding 16px 0px, 1px {colors.hairline-light} border between rows. The single place blue text appears as the row's anchor colour.

inline-link — body-prose inline link.

  • Background {colors.canvas-light}, text {colors.brand-link} via {typography.body-lg-strong} weight 700. No padding, no border — pure anchor text inside paragraphs.

badge-tag — small pale-blue chip.

  • Background {colors.surface-pale-blue} (#deefff), text {colors.brand-link}, type {typography.body-sm}, padding 4px 8px, rounded {rounded.xs} 4px. The sharpest-cornered geometry in the system.

Tiles & Footer

app-download-pill — dark-fill app-store pill.

  • Background {colors.ink} (#000000), text {colors.on-ink} (#ffffff), padding 12px 24px, rounded {rounded.full} 1000px, height 44px. The single ink-filled pill on the page; reserved for App Store / Google Play download CTAs.

footer-light — the regulatory footer.

  • Background {colors.canvas-light}, text {colors.ink-mute} (#2f3033) via {typography.footer-body}, padding 48px 24px, 1px {colors.hairline-light} top border. Holds 4 columns of link groups, social icons, and the FDIC / Synchrony Bank disclosure row.

footer-link — footer anchor row.

  • Background {colors.canvas-light}, text {colors.ink-mute} via {typography.footer-label} weight 600. PayPal Open Regular renders here and only here on the page.

Do's and Don'ts

Do

  • Reserve {colors.brand} (#008cff) for atmospheric surfaces — the header gradient and the rotating hero card. The signature blue fills header-gradient and card-rotating-hero and no other component.
  • Use {colors.brand-link} (#0074de) as the primary CTA fill across every band — the one-step-darker blue is the brand's CTA voltage, not the signature #008cff.
  • Render every heading in Athletics at weight 500 with negative letter-spacing scaling to size. Drop to Scto Grotesk A only when the type tier is {typography.body-lg} (22px) or smaller.
  • Use literal 1000px for pill radius — not 9999px. The brand ships the explicit value.
  • Switch background colour in full-bleed bands from #ffffff to #f1efea sand directly, never with gradient transitions — the slam is the depth system.
  • Scope PayPal Open Regular to the footer at 14px. The parent-company UI sans is structurally walled off from every above-the-fold surface.

Don't

  • Don't fill a CTA with {colors.brand} (#008cff) — the brand assigns the signature blue to atmosphere (header gradient, card mockup), not to actions. A #008cff filled button breaks the disciplined-scarcity rule that gives the colour its voltage and reads as a child of the gradient strip above.
  • Don't bump Athletics below weight 500 — the single-weight-500 commitment is the brand's editorial signature. Lighter display weights collapse Athletics's slightly humanist silhouette into a generic display sans.
  • Don't apply positive letter-spacing to Athletics display tokens — every Athletics token sits at negative tracking from -0.67px to -1.89px. Positive tracking inverts the brand's typographic signature and reads as generic editorial.
  • Don't substitute 9999px for {rounded.full} (1000px) on buttons. The visual result clips identically, but the literal 1000px carries the brand's stylesheet voice.
  • Don't use #2f3033 for primary body text — it is the brand's ink-mute (frequency 148, used as secondary text and footer-light copy). The primary body ink is {colors.ink} (#000000); reserve #2f3033 for secondary rows under section headings and footer prose.
  • Don't soft-fade between {colors.canvas-light} and {colors.surface-sand} band boundaries — the hard slam is the brand's structural depth medium; a gradient transition removes the catalogue rhythm that lets photography do the warmth.
  • Don't use PayPal Open Regular above the fold. The font is licensed for the parent-company chrome at the footer; using it on a hero or product tile breaks the brand-voice boundary the marketing canvas keeps strict.

Known Gaps

  • Hover and pressed states are not fully captured across button variants — only the base button-primary and the button-primary-hover luminance step are documented. The brand likely applies a subtle opacity lift on button-outline-dark hover, but no precise value is extractable.
  • Focus rings rely on browser-default outline behaviour; no token captures the focus colour or stroke width.
  • Logged-in app surfaces (the social transaction feed, splits, the debit-card account view, Crypto holdings, Stash investing dashboards) are out of scope. Only the public marketing canvas at venmo.com is in this spec.
  • Rotating hero illustration palette inside card-rotating-hero (the gradients on each rotating Stash card variant, the sage-green Stash card fill, the Credit Card metallic mockup) appears as raster art rather than CSS-rendered colour and is not enumerated as design tokens.
  • Mobile-app screenshot art direction inside the "Venmo your friends" and "Grow a business" photography rows is described in prose but not tokenized — the photography is treated as content, not as a design token.
  • Semantic palette (success, warning, danger, info) is not declared on the marketing canvas — error states live inside the authenticated app product and are out of scope here.
  • Browser theme color #012169 from <meta name="theme-color"> does not paint any pixel on the rendered page; it is captured here as {colors.brand-header-deep} for completeness but is reserved for browser-chrome PWA install surfaces.

More systems like this

Afterpay, Barclays, Betterment and 47 more in Banking & Payments: each brand's colors, type and components in one file your AI agent builds from.

Build it with Pro

The DESIGN.md files are free. Pro adds 6,000+ blocks, premium templates and the MCP server, so your AI editor builds in your system for you.

4.9/5 out of 5 · 150+ reviewsfrom 150+ founders and developers.

Billed once a year in USD. Cancel anytime.

Individual

For personal projects & open source

$32instead of $49/mo

$389 billed yearly

  • How many people can use the license.Seats: 1 seat
  • Client work, SaaS products and anything you charge for.Commercial use: Personal & open source only
  • Page sections in 56 categories, from heroes and pricing tables to dashboards and settings, on every framework and UI library, in your theme.Blocks: All 6,181 blocks
  • Complete Next.js sites for startups, SaaS, agencies and portfolios, every page designed, ready to ship.Templates: All 14 templates
  • Your AI agent searches, previews and installs any component, block, icon or DESIGN.md from a prompt: 22 tools in Claude Code, Cursor, VS Code and 35 more clients.MCP server: 38 AI clients
  • Buttons with motion and states of their own, from an arrow that slides in to a burst of confetti.Animated buttons: All 35 buttons
  • Typewriters, scrambles, counters and more, for headlines, labels and numbers.Text effects: All 97 effects
  • Animated backgrounds for heroes, sections and cards, from a soft aurora to a flock that flees the cursor. Most are pure CSS.Backgrounds: All 100 backgrounds
  • WebGPU shaders, from a slow aurora to a black hole, each drawing only while it's on screen.Shaders: All 100 shaders
  • One design and one theme on all four: the components, blocks and effects are built for each framework.Frameworks: React, Vue, Svelte, Solid
  • React on Base UI, Radix UI, React Aria or Ark UI: install the version for the library your project already uses. Vue, Svelte and Solid run on Ark UI.UI libraries: Base UI, Radix, Aria, Ark
  • From a button to a date picker, a color picker or a guided tour: accessible, typed in TypeScript, each with live demos.Components: All 174 components
  • Real-world patterns built from the components, in 53 galleries: forms, tables, menus, dialogs and more.Examples: All 1,103 examples
  • Area, bar, line, pie, radar and radial charts on TanStack Charts, on every framework. React also gets the Recharts originals.Charts: All 70 charts
  • Debounce, local storage, media queries and more: each hook is one typed file you own.React hooks: All 35 hooks
  • From 222 libraries, Lucide, Heroicons, Tabler and Material Symbols among them, as SVG or a React component in one command.Icons: 294k+ icons
  • Stripe, Linear, Apple and 497 more: a brand's colors, typography and components in one file your AI agent builds from.DESIGN.md files: All 500 brands
  • Restyle every component and block at once: 8 styles, 7 grays, 18 colors and 5 radii, shared as a shadcn preset code.Theme builder: 8 styles × 18 colors
  • Priority requests are answered first.Support: Standard

Team

Most popular

For freelancers, agencies & startups

$66instead of $99/mo

$789 billed yearly · ≈ $13/dev/mo

Everything in Individual, plus

  • How many people can use the license.Seats: Up to 5 seats
  • Client work, SaaS products and anything you charge for.Commercial use: Included
  • Priority requests are answered first.Support: Priority

Organization

For companies with larger teams

$132instead of $199/mo

$1,589 billed yearly

Everything in Team, plus

  • How many people can use the license.Seats: Unlimited seats
  • Secure checkout via Stripe
  • Code lives in your repo
  • Keep what you've shipped if you cancel
  • License terms

4.9 out of 5 from 150+ developers

Your system, built for you

Every block, template and icon, installed by your AI agent in your design system. The DESIGN.md files stay free.

Get Pro
  • Cancel anytime
  • Keep what you've shipped