DESIGN.md · Analysis

Traveloka

traveloka.com · 10 Jul 2026 · 47 colors · Godwit

Traveloka

Southeast Asia's leading travel platform offering flights, hotels, activities, and ground transportation with a focus on accessibility, trust, and seamless booking experiences.

Colors

surface#f7f9fa
surface-dim#e8eaeb
surface-bright#ffffff
surface-container-lowest#f0f1f2
surface-container-low#f2f3f3
surface-container#cdd0d1
surface-container-high#c1c4c6
surface-container-highest#b0b3b5
on-surface#031226
on-surface-variant#687176
inverse-surface#242628
inverse-on-surface#f7f9fa
outline#8e9192
outline-variant#c4c7c8
surface-tint#0a9af2
primary#0a9af2
on-primary#ffffff
primary-container#d1f0ff
on-primary-container#024590
inverse-primary#91d6fd
secondary#ff5e1f
on-secondary#ffffff
secondary-container#ffe0d4
on-secondary-container#5c2400
tertiary#8be200
on-tertiary#031226
tertiary-container#baf075
on-tertiary-container#1b4600
error#ff474e
on-error#ffffff
error-container#ffd8d6
on-error-container#5c0a0f
primary-fixed#d1f0ff
primary-fixed-dim#91d6fd
on-primary-fixed#001d3a
on-primary-fixed-variant#024590
secondary-fixed#ffe0d4
secondary-fixed-dim#ffb89a
on-secondary-fixed#3a1500
on-secondary-fixed-variant#7d3c1a
tertiary-fixed#baf075
tertiary-fixed-dim#8be200
on-tertiary-fixed#0a2000
on-tertiary-fixed-variant#2d5a00
background#f7f9fa
on-background#031226
surface-variant#dfe3e6

Typography

display
fontFamily: Godwit · fontSize: 56px · fontWeight: 700 · lineHeight: 64px · letterSpacing: -0.02em
headline-lg
fontFamily: Godwit · fontSize: 40px · fontWeight: 700 · lineHeight: 48px · letterSpacing: -0.01em
headline-md
fontFamily: Godwit · fontSize: 32px · fontWeight: 700 · lineHeight: 40px · letterSpacing: 0em
title-lg
fontFamily: Godwit · fontSize: 24px · fontWeight: 600 · lineHeight: 32px · letterSpacing: 0.01em
body-lg
fontFamily: Godwit · fontSize: 18px · fontWeight: 400 · lineHeight: 28px · letterSpacing: 0em
body-md
fontFamily: Godwit · fontSize: 16px · fontWeight: 500 · lineHeight: 24px · letterSpacing: 0em
label-md
fontFamily: Godwit · fontSize: 14px · fontWeight: 600 · lineHeight: 20px · letterSpacing: 0.01em
label-sm
fontFamily: Godwit · fontSize: 12px · fontWeight: 500 · lineHeight: 16px · letterSpacing: 0.02em

Design guidance

Overview

Traveloka is Southeast Asia's premier travel commerce platform, serving millions of travelers seeking seamless booking experiences across flights, hotels, activities, and ground transportation. The design system embodies a philosophy of "Accessible Confidence"—combining the trust and reliability of a mature travel brand with the clarity and directness of modern digital interfaces. The aesthetic is rooted in **Functional Minimalism with Warmth**: a clean, light-dominated palette punctuated by vibrant action colors (primary blue #0a9af2, secondary orange #ff5e1f, success green #8be200) that guide users through complex booking flows without overwhelming them. The UI evokes a sense of exploration and possibility—every interaction feels purposeful, every color choice intentional.

Traveloka's voice is conversational, encouraging, and locally attuned. The brand speaks to travelers in their language (literally and tonally), using warm, inclusive language that celebrates the joy of discovery. Vocabulary patterns favor action-oriented verbs ("Jelajahi," "Pesan," "Nikmati") and benefit-driven copy. The tone avoids corporate stiffness; instead, it feels like a knowledgeable local friend guiding you through options. Example sentence in brand voice: "Temukan penawaran terbaik untuk liburan impian Anda—harga hemat, promo menarik, dan layanan 24/7 siap membantu."

Colors

The Traveloka color system is built on a foundation of trust (cool, professional blues) layered with warmth (vibrant oranges and greens) to create an inviting, energetic experience. **Primary (#0a9af2)** is the signature brand blue—used for all primary CTAs, active states, links, and focus indicators. It conveys reliability and clarity, appearing on the "Daftar" button, search submit icons, and active navigation tabs. **Secondary (#ff5e1f)** is a bold, warm orange reserved for secondary actions and highlights that demand attention without competing with primary—the search button in the hero form exemplifies this. **Tertiary (#8be200)** is a vibrant success green used for positive confirmations, badges, and promotional highlights (e.g., "Baru! Whoosh" badge). The surface stack ranges from b

Typography

The Traveloka type system centers on **Godwit**, a custom humanist sans-serif that balances geometric precision with organic warmth—ideal for a brand that must feel both trustworthy and approachable. The type hierarchy spans eight levels: **Display (56px, 700)** for hero headlines like "Pilihan utama untuk jelajahi dunia"; **Headline-lg (40px, 700)** for major section titles; **Headline-md (32px, 700)** for subsection headers; **Title-lg (24px, 600)** for card titles and modal headers; **Body-lg (18px, 400)** for long-form content and descriptions; **Body-md (16px, 500)** for form labels and standard body text; **Label-md (14px, 600)** for buttons, tabs, and UI labels; and **Label-sm (12px, 500)** for badges, captions, and fine print. Letter-spacing ranges from -0.02em on display (tighteni

Layout

Traveloka employs a **fluid, centered-column layout** with a fixed max-width of 1222px (matching the container-max-width token), ensuring the interface scales gracefully from mobile to desktop. The grid system uses 12 columns with consistent 24px gutters (gutter token), creating a rhythm that feels spacious without wasting real estate. The hero section spans full-width with a dark blue gradient background, anchoring the page with visual weight and establishing the brand's premium positioning. Below the hero, content sections use the full container width but maintain 40px (lg spacing) margins between major sections, creating clear visual separation and breathing room. The search form in the hero demonstrates the layout philosophy: inputs and buttons are arranged horizontally on desktop (fle

Elevation & Depth

Depth in Traveloka is conveyed through a **shadow-based elevation system** that mimics real-world light and shadow, creating a subtle sense of layering without resorting to dark overlays or heavy blur effects. The system defines three elevation levels: **Level 1 (sm)** uses box-shadow: 0 1px 2px rgba(3, 18, 26, 0.08), applied to subtle interactive elements like hover states on list items or small floating buttons. **Level 2 (md)** uses box-shadow: 0 4px 10px rgba(3, 18, 26, 0.15), the default shadow for cards, modals, and standard elevated surfaces—this is the most frequently used elevation an

Shapes

The Traveloka shape system follows a philosophy of **Approachable Geometry**—combining sharp, modern corners with selective softness to create a design that feels both professional and welcoming. The rounded scale is anchored by **sm (4px)** for minimal softening on small UI elements like checkboxes and icon buttons; **DEFAULT (8px)** for standard components like input fields and small cards; **md (10px)** for medium-sized containers; **lg (16px)** for primary buttons, larger cards, and modals; **xl (25px)** for prominent hero elements and large cards; and **full (9999px)** for fully rounded p

Components

Action Elements **Buttons** form the primary interaction layer. The button-primary component uses {colors.primary} (#0a9af2) background with white text, lg (16px) radius, 12px horizontal / 12px vertical padding, and a 48px fixed height for touch-friendly targets. On hover, the background shifts to #0088cc (a darker blue) and elevation increases from md to lg (box-shadow: 0 6px 16px rgba(3, 18, 26, 0.2)), creating tactile feedback. On active/pressed state, the background becomes #0071ce (even darker), with a 150ms transition-duration: ease applied to all property changes. The button-secondary component mirrors this structure but uses {colors.secondary} (#ff5e1f) for the search submit button and other secondary CTAs. Button-ghost variants use transparent backgrounds with a 1px border in