Flipkart Brand Design System Deep Dive
1. Brand Overview
Flipkart’s interface feels built for speed. It’s a practical, commerce-first experience with zero patience for ornamental fluff. The design gets out of the way — and that’s deliberate. When you’re India’s largest e-commerce platform, your customers don’t need cinematic layouts or marketing theatrics; they need clarity. Every pixel is doing one of two jobs: guiding the user to products fast, or reducing cognitive friction at checkout.
There’s a restrained confidence in the system. You won’t find playful gradients or animation-heavy microinteractions — the palette is flat, the typography system uses variations of Inter in a brutally functional way, and the component radii stick to tight, utilitarian values (2px, 4px). This is commerce UI design done for scale. Tens of millions of concurrent users require a design that’s lean enough for low-bandwidth scenarios yet clear enough for product discovery.
Flipkart leans on a signature blue (#2874f0) for primary actions and branding. It’s vivid without being neon, and it holds up well against both light and dark text. Neutrals are on the grayer side (#878787, #666666, #1f1f1f) — functional rather than warm. This keeps the contrast predictable but also removes any “editorial” feel you might get from warmer neutrals.
What surprised me is how little the system flirts with experimentation. Many modern e-commerce sites try some stylistic deviation — oversized headings, variable font weights for drama, glassmorphism — not here. Flipkart is almost aggressively practical. Buttons are white by default, shadows are minimal (0px 1px 4px, 0px 4px 16px in low alpha), and borders are utility-driven rather than decorative.
This design philosophy makes it incredibly easy to scale across categories. You can see it in the typography system — small increments, consistent line-height values to reduce layout shifts. You can see it in spacing — an 8px base scale with 4px subs for micro-alignment. This is engineering-friendly design, where dev handoff is as smooth as the visual flow.
2. Color System
2.1 Primary Colors
The primary brand color here is #2874f0 (RGB 40, 116, 240). Saturated but not electric. It’s a trustworthy blue, positioned somewhere between Google’s link blue and Facebook’s corporate blue, but brighter. In retail UI, blue signals stability and tech competence — especially important in a market where COD (Cash on Delivery) and trust factors are high.
Competitor note: Amazon India uses orange for primary accents — giving a warmer, urgency-driven tone. Flipkart’s blue suggests confidence, professionalism, and long-term reliability.
This works because blue is easy to pair with both black (#111112, #000) and white (#ffffff), which covers most text states. Accessibility-wise, white-on-blue and black-on-blue will pass WCAG AA for large and normal text without fuss.
2.2 Complete Palette
| Color Name | Hex | Role | Usage |
|---|---|---|---|
| Neutral Gray | #878787 | Secondary text | Subtitles, metadata, less-important links |
| Primary Blue | #2874f0 | Brand / CTAs | Buttons, nav highlights, links |
| Pure White | #ffffff | Base background | Page BG, surfaced containers |
| Near Black | #111112 | Primary text | Headlines, strong labels |
| Medium Gray | #666666 | Tertiary text | Footers, peripheral UI labels |
| Dark Gray | #1f1f1f | BG or text alt | Certain dark sections, active states |
2.3 Color Relationships
- Primary background/foreground pairing:
#2874f0+#ffffff= strong contrast for buttons and nav. - Text hierarchy:
#111112>#878787>#666666in foreground priority. - Dark mode? Not present in extracted data. No alt palette values found.
- Utility neutrals:
#1f1f1fused sparingly — likely for overlays or full-width dark sections.
Contrast notes: All key foreground colors (blacks, grays) have enough separation from #ffffff for accessibility, but #878787 on white toes the line for small text — careful with font-weight in UX-critical content.
2.4 Usage Guide
Works:
- White background + primary blue as accent
- Black/near-black for headings
- Gray neutrals for low-priority labels
Avoid:
- Extended use of
#878787in body text — can hurt readability on mobile - Combining
#666666with#1f1f1fwithout clear hierarchy — they’re close enough to muddy visual order.
3. Typography
3.1 Font Families
Flipkart uses inter_regular and inter_semi_bold throughout, with fallbacks to fallback-inter_regular / fallback-inter_semi_bold, then Arial. No Google Fonts or Adobe Fonts loading in extracted data — these may be locally hosted. This ensures performance and predictable rendering.
3.2 Type Scale
| Element | Font | Size | Weight | Line Height | Transform |
|---|---|---|---|---|---|
| Link | inter_regular | 18px (1.13rem) | 400 | null | none |
| Link | inter_regular | 16px (1.00rem) | 400 | 1.50 | none |
| Heading-1 | inter_regular | 16px | 400 | 1.50 | none |
| Heading-1 | inter_semi_bold | 16px | 400 | 1.50 | none |
| Link | inter_semi_bold | 16px | 400 | 1.50 | none |
| Heading-1 | inter_regular | 16px | 700 | 1.00 | none |
| Link | inter_regular | 14px | 400 | 1.43 | none |
| Caption | inter_semi_bold | 14px | 400 | null | none |
| Caption | inter_regular | 14px | 400 | 1.50 | uppercase |
| Link | inter_regular | 14px | 400 | 1.50 | uppercase |
| Caption | inter_regular | 14px | 700 | 1.14 | none |
| Button | inter_regular | 13.3333px | 400 | null | none |
| Caption | inter_regular | 13.3333px | 400 | null | none |
| Link | inter_regular | 12px | 400 | null | none |
| Link | inter_semi_bold | 12px | 400 | 1.50 | none |
| Caption | inter_regular | 12px | 400 | 1.50 | none |
3.3 Hierarchy
Small increments dominate here. The largest extracted size is 18px for certain links, otherwise most UI type sits between 12px and 16px. Line-heights balance the small sizes — many 1.50 ratios to make touch targets and scanability safer, with tighter 1.14 and 1.00 for denser headings.
The lack of oversized display text keeps layouts compact and makes cross-device scaling straightforward. Visually it’s “flat hierarchy” — headings don’t scream for attention, product imagery provides that instead.
4. Spacing & Layout
4.1 Spacing Scale
Base system appears to be an 8px scale, with micro-adjustments at 4px and odd breakpoints (5px, 10px, 14px). Extracted values:
| px | rem | Count | Notes |
|---|---|---|---|
| 4px | 0.25rem | 29 | Micro gaps, icon spacing |
| 5px | 0.31rem | 2 | Rare — maybe image borders |
| 8px | 0.50rem | 52 | Most common gap/padding unit |
| 10px | 0.63rem | 10 | Buttons and input paddings |
| 12px | 0.75rem | 56 | Card content padding |
| 14px | 0.88rem | 3 | Line spacing or compact section gaps |
| 16px | 1.00rem | 33 | Section-level padding |
| 25px | 1.56rem | 5 | Large component gaps |
| 30px | 1.88rem | 2 | Hero padding |
| 40px | 2.50rem | 2 | Big vertical spacing |
| 84px | 5.25rem | 2 | Very large section offset |
| 100.688px | 6.29rem | 2 | Fixed component height |
| 100.703px | 6.29rem | 2 | Duplicate of above with variation |
4.2 Layout & Breakpoints
Breakpoints indicate a mobile-first approach:
- 0px — base
- 767px — mobile max
- 768px — tablet
- 1191px — desktop threshold
- 1192px — large desktop
The closeness of 1191/1192 suggests pixel-perfect alignment constraints — likely due to grid container widths or double-checking media query boundaries.
5. Visual Elements
Border Radius System
Values are utilitarian: 2px and 4px dominate.
| Value | Count | Elements |
|---|---|---|
| 0px 0px 8px 8px | 1 | ul |
| 0px 4px 4px 0px | 1 | Previous Slide |
| 2px | 16 | Search bar, anchors |
| 4px 0px 0px 4px | 2 | Next Slide, button |
| 4px | 16 | Anchors, divs |
| 8px | 3 | forms, ul |
| 42px | 1 | div |
| 50% | 3 | div |
Pill shapes are rare — only 50% for perfectly round avatars/icons.
Shadow System
Two shadow styles extracted:
rgba(0, 0, 0, 0.12) 0px 1px 4px 0px— subtle, used likely on small containers.rgba(0, 0, 0, 0.2) 0px 4px 16px 0px— deeper, larger cards/modals.
Borders
Mostly thin, single-pixel lines for structure, with color values in light grays (#ebebeb, #f0f0f0, #f5f5f5). Borderless defaults on many interactive elements — likely for cleaner UI, with shadows carrying the separation.
6. Components
6.1 Buttons
Only one detailed variant extracted (_1JY_i0 class):
Default:
- Background:
#ffffff - Text color:
#000000 - Padding:
0px(likely handled by child span) - Border radius:
0px 4px 4px 0px - Border:
none - Box shadow:
rgba(0, 0, 0, 0.12) 0px 1px 4px - Font size:
13.3333px, weight: 400
Hover, active, focus: Not explicitly in data.
6.2 Links
Five variants with different colors:
#333333default — no hover color captured#000000default — hover:#ffffff#ffffffdefault — no hover#565656default — no hover#2874f0default — no hover
None underline by default; changes in hover are color shifts only.
6.3 Forms & Inputs
Text inputs default to transparent backgrounds, no borders, and zero padding:
- Default: Border
0px none, radius0px - Focus: No outline, no shadow. This is visually minimal, relying on external wrappers for styling.
6.4 Cards
No dedicated “card” component extracted, but shadows (0px 4px 16px) suggest usage in surfacing product blocks. Spacing likely from the 12px/16px values.
7. Design Tokens
:root {
/* Colors */
--color-neutral-gray: #878787;
--color-primary-blue: #2874f0;
--color-white: #ffffff;
--color-near-black: #111112;
--color-medium-gray: #666666;
--color-dark-gray: #1f1f1f;
/* Typography */
--font-inter-regular: "inter_regular", Arial;
--font-inter-semibold: "inter_semi_bold", Arial;
--font-size-lg: 18px;
--font-size-md: 16px;
--font-size-sm: 14px;
--font-size-xs: 13.3333px;
--font-size-xxs: 12px;
--line-height-tight: 1.00;
--line-height-regular: 1.43;
--line-height-loose: 1.50;
--line-height-condensed: 1.14;
/* Spacing */
--space-1: 4px;
--space-1-5: 5px;
--space-2: 8px;
--space-2-5: 10px;
--space-3: 12px;
--space-3-5: 14px;
--space-4: 16px;
--space-6-25: 25px;
--space-7-5: 30px;
--space-10: 40px;
--space-21: 84px;
--space-25-17: 100.688px;
--space-25-17b: 100.703px;
/* Radius */
--radius-xs: 2px;
--radius-sm: 4px;
--radius-md: 8px;
--radius-lg: 42px;
--radius-full: 50%;
/* Shadows */
--shadow-sm: rgba(0, 0, 0, 0.12) 0px 1px 4px;
--shadow-lg: rgba(0, 0, 0, 0.2) 0px 4px 16px;
}8. AI Coding Assistant Prompt
# Flipkart Design System Specification
You are a Flipkart design expert. Build UIs matching their visual language exactly.
## Brand Context
Flipkart's design is commerce-first, functional, and built for scale. It prioritizes clarity over decoration. Component styling is minimal, type sizes are compact, and color hierarchy is precise.
## Color Palette
- Neutral Gray: #878787 — Secondary text, metadata
- Primary Blue: #2874f0 — CTAs, buttons, links
- Pure White: #ffffff — Background surfaces
- Near Black: #111112 — Headings, prominent text
- Medium Gray: #666666 — Tertiary text, footer content
- Dark Gray: #1f1f1f — Active states, dark sections
## Typography
Fonts:
- Inter Regular — "inter_regular", fallback-inter_regular, Arial
- Inter SemiBold — "inter_semi_bold", fallback-inter_semi_bold, Arial
Sizes:
| Role | Size | Weight | Line Height | Usage |
|----------|----------|--------|-------------|-------|
| Link LG | 18px | 400 | n/a | Main nav links |
| Body MD | 16px | 400 | 1.50 | Body text |
| Heading1 Regular | 16px | 400 | 1.50 | Section titles |
| Heading1 Bold | 16px | 700 | 1.00 | Strong titles |
| Link SM | 14px | 400 | 1.43/1.50 | Sub-nav links |
| Caption | 14px | 400/700| various | Labels |
| Button | 13.3333px| 400 | n/a | Button text |
| Micro | 12px | 400 | 1.50/n/a | Metadata |
## Spacing & Grid
Base: 8px
Scale: 4px, 5px, 8px, 10px, 12px, 14px, 16px, 25px, 30px, 40px, 84px, 100.688px, 100.703px
Use for: Microgaps, paddings for inputs/buttons, card content spacing, section margins.
## Border Radius
- none: 0 — table edges
- xs: 2px — small inputs, tight buttons
- sm: 4px — buttons, minor containers
- md: 8px — cards, list containers
- lg: 42px — special blocks
- full: 50% — avatars, circular icons
## Shadows & Depth
- sm: rgba(0, 0, 0, 0.12) 0px 1px 4px — small container lift
- lg: rgba(0, 0, 0, 0.2) 0px 4px 16px — major cards/modals
## Component Specifications
### Primary Button
```css
.btn-primary {
background: #ffffff;
color: #000000;
padding: 0px;
border-radius: 0px 4px 4px 0px;
border: none;
box-shadow: rgba(0, 0, 0, 0.12) 0px 1px 4px;
font-weight: 400;
font-size: 13.3333px;
transition: background 150ms ease;
}
.btn-primary:hover { /* add specific hover background */ }
.btn-primary:focus { outline: none; }
.btn-primary:disabled { opacity: 0.5; cursor: not-allowed; }
```
### Navigation Links
```css
.nav-link {
color: #2874f0;
text-decoration: none;
font-weight: 400;
}
.nav-link:hover { /* could shift to a darker/lighter tone */ }
```
### Input Fields
```css
.input {
background: transparent;
border: none;
border-radius: 0px;
padding: 0px;
outline: none;
}
.input:focus { outline: none; box-shadow: none; }
```
## Layout & Responsive Rules
- Mobile: 0–767px
- Tablet: 768–1191px
- Desktop: ≥1192px
- Use max widths according to breakpoints
- Maintain section padding in multiples of 8px
## Interaction Rules
- Transition timing: 150ms ease for state changes
- Hover states rely on color shifts, not scale
- Focus indicators minimal or absent — managed by container
## DO List
- Use only colors from palette
- Keep spacing to 8px multiples (allow 4px for micro-alignment)
- Apply Inter fonts with exact sizing
- Use shadows sparingly
- Maintain tight radii (2px–4px) across UI
## DON'T List
- Don’t add custom colors
- Don’t overuse `#878787` for body text
- Don’t mix large and small radii in same component
- Don’t add heavy shadows
## Code Examples
Primary Button:
```css
.btn-primary {
background: #2874f0;
color: #ffffff;
padding: 8px 12px;
border-radius: 4px;
border: none;
font-size: 14px;
}
```
Card:
```css
.card {
background: #ffffff;
border-radius: 8px;
padding: 12px;
box-shadow: rgba(0,0,0,0.12) 0px 1px 4px;
}
```
Form Input:
```css
.input {
font-size: 14px;
padding: 8px;
border: 1px solid #ebebeb;
border-radius: 4px;
}
```9. Summary
TL;DR — Flipkart’s system is engineered for clarity and speed. Minimal color accents, compact type, and tight spacing create a UI that scales under heavy load and varied devices. It’s commerce UI stripped of unnecessary ornament, driven by a stable blue and disciplined grid.
Brand Keywords — commerce-functional, trust-blue, grid-disciplined, minimal-interactions, high-scale-ui