---
name: kakao-design-reference
provider: DesignSkill (https://designskill.dev)
reference: kakaocorp.com
source_url: https://www.kakaocorp.com/page/
tool: designskill-extract/3.1.0
extracted_at: 2026-07-26T16:46:55.896Z
mode: full-render
classification: reference_only
---

# Kakao — Design Reference (measured)

Measured design tokens extracted from `https://www.kakaocorp.com/page/` by designskill-extract/3.1.0.
Every value below was observed in the live page (×N = observation count). Values not listed were **not observed** — do not invent them.
This document is `reference_only`: an analysis of a third-party site, not a license to its brand assets.

## Overview

- Extraction mode: **full-render** (viewports 390/768/1440px × light/dark), 1 page(s), 499 observation records.
- Primary action color observed as `#fae100` (basis: cross-validated, confidence 0.95).
- Dominant font family: **KakaoBig** (×416; secondary KakaoSmall ×215).
- Type scale observed at 8 sizes from 12px to 30px.
- Corner radius values in use: 24px, 12px, 20px, 16px….
- Not observed in this extraction: cards.

## Colors

### Role Tokens

Semantic roles inferred from observed usage. `basis` tells how the role was established (declared CSS var > cross-validated > inferred).

| Token | Value | Basis | Confidence | Observed |
|---|---|---|---|---|
| `{color.primary}` | `#fae100` | cross-validated | 0.95 | ×14 |
| `{color.background}` | `#ffffff` | cross-validated | 0.93 | ×286 |
| `{color.ink}` | `#000000` | cross-validated | 0.92 | ×137 |
| `{color.muted}` | `#888888` | inferred | 0.7 | ×162 |
| `{color.surface}` | `#e5e5e5` | inferred | 0.7 | ×32 |
| `{color.accent}` | `#ff0919` | inferred | 0.58 | ×5 |

### Observed Palette

Full measured palette ordered by usage share. `Used in` lists the CSS properties the color appeared on.

| Hex | Share | Used in | Observed |
|---|---|---|---|
| `#ffffff` | 28.3% | color, background-color, border-color, fill | ×286 (cross-validated, 0.93) |
| `#888888` | 16.0% | color, border-color, background-color, stroke | ×162 (cross-validated, 0.92) |
| `#000000` | 13.6% | background-color, color, border-color, box-shadow | ×137 (cross-validated, 0.92) |
| `#111111` | 10.5% | background-color, color | ×106 (cross-validated, 0.92) |
| `#a1a1a1` | 8.5% | color, border-color, --btn-autoplay-progress-color, custom-property, stroke | ×86 (cross-validated, 0.91) |
| `#333333` | 6.9% | background-color, color, --carousel-btn-bg | ×70 (cross-validated, 0.91) |
| `#111111` | 4.2% | background-color | ×42 (observed, 0.75) |
| `#444444` | 3.2% | color | ×32 (cross-validated, 0.9) |
| `#666666` | 1.4% | color, background-color, border-color, --carousel-btn-icon | ×14 (inferred, 0.59) |
| `#e5e5e5` | 3.2% | border-color, background-color, stroke, --carousel-btn-icon, fill | ×32 (cross-validated, 0.9) |
| `#ffcd00` | 0.7% | background-color | ×7 (inferred, 0.58) |
| `#fae100` | 1.4% | background-color | ×14 (cross-validated, 0.89) |
| `#f3f3f3` | 0.7% | background-color, color, --carousel-btn-bg | ×7 (inferred, 0.58) |
| `#ff0919` | 0.5% | border-color, color | ×5 (inferred, 0.58) |
| `#2439df` | 0.2% | color | ×2 (inferred, 0.57) |
| `#28329b` | 0.2% | background-color | ×2 (inferred, 0.57) |

## Typography

### Font Families

| Family | Observed |
|---|---|
| `KakaoBig` | ×416 |
| `KakaoSmall` | ×215 |
| `KakaoDigitLatin` | ×4 |
| `kakaobi` | ×1 |

Use **KakaoBig** as the default family — it accounts for the overwhelming majority of observed text nodes.

### Type Scale

| Token | Size | Observed |
|---|---|---|
| `{type.display}` | 30px | ×69 |
| `{type.h1}` | 26px | ×68 |
| `{type.h2}` | 20px | ×52 |
| `{type.h3}` | 18px | ×60 |
| `{type.body-lg}` | 16px | ×245 |
| `{type.body}` | 14px | ×173 |
| `{type.body-sm}` | 13px | ×51 |
| `{type.caption}` | 12px | ×177 |

The most frequently observed size is **16px** (×245) — treat it as the default body size.

## Spacing

| Value | Observed |
|---|---|
| `8px` | ×195 |
| `20px` | ×160 |
| `12px` | ×142 |
| `40px` | ×104 |
| `6px` | ×96 |
| `16px` | ×95 |
| `5px` | ×92 |
| `10px` | ×89 |
| `60px` | ×88 |
| `24px` | ×87 |
| `15px` | ×68 |
| `4px` | ×60 |

## Shape (Border Radius)

| Value | Observed |
|---|---|
| `24px` | ×27 |
| `12px` | ×18 |
| `20px` | ×18 |
| `16px` | ×17 |
| `6px` | ×13 |
| `8px` | ×11 |
| `4px` | ×10 |
| `14px` | ×8 |

## Elevation

| Shadow | Observed |
|---|---|
| `#000000` | ×8 |
| `4px 12px 40px 6px rgba(0,0,0,.09)` | ×2 |
| `14px 14px 40px rgba(0,0,0,.2)` | ×2 |
| `4px 12px 30px 6px rgba(0,0,0,.09)` | ×1 |
| `0 2px 10px rgba(0,0,0,.1)` | ×1 |
| `0 4px 8px 0 rgba(0,0,0,.15)` | ×1 |

## Motion

| Duration | Observed |
|---|---|
| `0.2s` | ×36 |
| `0.4s` | ×36 |
| `.4s` | ×24 |
| `.3s` | ×14 |
| `0.35s` | ×10 |

## Components

Measured computed styles of representative components (desktop viewport).

| Component | Measured spec | Samples |
|---|---|---|
| button.primary | bg `#fae100` · text `#000000` · radius `16px` · padding `7px 13px 8px 30px` · font `13px/700` | ×1 |
| form.input | bg `#000000` · text `#ffffff` · border `0px solid rgb(255, 255, 255)` · radius `0px` · padding `0px` · height `27` | ×1 |
| badge | bg `#fae100` · text `#000000` · radius `16px` · font `13px/700` · padding `7px 13px 8px 30px` | ×1 |
| nav | bg `#ffffff` · height `72px` · position `fixed` · link `#333333` | — |

### Interaction States (observed)

| State | Property | From | To |
|---|---|---|---|
| focus | outline-color | `rgb(51, 51, 51)` | `rgb(0, 95, 204)` |
| focus | outline-width | `3px` | `1px` |

## Accessibility (WCAG Contrast)

| FG | BG | Ratio | AA | Source |
|---|---|---|---|---|
| `#888888` | `#ffffff` | 3.54 | fail | observed ×63 |
| `#111111` | `#ffffff` | 18.88 | pass | observed ×39 |
| `#a1a1a1` | `#ffffff` | 2.58 | fail | observed ×37 |
| `#ffffff` | `#ffffff` | 1 | fail | observed ×25 |
| `#000000` | `#ffffff` | 21 | pass | observed ×25 |
| `#333333` | `#ffffff` | 12.63 | pass | observed ×21 |
| `#444444` | `#ffffff` | 9.74 | pass | observed ×15 |
| `#ffffff` | `#000000` | 21 | pass | observed ×10 |
| `#ffffff` | `#333333` | 12.63 | pass | observed ×6 |
| `#000000` | `#fae100` | 15.83 | pass | observed ×3 |
| `#ffffff` | `#111111` | 18.88 | pass | observed ×3 |
| `#000000` | `#eeeeee` | 18.1 | pass | observed ×3 |
| `#000000` | `#ffffff` | 21 | pass | ink_on_background |
| `#ffffff` | `#fae100` | 1.33 | fail | white_on_primary |
| `#888888` | `#ffffff` | 3.54 | fail | muted_on_background |

5 measured pair(s) fail AA — if you reuse those pairs, adjust lightness until the ratio reaches 4.5:1.

## Usage Rules

### Do
- Use `{color.primary}` (`#fae100`) for primary actions only — that is where it was observed.
- Default text pairing: `{color.ink}` (`#000000`) on `{color.background}` (`#ffffff`).
- Set all text in `KakaoBig` (fallbacks only for glyph coverage).
- Pick corner radii from the measured set (24px, 12px, 20px, 16px) — no intermediate values were observed.
- Cite this file's token names (`{color.*}`, `{type.*}`) when generating UI so output stays traceable to observations.

### Don't
- Don't invent colors, sizes, shadows, or spacing not listed above — absence means *not observed*, and this document records observations only.
- Don't assume the missing blocks (cards) don't exist on the site — they were simply not captured in this run.
- Don't copy brand assets (logo, wordmark, imagery, copy) — `reference_only` covers measured style values, not brand identity.
- Treat `{color.accent}` with caution — confidence below 0.6.

## Provenance

- Source: https://www.kakaocorp.com/page/ (1 page(s))
- Tool: designskill-extract/3.1.0 · extracted 2026-07-26T16:46:55.896Z
- Mode: full-render — 풀렌더 모드 — 3뷰포트 × 라이트/다크 computed style + 상태 관측.
- Blocks observed: 00, 01, 02, 03, 04, 05, 06, 08, 09, 10, 11, 12 · missing: cards
- Degraded stages (extraction failure ≠ design change — exclude from diffs): state-observation
- Warning: primary 불일치: static=#ff0919 vs render=#fae100 — render 채택

---

<sub>Generated & served by [DesignSkill](https://designskill.dev)</sub>
