Work

Ledger · 2025

A calmer surface for a hard problem

First design hire for a small-business accounting tool — from a spreadsheet-shaped MVP to a product people trust with their books.

Role
Design system, Product UI, Motion
Year
2025
Abstract bar chart in vermilion over a warm ledger grid.

Ledger helps small businesses close their books without hiring a bookkeeper. When I joined, the product worked but felt like a spreadsheet wearing a trench coat — every screen was a table, every action a modal, and new users bounced in the first session.

The brief

The founders had product-market fit with accountants and wanted to reach the owners themselves. That meant the interface had to carry more explanation without becoming louder. My job was to design the system that made that possible and prove it on the two flows that mattered: onboarding and the monthly reconcile.

The number on the screen is someone’s payroll. The interface should feel like it knows that.

What I did

  • Rebuilt the foundation as a typographic system — one serif for figures and headings, one grotesque for UI, a six-step scale — so hierarchy came from type, not from boxes and dividers.
  • Designed 28 components in Figma and shipped them as a headless React library with the two engineers, wiring Code Connect so the handoff was a link, not a redraw.
  • Replaced the modal-heavy reconcile flow with an inline, keyboard-first interaction: match, split, or flag a transaction without leaving the row.
Design system sheet: accent colors, a display type scale, and a spacing ramp.
The core of the system — small enough to hold in your head, strict enough to keep 28 components consistent.

Motion

Motion did the explaining. Balances count up when they change so the delta is felt, not just read. Reconciled rows settle with a short spring and a single tick. Nothing bounces for decoration — every animation maps to a state change, and all of it collapses cleanly under prefers-reduced-motion.

Outcome

  • Activation (first reconcile completed) rose from 31% to 58% over the quarter after launch.
  • Support tickets tagged “how do I…” dropped by roughly a third.
  • The component library now backs every screen in the product, including the ones built after I rolled off.