W3C Design Tokens
3 filesCross-tool design-token spec (DTCG/W3C). Light + dark mode siblings.
Twitch is the global live-streaming platform for gaming, esports, and creator-driven live content, owned by Amazon since 2014. The brand identity, refreshed in 2019 by Collins, is anchored on a single saturated Twitch Purple (#9146FF) and the geometric Glitch mark on a dark canvas. The brand is dark-first and unmistakably gamer-facing: the consumer product, the chat panel, and the player chrome all live on near-black surfaces with the purple reading as the high-energy interactive signature.
Use the [email protected] brand from brand-atoms.com.
Fetch https://brand-atoms.com/dist/brands/twitch/1.0.0/json/brand.json
and apply its role mappings (primary, accent, identity, etc.),
reference the fonts in references.fonts, and honor every rule where
severity is "error". Surface any deviation you choose to make.
All converter outputs for [email protected]. Served from
/dist/brands/twitch/1.0.0/.
Cross-tool design-token spec (DTCG/W3C). Light + dark mode siblings.
Plain JSON mirror of the resolved brand — palette, fonts, roles, rules.
CSS custom properties on :root with prefers-color-scheme dark.
SCSS variables + Sass maps for swatches, roles, and fonts.
Tailwind v3 theme.extend.colors + fontFamily.
Figma Tokens plugin JSON (Tokens Studio compatible).
Swift enums for SwiftUI / UIKit color + font tokens.
Kotlin objects for Jetpack Compose color + typography tokens.
Human-readable brand guide. Same source as the on-page Brand Guide.
Inline rendering of the Markdown brand guide. Same source as the
markdown/brand-guide.md download.
Twitch is the global live-streaming platform for gaming, esports, and creator-driven live content, owned by Amazon since 2014. The brand identity, refreshed in 2019 by Collins, is anchored on a single saturated Twitch Purple (#9146FF) and the geometric Glitch mark on a dark canvas. The brand is dark-first and unmistakably gamer-facing: the consumer product, the chat panel, and the player chrome all live on near-black surfaces with the purple reading as the high-energy interactive signature.
Tags: streaming, gaming, twitch, amazon, dark-first, live, creator
Twitch · [email protected] · Proprietary — All Rights Reserved
Twitch (an Amazon company) corporate palette. Twitch's identity is anchored on a single saturated purple — Twitch Purple (#9146FF) — paired with a dark canvas. The brand is dark-first: the consumer product, marketing surfaces, and the Glitch mark all live on near-black surfaces with the purple reading as the high-energy signature. The 2019 brand refresh by Collins simplified the identity to one purple, one mark, and a deliberately gamer-facing voice that distinguishes Twitch from streaming-video conventions.
| Role | Font | License | Classification |
|---|---|---|---|
heading |
Inter ([email protected]) |
OFL-1.1 | sans-serif |
body |
Inter ([email protected]) |
OFL-1.1 | sans-serif |
mono |
JetBrainsMono Nerd Font ([email protected]) |
OFL-1.1 | monospace |
| ID | Name | Value |
|---|---|---|
twitch-purple |
Twitch Purple | #9146FF |
twitch-purple-hover |
Twitch Purple Hover | #772CE8 |
twitch-purple-light |
Twitch Purple Light | #BF94FF |
twitch-black |
Twitch Black | #0E0E10 |
twitch-near-black |
Twitch Near-Black | #18181B |
twitch-charcoal |
Twitch Charcoal | #1F1F23 |
twitch-white |
Twitch White | #FFFFFF |
twitch-off-white |
Twitch Off-White | #EFEFF1 |
twitch-graphite |
Twitch Graphite | #53535F |
twitch-gray-light |
Twitch Gray Light | #ADADB8 |
| Role | Swatch | Hex |
|---|---|---|
background |
twitch-off-white |
#EFEFF1 |
surface |
twitch-white |
#FFFFFF |
surface-elevated |
twitch-white |
#FFFFFF |
text-primary |
twitch-black |
#0E0E10 |
text-secondary |
twitch-graphite |
#53535F |
text-tertiary |
twitch-gray-light |
#ADADB8 |
primary |
twitch-purple |
#9146FF |
primary-hover |
twitch-purple-hover |
#772CE8 |
accent |
twitch-purple |
#9146FF |
accent-hover |
twitch-purple-hover |
#772CE8 |
warning |
twitch-purple-light |
#BF94FF |
warning-hover |
twitch-purple |
#9146FF |
error |
twitch-purple-hover |
#772CE8 |
success |
twitch-purple |
#9146FF |
| Role | Swatch | Hex |
|---|---|---|
background |
twitch-black |
#0E0E10 |
surface |
twitch-near-black |
#18181B |
surface-elevated |
twitch-charcoal |
#1F1F23 |
text-primary |
twitch-white |
#FFFFFF |
text-secondary |
twitch-gray-light |
#ADADB8 |
text-tertiary |
twitch-graphite |
#53535F |
primary |
twitch-purple |
#9146FF |
primary-hover |
twitch-purple-light |
#BF94FF |
accent |
twitch-purple |
#9146FF |
accent-hover |
twitch-purple-light |
#BF94FF |
warning |
twitch-purple-light |
#BF94FF |
warning-hover |
twitch-purple |
#9146FF |
error |
twitch-purple-light |
#BF94FF |
success |
twitch-purple |
#9146FF |
| Role | Swatch | Hex |
|---|---|---|
identity |
twitch-black |
#0E0E10 |
on-identity |
twitch-purple |
#9146FF |
background |
twitch-black |
#0E0E10 |
surface |
twitch-near-black |
#18181B |
surface-elevated |
twitch-charcoal |
#1F1F23 |
text-primary |
twitch-white |
#FFFFFF |
text-secondary |
twitch-gray-light |
#ADADB8 |
text-tertiary |
twitch-graphite |
#53535F |
primary |
twitch-purple |
#9146FF |
primary-hover |
twitch-purple-light |
#BF94FF |
accent |
twitch-purple |
#9146FF |
accent-hover |
twitch-purple-light |
#BF94FF |
mark |
twitch-purple |
#9146FF |
text-emphasis |
twitch-white |
#FFFFFF |
| Role | Font role key |
|---|---|
display |
heading |
prose |
body |
wordmark |
heading |
code |
mono |
colorChoice → logo.mark.fillThe Twitch Glitch mark renders only in Twitch Purple, reversed white on dark cinematic surfaces, or in monochrome black on light. The hover and lighter purples are interactive-state values; gray tones are chrome — none are acceptable mark fills.
forbiddenTreatment → logoTwitch's 2019 brand refresh established a flat, geometric identity. Gradients, drop-shadows, and recoloring conflict with the documented brand system; apply only Twitch-approved variants with respected clearspace.
contrastRatio → text-primarybackground4.5WCAG-AATwitch White on Twitch Black (#0E0E10) gives ~19:1 — well above WCAG 2.1 Level AA. The rule encodes the floor for any new foreground/background pairing on Twitch surfaces.
contrastRatio → roles.colors.primarybackground3WCAG-AA-largeTwitch Purple (#9146FF) on Twitch Black gives ~5:1 — clears AA-large and approaches AA-normal. Buttons using the purple fill with white text exceed 6:1; this rule guards the interactive affordance of the primary CTA.
contextRestriction → roles.colors.primaryTwitch Purple is reserved for the brand mark, the wordmark, and primary actions ("Follow," "Subscribe," "Go Live"). Using it inside body copy or for error/failure states breaks the interactive signal the purple carries throughout the product.
accessibilityRequirement → *WCAG-AA1.4.3WCAG 2.1 Success Criterion 1.4.3 (Contrast Minimum) — Level AA. The dark-first canvas makes contrast checks the default verification on any new role pairing.
enumMembership → typography.heading.fontWeightTwitch's marketing and product chrome use Medium (500), Bold (700), and Heavy (800) for hero and section headers. Lighter cuts read as chat body and compromise the energetic, gamer- facing voice.
fontPairing → typography.headingbody1.4Twitch's marketing headers and section heads run materially larger than the chat-and-metadata body text. A 1.4× minimum ratio preserves the display-to-prose hierarchy the product and marketing both depend on.
Proprietary — All Rights Reserved2026-05-18Generated by the brand-atoms converter. Source: [email protected] from the encyclopedia.
Every block below renders from the resolved palette + font references on this brand. Swap the brand and the same template re-themes — no per-brand component code required.
Body copy renders in the brand's prose font on the brand's background.
Inline links and highlighted phrases pick up
the brand's primary and highlight roles. Code spans like brand.references.palette
fall back to the monospace face.
A blockquote uses the brand's accent color as its rule. Useful for pulling tagline copy out of running prose.
Neutral status — provides supplemental context without urgency. Uses the brand's primary as the rule.
Confirms a completed action — palette role success determines the rule color.
Calls out something that needs attention but isn't an error — palette role warning.
Surfaces a failure that blocks progress — palette role error. Use sparingly.
| Role | Resolves to | Mode |
|---|---|---|
| primary | brand color #1 | light + dark |
| accent | brand color #2 | light + dark |
| warning | brand warning | light + dark |
| error | brand error | light + dark |
Brand-level role overrides on top of palette-default mappings. Each role resolves to a concrete swatch or font reference.
→ twitch-purple #9146FF → twitch-purple-light #BF94FF → twitch-black #0E0E10 → twitch-black #0E0E10 → twitch-purple #9146FF → twitch-purple #9146FF → twitch-purple #9146FF → twitch-purple-light #BF94FF → twitch-near-black #18181B → twitch-charcoal #1F1F23 → twitch-white #FFFFFF → twitch-white #FFFFFF → twitch-gray-light #ADADB8 → twitch-graphite #53535F → mono JetBrainsMono Nerd Font → heading Inter → body Inter → heading Inter → twitch-purple → twitch-purple-hover → twitch-off-white → twitch-purple-hover → twitch-purple → twitch-purple-hover → twitch-purple → twitch-white → twitch-white → twitch-black → twitch-graphite → twitch-gray-light → twitch-purple-light → twitch-purple → twitch-purple → twitch-purple-light → twitch-black → twitch-purple-light → twitch-purple → twitch-purple-light → twitch-purple → twitch-near-black → twitch-charcoal → twitch-white → twitch-gray-light → twitch-graphite → twitch-purple-light → twitch-purple colorChoice logo.mark.fill allowed twitch-purple, twitch-white, twitch-black forbidden twitch-purple-hover, twitch-purple-light, twitch-graphite, twitch-gray-light The Twitch Glitch mark renders only in Twitch Purple, reversed white on dark cinematic surfaces, or in monochrome black on light. The hover and lighter purples are interactive-state values; gray tones are chrome — none are acceptable mark fills.
forbiddenTreatment logo treatments stretched, rotated, recolored, drop-shadow, gradient-fill, on-busy-photo, inverted-without-variant Twitch's 2019 brand refresh established a flat, geometric identity. Gradients, drop-shadows, and recoloring conflict with the documented brand system; apply only Twitch-approved variants with respected clearspace.
contrastRatio text-primary against background minRatio 4.5 standard WCAG-AA Twitch White on Twitch Black (#0E0E10) gives ~19:1 — well above WCAG 2.1 Level AA. The rule encodes the floor for any new foreground/background pairing on Twitch surfaces.
contrastRatio roles.colors.primary against background minRatio 3 standard WCAG-AA-large Twitch Purple (#9146FF) on Twitch Black gives ~5:1 — clears AA-large and approaches AA-normal. Buttons using the purple fill with white text exceed 6:1; this rule guards the interactive affordance of the primary CTA.
contextRestriction roles.colors.primary forbiddenContexts body-text, secondary-link, validation-failure Twitch Purple is reserved for the brand mark, the wordmark, and primary actions ("Follow," "Subscribe," "Go Live"). Using it inside body copy or for error/failure states breaks the interactive signal the purple carries throughout the product.
accessibilityRequirement * standard WCAG-AA criterion 1.4.3 WCAG 2.1 Success Criterion 1.4.3 (Contrast Minimum) — Level AA. The dark-first canvas makes contrast checks the default verification on any new role pairing.
enumMembership typography.heading.fontWeight allowed 500, 700, 800 Twitch's marketing and product chrome use Medium (500), Bold (700), and Heavy (800) for hero and section headers. Lighter cuts read as chat body and compromise the energetic, gamer- facing voice.
fontPairing typography.heading requires body minSizeRatio 1.4 Twitch's marketing headers and section heads run materially larger than the chat-and-metadata body text. A 1.4× minimum ratio preserves the display-to-prose hierarchy the product and marketing both depend on.
Proprietary — All Rights Reserved2026-05-18