iOS Design Spec

Every block knows
its place.

The Notion iOS app, dissected. White canvas, warm-black ink at #37352F. Hairline borders. Almost no color โ€” except the six pastel tints reserved for callouts and highlights.

9:41
๐Ÿ“Š Sprint Tasks
Board Table Calendar Gallery
All Assigned Due + Filter
To Do 4
Design auth flow
Design
Wire up Stripe
Backend
User onboarding copy
Writing
In Progress 2
Dark mode tokens
Design
Calendar view fixes
Eng
Done 8
Sidebar drawer
Shipped
Home
Search
Inbox
New
Database ยท Board
9:41
๐Ÿš€
Add cover Add comment
Project Roadmap
โ‹ฎโ‹ฎThe plan for Q3. Quiet, dense, no surprises.
Goals
Ship public beta
Hit 1k weekly actives
๐Ÿ’ก Move fast on the auth flow โ€” it blocks every other ticket below.
Sprint board
Task
Owner
Status
Auth flow
J. Shu
Doing
Onboarding copy
Lin
Todo
This week
Define metrics
Wire up Stripe
Pair on dark mode tokens
Page
9:41
๐ŸฆŠ Jiang's Workspace
PRIVATE
๐Ÿ“Daily Journalโ€บ
๐Ÿ“ŠProject Roadmapโ€บ
๐Ÿ—‚๏ธReading Listโ€บ
๐Ÿ“–Fiction
๐Ÿ“‘Papers
๐Ÿ’กIdeasโ€บ
WORKSPACE
๐Ÿ‘ฅTeam Wikiโ€บ
๐Ÿ“‹Sprint Tasksโ€บ
TEMPLATES
โš™๏ธEngineering
๐ŸŽจDesign Specs
โœจAsk Notion AIโ€บ
Home
Search
Inbox
New
Workspace Home
iOS Surface Anatomy

Three surfaces. No color budget.

Notion's iOS app is almost monochrome on purpose. Six pastel tints exist to highlight a word or wrap a callout โ€” never to brand a button. Hairline borders carry every structural beat.

๐Ÿ“„

Page

Emoji icon over an H1 title, then a stream of mixed blocks: paragraphs, toggles, callouts, tables, checkboxes. Side padding stays at 18pt. Borders on blocks are 0 โ€” only the table earns hairlines.

๐Ÿ—‚๏ธ

Database

View tabs sit under the title like browser tabs โ€” Board, Table, Calendar, Gallery. Kanban cards land at 4px radius, 1px border, no shadow. The active tab gets a single black underline.

๐ŸฆŠ

Workspace Home

Sidebar drawer over a #F7F6F3 warm background. Pages disclose with a tiny arrow. Emoji-as-icon by default. Notion AI sits at the bottom in pink, the one true colored row.

Slash Commands

Type "/", get a vocabulary.

The most-used affordance in the app. Hitting "/" in any editable block lifts a floating sheet of block types โ€” heading, toggle, callout, code, table, image โ€” each with a 36ร—36 black-bordered icon tile that mirrors the desktop app pixel-for-pixel.

Arrow keys / drag select between rows on iPad with a hardware keyboard; touch select on iPhone scrolls a single column.

sheet radius: 6pt row height: 44pt icon tile: 36pt fuzzy match
BASIC BLOCKS
๐Ÿ“
Text
Just start writing with plain text.
๐Ÿ“„
Page
Embed a sub-page inside this one.
โ˜‘
To-do
Track tasks with a checkbox.
H1
Heading 1
Big section heading.
โ–ธ
Toggle list
Toggles can hide and show content.
๐Ÿ’ก
Callout
Make writing stand out.
+โ‹ฎโ‹ฎ Mobile design is mostly about restraint.
+โ‹ฎโ‹ฎ Every block has a six-dot handle and a plus button. The plus opens slash commands; the handle drags or opens block actions.
+โ‹ฎโ‹ฎ On touch, long-press the handle to lift the block; light haptic on engage.
+โ‹ฎโ‹ฎ Releasing snaps into the closest gutter.
Block Handle

Six dots, and the whole page rearranges.

Every block on iPhone exposes a plus + six-dot drag handle at its left edge โ€” invisible until tap-and-hold. Long-press lifts the block with a light haptic; the rest of the page reflows around it as you drag.

Tap-only on the handle opens the block action menu: duplicate, turn into, color, move to.

handle: 14ร—14pt haptic: light lift: scale 1.02 shadow: y4 b12
Notion AI

One sparkle. One color the brand never uses anywhere else.

Notion AI introduces the only persistent non-neutral hue in the product โ€” a pink sparkle. Triggered inline (space at the start of a new block) or via the sidebar entry, it presents a small bubble offering rewrite, summarize, continue, brainstorm.

Output streams character-by-character with a subtle pink underline that fades after 800ms.

accent: #AD1A72 bubble radius: 6pt stream cursor: โ–
โœฆ NOTION AI
The plan for Q3 is to ship the public beta, hit 1k weekly actives, and quietly retire the legacy auth flow. No surprises.
Inline ยท pink underline fades 800ms
Design System Reference

The least colorful system in the App Store.

Every token Notion's iOS app reaches for โ€” the warm-black ink ladder, the six tints reserved for highlights, the radius scale that almost never exceeds 6px. Hairlines do the structural work; color does not.

View Source โ†—

Color

Warm black at #37352F. Pure white canvas. A whisper of warmth in surface grays. Six tint pairs (yellow, pink, blue, gray, green, orange) exist only inside highlight pills and callout backgrounds โ€” never as button color.

Ink Ladder
Warm Black
#37352F
Soft Ink
#605C56
Muted
#787774
Dim
#9B9A97
Canvas
#ffffff
Surface & Border
Warm Surface
#F7F6F3
Sidebar
#F1F1EF
Card Alt
#FBFAF9
Border
#EBECED
Border Strong
#D3D1CB
Highlight Tints
Yellow
#FBF3DB
Pink
#FAF1F5
Blue
#E7F3F8
Green
#EEF3ED
Orange
#FAEBDD
Tint Ink (text on tint)
Yellow Ink
#CB912F
Pink Ink (AI)
#AD1A72
Blue Ink
#2F80ED
Green Ink
#4C9C6B
Orange Ink
#D9730D

Typography

Notion's UI uses a custom sans (Notion Sans) โ€” substituted here with Inter. The page-title hierarchy goes h1 32 / h2 24 / body 16, all at 1.45โ€“1.5 line-height. Italicized serif appears only in marketing or empty states.

TokenSampleSizeWeightTracking
--page-titleProject Roadmap30 / 1.88rem700-1.0px
--h1Goals26 / 1.63rem700-0.6px
--h2This week22 / 1.38rem700-0.4px
--h3Sprint board18 / 1.13rem700normal
--bodyA canvas wide enough to think on. Quiet enough not to interrupt.16 / 1.00rem400normal
--captionAdd a comment14 / 0.88rem500normal
--metaEdited 2h ago12 / 0.75rem500normal
--code/toggle13 / 0.81rem400normal
--accent-serifplace18 / 1.13rem400normal

Radius

Radii almost never exceed 6px. Cards land at 4. Inputs at 5. Buttons at 6. The only round corner of any size is the iOS sheet itself at 14, inherited from the system, not declared by Notion.

Block
0px
Hairline
2px
Tag
3px
Card
4px
Input
5px
Button
6px
Modal
8px
System Sheet
14px

iOS Spec Strip

The constants that anchor the iOS implementation across iPhone 12 mini through iPhone 16 Pro Max.

Page padding
18pt
Block content stays at 18pt L/R. Cover bleeds edge-to-edge.
Block gap
4pt
Between sibling blocks. Headings get 8pt above.
Handle
14ร—14pt
Six-dot drag + plus button. Tap target expanded to 36pt.
Sidebar width
86%
Drawer overlay; dims trailing 14% at rgba(15,15,15,0.4).
Tab bar height
83pt
Including 34pt home-indicator safe area.
KB toolbar
44pt
Formatting strip above the keyboard. Background #F7F6F3.
Border hairline
1pt
Renders at 0.5pt @2x and @3x for crisp pixel alignment.
Animation
200ms
easeOut for blocks. 280ms easeInOut for drawer.

Components

Buttons stay rectangular. Tags are pastel. Inputs lean on hairline borders. Black is the only fill that carries primary affordance.

Buttons
Inputs & Tags
Backend Writing Design Done Todo
Blocks
๐Ÿ’กA callout block โ€” six pastel tints to choose from.
Wire up Stripe
Pair on dark mode tokens
Design auth flow
Design
View source โ†—