BrandToPrompt

Walmart Design System: Functional Retail UI at Scale

Visit Site

Explore Walmart's design system - colors, typography, and spacing for mass retail. Build consistent, accessible UIs with Walmart's visual language.

6 min read1,079 words

Brand Identity

Color Palette

Primary
Secondary

Typography

Primary Font
EverydaySans
Secondary Font
Helvetica Neue

Design Style

Style
functional and approachable with soft corners and minimal shadows
Visual Density
compact grid-based with consistent 8px spacing
Border Style
soft corners with 8px default, pill shapes for inputs

Full Analysis

Walmart Brand Design System Deep Dive


1. Brand Overview

Walmart’s design system is exactly what you’d expect from the world’s largest retailer: functional, accessible, and optimized for scale. This isn’t a boutique lifestyle brand chasing aesthetic perfection. It’s a mass-market machine that needs to work for millions of users, across demographics, devices, and contexts — from bargain hunters on mobile to bulk buyers on desktop.

The vibe? Efficient, approachable, slightly utilitarian. They’re not trying to wow you with fancy animations or luxury gradients. Instead, they focus on clarity, legibility, and fast recognition. The design language is built around strong primary blues, clean white surfaces, and a supporting cast of functional colors for states and feedback.

The “EverydaySans” typeface is a brand-specific move — it’s a friendly sans-serif with clean curves, paired with Helvetica Neue/Helvetica/Arial as fallbacks. It feels familiar yet proprietary, reinforcing Walmart’s identity without alienating anyone.

The color system is huge. There’s the well-known Walmart blue (#0071dc) for primary actions, a softer surface blue (#e9f1fe), and a “spark” yellow for accents. Beyond that, there’s a deep range of functional colors: reds for error states, greens for success, and teals/cyans for informational elements. This is a system designed to handle every UI case, from festive holiday banners to urgent stock alerts.

Corners are generally soft — 8px is the workhorse radius — but they’re not afraid to go full pill (9999px) for inputs and round buttons. Shadows are used sparingly, often replaced by subtle inset borders.

This is a design system for a retail platform at extreme scale. It prioritizes recognizability, accessibility, and speed over ornamental flourishes. And it works — you know you’re in Walmart’s world within seconds, even if you strip away the logo.


2. Color System

2.1 Primary Colors

The main brand color is #0071dc (Primary Base). It’s a saturated, confident blue. This color does heavy lifting: CTAs, links, active states in navigation, and primary buttons. Blue in retail communicates trust and reliability — safe choices for a brand that needs to appeal to everyone.

The secondary semantic color is rgba(0, 0, 0, 0) — essentially transparent — used for layering and interaction states where no visible fill is needed.

Compared to competitors, Walmart’s primary blue is slightly lighter than Best Buy’s navy, and more approachable than Amazon’s black-heavy palette. It’s friendly without being playful.

2.2 Complete Palette

Here’s the full color table extracted from the site:

Color NameHexRoleUsage
Semantic SecondarytransparentSecondaryOverlay, state background
Semantic Primary#e9f1feSurface brandBackground for branded sections
#46474aDark grayTextBody text, subdued headings
#ffffffWhiteBackground/textCard surfaces, text on dark bg
#0000eeLink blueInteractiveStandard link color
#e9eaeaLight grayBackgroundNeutral surfaces
#2a8703GreenPositiveSuccess indicators
#2e2f32Dark grayTextBody text alt
#515357Medium grayTextSecondary text
#001e60NavyInteractiveLink hover, active nav
#005fccBlueHover/focusAction states
#0160ccBlueHover/focusAction states
#004f9aPrimary highBrandStronger accent
#0071dcPrimary baseBrandMain CTA color
#de1c24Negative baseErrorError states
#ffc220Spark 100AccentHighlight elements
#79cdf6Magic stopAccentDecorative text
#909196Progress fillStateProgress bars
#1d5f02Text positive subtleSuccessText on positive bg
#fa6400OrangeAccentPromotions
#ffce4dSpark 80AccentHighlights
#fff200YellowAccentPromotions
#3f931cGreen 90SuccessPositive states
#002d58Primary maxBrandDeep blue
#80b8eePrimary lowBrandLight blue
#ef8e92Negative lowErrorWarning/error secondary
#fce8e9Negative minError bgError surfaces
#9b1419Negative highErrorAlerts
............

(Note: The palette has hundreds of tokens — for brevity, I’ve listed a representative set. The full list exists in the CSS variables.)

2.3 Color Relationships

Contrast is generally solid. #0071dc on white gives excellent WCAG contrast for interactive elements. The “spark” yellows are used sparingly because yellow on white fails contrast — they compensate with larger font sizes or paired icons.

Dark mode isn’t present here — the palette is tuned entirely for light surfaces. The deep blues and dark grays are for text and active states, not backgrounds.

2.4 Usage Guide

What works:

  • Primary blue + white = clean, branded, high-contrast.
  • Spark yellow as accent on blue backgrounds — feels energetic.
  • Gray text on white for subdued hierarchies.

Avoid:

  • Yellow on white for small text — fails accessibility.
  • Using multiple blues together without hierarchy — can confuse primary vs link states.
  • Overusing dark gray backgrounds — Walmart’s palette isn’t tuned for heavy dark mode.

3. Typography

3.1 Font Families

Main font: EverydaySans
Fallbacks: Helvetica Neue, Helvetica, Arial
No Google Fonts or Adobe Fonts — this is a custom corporate font.

3.2 Type Scale

ElementFontSizeWeightLine Height
Heading-1EverydaySans64px7001.00
Heading-1EverydaySans32px700
Heading-1EverydaySans28px7001.05
Heading-1EverydaySans24px7001.05
Heading-1EverydaySans20px7001.25
Heading-1EverydaySans18.72px700
Heading-1EverydaySans18px7001.25
Heading-1EverydaySans16px400
LinkEverydaySans16px400
ButtonEverydaySans16px4001.15
Heading-1EverydaySans16px700
ButtonEverydaySans16px7001.15
LinkEverydaySans16px700
CaptionEverydaySans14px4001.25
LinkEverydaySans14px4001.50
LinkEverydaySans14px7001.50
ButtonEverydaySans14px4001.50
ButtonEverydaySans14px7001.25
CaptionEverydaySans14px700
CaptionEverydaySans12px4002.00
CaptionEverydaySans12px7001.33

3.3 Hierarchy

They use a tight set of bold weights for headings — 700 is the default for emphasis. Body and link text is lighter (400). The scale jumps from huge 64px hero headings down to micro 12px captions. This keeps the hierarchy obvious but compact. Line heights are tuned per use — dense for headings, more generous for body and captions.


4. Spacing & Layout

4.1 Spacing Scale

Base scale: 8px grid.
Common values:

pxremCountNotes
1px0.06rem6Hairline borders
2px0.13rem12Tight gaps
4px0.25rem46Icon gaps
8px0.50rem78Core spacing unit
16px1.00rem25Button padding
24px1.50rem42Card padding
48px3.00rem9Section spacing
177.5px+Large hero gaps

Everything is a multiple of 4px/8px — very consistent.

4.2 Layout

Breakpoints: 600px, 900px, 1024px, 1200px, 1280px, 1440px, 1660px.
This allows fine tuning across device classes — mobile, small tablet, large tablet, laptop, desktop, widescreen.


5. Visual Elements

Border Radius

Values range from 0px to 9999px.

RadiusCountUsage
0px 0px 8px 8px4Cards with flat top
4px23Inputs, small buttons
8px89Cards, most UI containers
16px1Dialog
32px4Large buttons
100px2Circular buttons
1000px5Very round pills
9999px8Search bars, pill buttons
100%7Images, full circles

Shadows

Sparse use. Example: rgb(46, 47, 50) 0px 0px 0px 1px inset — more like a border than a shadow. Occasional soft drop shadows for elevation.

Borders

Mostly 1px solid lines in grays — used for dividers (hr).


6. Components

6.1 Buttons

Round navy search button
Default: bg #002e99, text white, padding 1px 6px, border-radius 100%, no border, no shadow.

White circular button
Default: bg white, text black, br-100, no border.

States: hover/active/focus not explicitly styled in data — likely handled globally.

Variants:

  • Blue (#0000ee), underline — standard link
  • White text, underline — on dark bg
  • Black text, underline — on light bg
  • Dark gray bold, no underline — nav links
  • Navy (#001e60), underline — emphasis links

6.3 Forms

Search input: bg white, text black, border none, br 9999px, padding 1px 40px 1px 24px.

No focus border in data — likely a subtle background change.

6.4 Cards

Radius 8px, white bg, occasional inset shadow. Padding from spacing scale (often 24px).


7. Design Tokens

:root {
  /* Colors */
  --color-primary-base: #0071dc;
  --color-primary-high: #004f9a;
  --color-primary-low: #80b8ee;
  --color-primary-max: #002d58;
  --color-surface-brand: #e9f1fe;
  --color-text-dark: #46474a;
  --color-text-medium: #515357;
  --color-text-light: #ffffff;
  --color-link-blue: #0000ee;
  --color-success: #2a8703;
  --color-error: #de1c24;
  --color-spark-100: #ffc220;
  --color-spark-80: #ffce4d;
  /* Typography */
  --font-family-base: "EverydaySans", "Helvetica Neue", Helvetica, Arial;
  --font-size-h1: 64px;
  --font-size-body: 16px;
  --font-size-caption: 14px;
  /* Spacing */
  --space-1: 1px;
  --space-2: 2px;
  --space-4: 4px;
  --space-8: 8px;
  --space-16: 16px;
  --space-24: 24px;
  --space-48: 48px;
  /* Radius */
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 32px;
  --radius-pill: 9999px;
  /* Shadows */
  --shadow-inset-gray: rgb(46, 47, 50) 0px 0px 0px 1px inset;
}

8. AI Coding Assistant Prompt

# Walmart Design System Specification

You are a Walmart design expert. Build UIs matching their visual language exactly.

## Brand Context
Walmart’s system is functional, approachable, and tuned for mass-market retail. It uses strong primary blues, clean whites, and a wide functional palette to support every UI state. Typography is friendly sans-serif, corners are soft, and shadows are minimal.

## Color Palette
- Primary Base: #0071dc — CTAs, primary buttons, key actions
- Primary High: #004f9a — Hover states, emphasis
- Primary Low: #80b8ee — Background accents
- Primary Max: #002d58 — Deep emphasis
- Surface Brand: #e9f1fe — Branded section backgrounds
- Text Dark: #46474a — Body text
- Text Medium: #515357 — Secondary text
- White: #ffffff — Surfaces, text on dark
- Link Blue: #0000ee — Standard links
- Success Green: #2a8703 — Success states
- Error Red: #de1c24 — Errors
- Spark Yellow 100: #ffc220 — Accent highlights
- Spark Yellow 80: #ffce4d — Accent highlights

## Typography
Font family: "EverydaySans", "Helvetica Neue", Helvetica, Arial

| Level | Size | Weight | Line Height | Use For |
|-------|------|--------|-------------|---------|
| H1 | 64px | 700 | 1.00 | Hero titles |
| H1-sm | 32px | 700 | — | Section titles |
| H2 | 28px | 700 | 1.05 | Subheadings |
| H3 | 24px | 700 | 1.05 | UI headings |
| Body-lg | 20px | 700 | 1.25 | Emphasized body |
| Body | 16px | 400 | — | Standard text |
| Button | 16px | 700 | 1.15 | Primary buttons |
| Caption | 14px | 400 | 1.25 | Labels |
| Caption-bold | 14px | 700 | — | Emphasized labels |
| Micro | 12px | 400 | 2.00 | Fine print |

## Spacing & Grid
Base: 8px grid  
Scale: 1px, 2px, 4px, 8px, 16px, 24px, 48px, 177px+  
Use multiples of 4px for all spacing.

## Border Radius
- none: 0 — flat elements
- sm: 4px — inputs, small buttons
- md: 8px — cards
- lg: 32px — large buttons
- pill: 9999px — search bars, pill buttons
- circle: 100% — avatars, round buttons

## Shadows & Depth
- Minimal shadows — prefer inset borders (`rgb(46, 47, 50) 0px 0px 0px 1px inset`)

## Component Specifications

### Primary Button
```css
.btn-primary {
  background: #0071dc;
  color: #ffffff;
  padding: 8px 16px;
  border-radius: 8px;
  font-family: "EverydaySans", "Helvetica Neue", Helvetica, Arial;
  font-weight: 700;
  font-size: 16px;
  border: none;
}
.btn-primary:hover { background: #004f9a; }
.btn-primary:focus { outline: 2px solid #80b8ee; }
.btn-primary:disabled { opacity: 0.5; cursor: not-allowed; }
```

### Secondary Button
```css
.btn-secondary {
  background: #ffffff;
  color: #0071dc;
  padding: 8px 16px;
  border-radius: 8px;
  border: 1px solid #0071dc;
}
.btn-secondary:hover { background: #e9f1fe; }
```

### Input Field
```css
.input-search {
  background: #ffffff;
  color: #000000;
  border: none;
  border-radius: 9999px;
  padding: 8px 40px 8px 24px;
}
```

### Card
```css
.card {
  background: #ffffff;
  border-radius: 8px;
  padding: 24px;
  box-shadow: rgb(46, 47, 50) 0px 0px 0px 1px inset;
}
```

## Layout & Responsive Rules
Max content width: none (fluid)  
Breakpoints: 600px, 900px, 1024px, 1200px, 1280px, 1440px, 1660px

## Interaction Rules
- 150ms ease transitions for hover/focus
- Focus indicators use light blue outlines (`#80b8ee`)
- Disabled states at 50% opacity

## DO List
- Use ONLY colors from palette
- Maintain 8px grid
- Use EverydaySans for all text
- Keep corners soft (4px–8px)
- Use pill radius for search inputs

## DON'T List
- Don't invent new colors
- Don't mix sharp and rounded corners
- Don't apply heavy shadows
- Don't use yellow on white for small text

## Code Examples

Primary Button:
```css
<button class="btn-primary">Add to cart</button>
```

Card:
```css
<div class="card">Product details...</div>
```

Input:
```css
<input class="input-search" placeholder="Search Walmart" />
```

9. Summary

TL;DR — Walmart’s design system is built for scale: strong blues, clean whites, friendly sans-serif type, soft corners, minimal shadows. Everything is on an 8px grid. It’s functional and approachable.

Brand Keywords: retail-functional, blue-trust, friendly-sans, scale-optimized, corner-soft