Business

Shopify

Shopify Marketing 2024

full-bleed video heropill-radius CTA languagedark-surface-on-light contrast flipmint-green brand accent on near-blacklarge-weight editorial headline scale

Shopify's marketing homepage uses a dramatic full-bleed video hero with a near-black (#02090a) background that contrasts sharply with the white navigation bar above. The primary brand accent is a vivid mint green (#36f4a4) used sparingly for highlights and interactive states. Typography is split between NeueHaasGrotesk for display/editorial headings and Inter-Variable for UI body copy. CTAs use fully-rounded pill shapes (border-radius: 9999px). The overall system is confident, high-contrast, and aspirational — built to convert visitors into merchants.

8Colors
10Type styles
13Spacing
8Radii

Colors

Brand

Border Grayprimary
Dividers, borders on nav and card elements, default ring color

Surface

Surface Darkbackground
Hero section background, dark surface behind video overlay
Surface Lightbackground
Light section backgrounds, card surfaces

Text

Whitetext
Primary text on dark backgrounds, nav links, hero headline, CTA button text
Ink Blacktext
Body text on light sections, footer text
Mint Greentext
Brand accent, interactive highlights, logo mark accent color
Muted Graytext
Secondary/subdued text, footer links, disabled states

Border

Subtle Borderborder
Subtle dividers and borders in footer zone

Typography

Hero headline — largest display text on the page
The quick brown fox jumps
NeueHaasGrotesk, Helvetica, Arial, sans-serif96px · 400 · 96px
Section-level display headings
The quick brown fox jumps
NeueHaasGrotesk, Helvetica, Arial, sans-serif55px · 330 · 64px
Mid-page section headings
The quick brown fox jumps
NeueHaasGrotesk, Helvetica, Arial, sans-serif48px · 330 · 54.72px
Card and sub-section headings
The quick brown fox jumps
NeueHaasGrotesk, Helvetica, Arial, sans-serif32px · 360 · 36.48px · 0.32px
Feature headings and callout titles
The quick brown fox jumps
NeueHaasGrotesk, Helvetica, Arial, sans-serif20px · 400 · 28px · 0.3px
Section labels, nav items, button text
The quick brown fox jumps
NeueHaasGrotesk, Helvetica, Arial, sans-serif18px · 500 · 22.56px · 0.72px
Primary body copy across marketing sections
The quick brown fox jumps
NeueHaasGrotesk, Helvetica, Arial, sans-serif16px · 400 · 24px
Code snippets and technical content
The quick brown fox jumps
ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace16px · 400 · 24px
UI labels, nav sub-items, form fields
The quick brown fox jumps
Inter-Variable, Helvetica, Arial, sans-serif14px · 420 · 20px
Micro labels, badges, captions
The quick brown fox jumps
Inter-Variable, Helvetica, Arial, sans-serif12px · 420 · 14.4px · 0.72px

Spacing & Shape

Spacing

space-1
4px
space-2
8px
space-3
12px
space-4
16px
space-5
24px
space-6
32px
space-7
40px
space-xl
40px
space-8
64px
space-2xl
64px
space-9
80px
space-10
90px
space-11
128px

Border Radius

radius-sm4px
radius-md5px
radius-lg8px
radius-xl12px
radius-2xl16px
radius-card30px
radius-pill9999px
radius-oval340px
---
version: alpha
name: "Shopify Marketing 2024"
description: "Shopify's marketing homepage uses a dramatic full-bleed video hero with a near-black (#02090a) background that contrasts sharply with the white navigation bar above. The primary brand accent is a vivid mint green (#36f4a4) used sparingly for highlights and interactive states. Typography is split between NeueHaasGrotesk for display/editorial headings and Inter-Variable for UI body copy. CTAs use fully-rounded pill shapes (border-radius: 9999px). The overall system is confident, high-contrast, and aspirational. built to convert visitors into merchants."
colors:
  border-gray: "#e5e7eb"
  surface-dark: "#02090a"
  surface-light: "#f4f4f5"
  ink-black: "#000000"
  mint-green: "#36f4a4"
  muted-gray: "#a1a1aa"
  white: "#ffffff"
  subtle-border: "#e4e4e7"
typography:
  display-hero:
    fontFamily: "NeueHaasGrotesk, Helvetica, Arial, sans-serif"
    fontSize: "96px"
    fontWeight: "400"
    lineHeight: "96px"
  display-large:
    fontFamily: "NeueHaasGrotesk, Helvetica, Arial, sans-serif"
    fontSize: "55px"
    fontWeight: "330"
    lineHeight: "64px"
  display-medium:
    fontFamily: "NeueHaasGrotesk, Helvetica, Arial, sans-serif"
    fontSize: "48px"
    fontWeight: "330"
    lineHeight: "54.72px"
  heading-large:
    fontFamily: "NeueHaasGrotesk, Helvetica, Arial, sans-serif"
    fontSize: "32px"
    fontWeight: "360"
    lineHeight: "36.48px"
    letterSpacing: "0.32px"
  heading-medium:
    fontFamily: "NeueHaasGrotesk, Helvetica, Arial, sans-serif"
    fontSize: "20px"
    fontWeight: "400"
    lineHeight: "28px"
    letterSpacing: "0.3px"
  label-uppercase:
    fontFamily: "NeueHaasGrotesk, Helvetica, Arial, sans-serif"
    fontSize: "18px"
    fontWeight: "500"
    lineHeight: "22.56px"
    letterSpacing: "0.72px"
  body-base:
    fontFamily: "NeueHaasGrotesk, Helvetica, Arial, sans-serif"
    fontSize: "16px"
    fontWeight: "400"
    lineHeight: "24px"
  ui-body:
    fontFamily: "Inter-Variable, Helvetica, Arial, sans-serif"
    fontSize: "14px"
    fontWeight: "420"
    lineHeight: "20px"
  ui-small:
    fontFamily: "Inter-Variable, Helvetica, Arial, sans-serif"
    fontSize: "12px"
    fontWeight: "420"
    lineHeight: "14.4px"
    letterSpacing: "0.72px"
  code:
    fontFamily: "ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace"
    fontSize: "16px"
    fontWeight: "400"
    lineHeight: "24px"
rounded:
  radius-sm: "4px"
  radius-md: "5px"
  radius-lg: "8px"
  radius-xl: "12px"
  radius-2xl: "16px"
  radius-card: "30px"
  radius-pill: "9999px"
  radius-oval: "340px"
spacing:
  space-1: "4px"
  space-2: "8px"
  space-3: "12px"
  space-4: "16px"
  space-5: "24px"
  space-6: "32px"
  space-7: "40px"
  space-8: "64px"
  space-9: "80px"
  space-10: "90px"
  space-11: "128px"
  space-xl: "40px"
  space-2xl: "64px"
---

## Overview

Shopify's marketing homepage uses a dramatic full-bleed video hero with a near-black (#02090a) background that contrasts sharply with the white navigation bar above. The primary brand accent is a vivid mint green (#36f4a4) used sparingly for highlights and interactive states. Typography is split between NeueHaasGrotesk for display/editorial headings and Inter-Variable for UI body copy. CTAs use fully-rounded pill shapes (border-radius: 9999px). The overall system is confident, high-contrast, and aspirational. built to convert visitors into merchants.

**Signature traits:**
- Dual typeface system: Pairs NeueHaasGrotesk, Helvetica, Arial, sans-serif and Inter-Variable, Helvetica, Arial, sans-serif across the type hierarchy.
- Soft, rounded geometry: Generous corner rounding up to 9999px.

## Colors

The palette uses 8 validated color tokens across 1 theme profile. Semantic roles stay attached to observed usage so generation agents can choose accents without inventing new color meaning.

**Semantic naming:**
- **surface-background** maps to `surface-dark`: Role "background" is grounded by usage context "Hero section background, dark surface behind video overlay".
- **action-text** maps to `white`: Role "text" is grounded by usage context "Primary text on dark backgrounds, nav links, hero headline, CTA button text".
- **content-text** maps to `ink-black`: Role "text" is grounded by usage context "Body text on light sections, footer text".
- **border-primary** maps to `border-gray`: Role "primary" is grounded by usage context "Dividers, borders on nav and card elements, default ring color".

### Primary Brand
- **Border Gray** (#e5e7eb): Dividers, borders on nav and card elements, default ring color. Role: primary. {authored: rgb(229, 231, 235), space: rgb}

### Text Scale
- **Ink Black** (#000000): Body text on light sections, footer text. Role: text. {authored: rgb(0, 0, 0), space: rgb}
- **Mint Green** (#36f4a4): Brand accent, interactive highlights, logo mark accent color. Role: text. {authored: rgb(54, 244, 164), space: rgb}
- **Muted Gray** (#a1a1aa): Secondary/subdued text, footer links, disabled states. Role: text. {authored: rgb(161, 161, 170), space: rgb}
- **White** (#ffffff): Primary text on dark backgrounds, nav links, hero headline, CTA button text. Role: text. {authored: rgb(255, 255, 255), space: rgb, alpha: 0.1}

### Interactive
- **Subtle Border** (#e4e4e7): Subtle dividers and borders in footer zone. Role: border. {authored: rgb(228, 228, 231), space: rgb}

### Surface & Shadows
- **Surface Dark** (#02090a): Hero section background, dark surface behind video overlay. Role: background. {authored: rgb(2, 9, 10), space: rgb}
- **Surface Light** (#f4f4f5): Light section backgrounds, card surfaces. Role: background. {authored: rgb(244, 244, 245), space: rgb}

## Typography

Typography uses NeueHaasGrotesk, Helvetica, Arial, sans-serif, Inter-Variable, Helvetica, Arial, sans-serif, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace across extracted hierarchy roles. Keep hierarchy mapped to these token rows before adding decorative type styles.

Mixes NeueHaasGrotesk, Helvetica, Arial, sans-serif and Inter-Variable, Helvetica, Arial, sans-serif and ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace for visual contrast. Weight range spans regular, medium. Sizes range from 12px to 96px.

### Type Scale Evidence
| Role | Font | Size | Weight | Line Height | Letter Spacing | Stack / Features | Notes |
|------|------|------|--------|-------------|----------------|------------------|-------|
| Hero headline — largest display text on the page | NeueHaasGrotesk, Helvetica, Arial, sans-serif | 96px | 400 | 96px | normal | NeueHaasGrotesk, Helvetica, Arial, sans-serif | Extracted token |
| Section-level display headings | NeueHaasGrotesk, Helvetica, Arial, sans-serif | 55px | 330 | 64px | normal | NeueHaasGrotesk, Helvetica, Arial, sans-serif | Extracted token |
| Mid-page section headings | NeueHaasGrotesk, Helvetica, Arial, sans-serif | 48px | 330 | 54.72px | normal | NeueHaasGrotesk, Helvetica, Arial, sans-serif | Extracted token |
| Card and sub-section headings | NeueHaasGrotesk, Helvetica, Arial, sans-serif | 32px | 360 | 36.48px | 0.32px | NeueHaasGrotesk, Helvetica, Arial, sans-serif | Extracted token |
| Feature headings and callout titles | NeueHaasGrotesk, Helvetica, Arial, sans-serif | 20px | 400 | 28px | 0.3px | NeueHaasGrotesk, Helvetica, Arial, sans-serif | Extracted token |
| Section labels, nav items, button text | NeueHaasGrotesk, Helvetica, Arial, sans-serif | 18px | 500 | 22.56px | 0.72px | NeueHaasGrotesk, Helvetica, Arial, sans-serif | Extracted token |
| Primary body copy across marketing sections | NeueHaasGrotesk, Helvetica, Arial, sans-serif | 16px | 400 | 24px | normal | NeueHaasGrotesk, Helvetica, Arial, sans-serif | Extracted token |
| UI labels, nav sub-items, form fields | Inter-Variable, Helvetica, Arial, sans-serif | 14px | 420 | 20px | normal | Inter-Variable, Helvetica, Arial, sans-serif | Extracted token |
| Micro labels, badges, captions | Inter-Variable, Helvetica, Arial, sans-serif | 12px | 420 | 14.4px | 0.72px | Inter-Variable, Helvetica, Arial, sans-serif | Extracted token |
| Code snippets and technical content | ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace | 16px | 400 | 24px | normal | ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace | Extracted token |

## Layout

Layout rhythm is inferred from spacing tokens and responsive breakpoint evidence.

This system uses a 4px base grid with scale values 4, 8, 12, 16, 24, 32, 40, 64, 80, 90, 128.

### Spacing System
| Token | Value | Px | Notes |
|------|-------|----|-------|
| space-1 | 4px | 4 | Extracted spacing token |
| space-2 | 8px | 8 | Extracted spacing token |
| space-3 | 12px | 12 | Extracted spacing token |
| space-4 | 16px | 16 | Extracted spacing token |
| space-5 | 24px | 24 | Extracted spacing token |
| space-6 | 32px | 32 | Extracted spacing token |
| space-7 | 40px | 40 | Extracted spacing token |
| space-8 | 64px | 64 | Extracted spacing token |
| space-9 | 80px | 80 | Extracted spacing token |
| space-10 | 90px | 90 | Extracted spacing token |
| space-11 | 128px | 128 | Extracted spacing token |

## Elevation & Depth

Keep depth flat unless validated shadow or interaction evidence appears in the extraction payload. Do not invent shadows beyond this evidence boundary.

### Shadow Evidence
| Shadow Token | Layers | Details |
|--------------|--------|---------|
| n/a | 0 | No validated shadow payload |

### Interaction Signals
| Theme | Signal | Evidence |
|-------|--------|----------|
| Light | outline-color | rgb(255, 255, 255) ; rgb(161, 161, 170) ; rgb(0, 0, 0) |
| Light | outline-width | 3px ; 2px |
| Light | outline-offset | 0px ; 2px |
| Light | transform | matrix(1, 0, 0, 1, 0, 0) ; matrix(1, 0, 0, 1, -1571, 0) ; matrix3d(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, -0.02, 0, 0, -20, 1.4) |

## Shapes

Shape language maps directly to rounded tokens. Keep component corners consistent with the role mapping below before introducing bespoke geometry.

### Radius Roles
| Token | Value | Px | Role Mapping |
|------|-------|----|--------------|
| radius-sm | 4px | 4 | Subtle corner |
| radius-md | 5px | 5 | Subtle corner |
| radius-lg | 8px | 8 | Control corner |
| radius-xl | 12px | 12 | Control corner |
| radius-2xl | 16px | 16 | Card corner |
| radius-card | 30px | 30 | Large surface corner |
| radius-oval | 340px | 340 | Large surface corner |
| radius-pill | 9999px | 9999 | Large surface corner |

### Geometry Evidence
| Radius Token | Shape | Units |
|--------------|-------|-------|
| radius-sm | 4px | px |
| radius-md | 5px | px |
| radius-lg | 8px | px |
| radius-xl | 12px | px |
| radius-2xl | 16px | px |
| radius-card | 30px | px |
| radius-pill | 9999px | px |
| radius-oval | 340px | px |

## Components

(none detected)

## Do's and Don'ts

Guardrails protect Dual typeface system, Soft, rounded geometry without adding unsupported visual claims.

| Do | Don't |
|----|---------|
| Do maintain consistent spacing using the base grid | Don't make unsupported claims about absent visual features |
| Do maintain WCAG AA contrast ratios (4.5:1 for normal text) | Don't mix rounded and sharp corners in the same view |
| Do use the primary color only for the single most important action per screen |  |
| Do verify evidence before writing new design-system guidance |  |

## Responsive Evidence

### Breakpoints

No distinct responsive breakpoints were extracted.

## Agent Prompt Guide

### Example Component Prompts
- Create button component using validated primary color role and spacing tokens.
- Create card component with mapped radius role and evidence-backed elevation.
- Create form input component using inferred typography hierarchy and border roles.

### Iteration Guide
1. Start with extracted palette and typography roles only.
2. Map spacing and radius directly from token tables before visual polish.
3. Apply component patterns one section at a time and compare against source intent.
4. Keep elevation claims tied to explicit evidence in output.
5. Iterate with smallest diffs and re-check section hierarchy after each change.
Design Extractor

Turn any website into a structured design spec that AI coding agents can use to build pixel-perfect UI.

© 2026 Design Extractor. All rights reserved.