Skip to content
UI/UX11 min read

Design Systems: What They Are and Why Products Need Them

What a design system includes, when a startup should invest in one, and how to fix an inconsistent website with an inventory, CMS blocks and light governance.

01

Quick answer

A design system is a shared set of design decisions and reusable parts that keeps a product consistent as it grows. It typically has layers: design tokens (named values for color, type, spacing), foundations (grid, typography, iconography), components (buttons, inputs, cards) with all their states, patterns (how components combine for tasks like forms or checkout), and guidelines. Products need one once more than a few people build screens, because it makes design and development faster and the interface more consistent and accessible.

02

The myth of the design system as overhead

Design systems are usually associated with large organizations that need to keep hundreds of designers and engineers aligned. That association makes smaller teams skip them entirely, assuming they do not need the structure yet.

In practice, a lightweight design system pays off earliest for small, fast-moving teams, because there is no time to redesign the same button five different ways across five different features.

03

The layers of a design system

LayerWhat it containsExample
TokensNamed values for design decisionscolor-primary, space-4, radius-md
FoundationsTypography, color, grid, spacing, iconography, motionType scale, 8-point spacing, 12-column grid
ComponentsReusable UI elements with statesButton, input, select, card, modal, tabs
PatternsCombinations of components for common tasksForms, empty states, checkout, filters
GuidelinesWhen and how to use each partContent tone, accessibility rules, do and don't examples
04

Why products need one

Without a system, every new screen reinvents spacing, buttons and error messages, and small inconsistencies multiply. With one, designers focus on the problem rather than the pixels, developers reuse tested components, and users get a predictable interface. It's the practical application of the consistency principle in UI design principles.

05

What a system needs to include, and what it does not

A useful early design system covers typography, spacing, color and core components: buttons, forms, cards and navigation. It does not need governance processes or a dedicated team, and it's the same discipline behind every design system we build for clients.

Worth noting

A design system doesn't need a name, a logo or a dedicated file structure to be useful. It just needs to be used consistently.

06

Design tokens

Tokens turn decisions into shared variables. Instead of a hex value repeated across dozens of files, both design and code reference the same named token. Change it once and it changes everywhere, which also makes theming and brand updates far easier. Tokens are the bridge described in design handoff. For the categories most interfaces need and how to name them, see 12 design token categories.

There is now a common file format for tokens. The Design Tokens Community Group published version 2025.10 of its specification, its first stable version, in October 2025. It is a Community Group report rather than a W3C standard, so tool support varies; check that your design tool and build pipeline can read and write it before you depend on it.

07

Components and their states

A component isn't finished until every state is defined: default, hover, focus, pressed, disabled, loading, error and success where relevant. Document the props or variants developers can use and when to use each. Undocumented states are where inconsistencies creep back in.

Is your interface growing inconsistent?

ZSpace Labs designs and documents design systems that designers and developers actually use.

Start a Project
08

When should a startup invest in a design system?

Later than most design-system advocates suggest, and earlier than most founders think. Nielsen Norman Group notes that design systems are best "when the company foresees years of future, replicable design work", and that for a prototype a full design system is unlikely to pay back in the near term, because its benefit is the replication of design in the future. Systems also need ongoing maintenance, so the cost does not end when the first version ships.

A practical way to read that for a startup:

StageWhat to put in placeWhat to avoid
Prototype or pre-launchAn off-the-shelf component library and a handful of tokens for colour, type and spacingBuilding a custom system before you know which screens survive
Live product, one small teamShared components for the patterns you actually repeat, with their states documentedGovernance processes nobody has time to run
Several designers, developers or productsA named owner, versioned tokens and components, documentation and a contribution routeLetting each team fork its own copy
09

Fixing an inconsistent website

Marketing sites drift in a particular way. A few freelancers, an agency and dozens of landing pages later, there are four button styles, several greys and hero sections that almost match. Nielsen Norman Group's description of the problem is blunt: "Small deviations compound quickly", and "Teams optimize locally, not globally". You rarely need a full design system to fix it. You need four steps.

1. Run an interface inventory. Brad Frost describes an interface inventory as "a comprehensive collection of the bits and pieces that make up your interface". Screenshot each unique variant, not every instance, and group them: buttons, links, headings, colours, heroes, cards, forms, calls to action, testimonials and other proof, pricing tables, FAQs, footers, icons and image styles. Frost suggests 30 to 90 minutes is enough for a first pass. The output is a count of variants per category, which is usually persuasive on its own; as Frost puts it, "You don't need to be a designer to recognize that having 37 unique button styles probably isn't a good idea."

2. Fill in a consolidation sheet. For every variant, decide whether to keep it, merge it into another, or retire it, and map what survives to tokens. A useful starting rule, which is a heuristic rather than a standard, is one primary and one secondary button style, one type scale and a named colour palette.

CategoryVariant (screenshot ref)Used onDecisionReplaced by / token
ButtonB1: solid blue, roundedHome, pricing, most landing pagesKeep as primarybutton-primary, color-brand-600
ButtonB2: solid blue, square cornersThree older landing pagesMergebutton-primary
ButtonB3: outline greyBlog, footerKeep as secondarybutton-secondary
HeroH4: video backgroundOne campaign pageRetireHero with image (H1)
FormF2: two-column enquiry formContact, two landing pagesMergeSingle-column form block
10

Fixing an inconsistent website: CMS blocks and governance

3. Rebuild the most-used sections as a CMS block library with limited options. Rebuild the sections your pages actually use, often somewhere around 12 to 20 (again a heuristic), as reusable blocks with preset colours, preset spacing, fixed heading levels and sensible defaults. In WordPress, theme.json settings, block locking and patterns let you restrict editors to approved options, for example "only allowing specific preset colors to be used for the background of a Cover block". In Shopify, each section's schema defines the settings and blocks merchants can change, with presets, a maximum number of blocks and the templates where it may appear. In a headless CMS, model each block as a content type with constrained fields and let the front end decide the styling, so editors choose content and options, not CSS.

4. Add light governance. Name one owner who decides what enters the library (NN/g calls this role the design-system "enforcer"). Set one rule: a new need becomes a new block, never a one-off page. Re-run a one-hour inventory every quarter, and log inconsistencies as UX debt, prioritised by user impact, frequency and effort.

Key takeaway

Fix or redesign? If the site's structure, messaging and conversion paths work and the problem is visual drift, consolidate. If visitors cannot find what they need or the positioning is wrong, see the signs a website needs a redesign instead. Either way, the block library is development work as much as design; the website development guide explains how it fits into a build.

11

Accessibility built in

Encode accessibility at the system level: color pairs that meet WCAG contrast, visible focus styles, minimum target sizes, labeled form patterns and error messaging. Every screen built from the system inherits them. See accessibility in UI/UX design.

12

Starting small

  • Audit existing screens for repeated elements and inconsistencies
  • Define tokens for color, typography, spacing and radius
  • Build the five to ten most-used components with all states
  • Mirror them in code as a shared component library
  • Document usage briefly, next to the components
  • Add components when a pattern repeats, not in advance
13

Keeping it alive

Systems decay when they're not used or not updated. Name an owner, make contributing easy, review new patterns before they multiply, and keep design and code versions in sync. A system that lives only in the design file isn't a system developers can rely on.

14

Consistency compounds

Every screen built on a shared system takes less time than the one before it. Every screen built without one adds a small inconsistency that eventually has to be cleaned up. This is exactly the design-and-development coordination covered in the website development process guide.

Want a design system for your product?

Talk to ZSpace Labs about UI/UX design and a component system your team can extend.

Start a Project
15

When a Design System Is Justified, and When a Component Library Is Enough

Not every product needs a full design system. A shared component library with a few documented patterns is often enough for one product and a small team. A fuller system earns its cost when several products, platforms or teams must stay consistent, when accessibility and brand requirements are strict, or when design and engineering keep rebuilding the same things.

  • Governance: name an owner, define how teams propose and contribute changes, and review regularly.
  • Versioning: version tokens and components semantically, publish changelogs and deprecate with notice so product teams can upgrade safely.
  • Documentation: usage guidance, do and do not examples, accessibility notes and code examples for each component.
  • Accessibility: build WCAG 2.2 requirements into components, including focus visibility, target size and keyboard behavior, so every product inherits them; see accessibility testing.
  • Developer handover: tokens exported to code, components in the same repository or package developers use, and design files that match production. See design handoff.
  • Measure adoption: track which products use which version, and where teams build one-off components instead.
Component libraryDesign system
ContainsReusable coded componentsTokens, components, patterns, content guidance, documentation and governance
FitsOne product, small teamSeveral products, platforms or teams
GovernanceInformalNamed owners, contribution process, versioning
CostLowOngoing team time
16

Sources

Design systems and consistency: NN/g: Design Systems 101; NN/g: the design-system enforcer (6 February 2026); NN/g: UX debt; Brad Frost: interface inventory (2013); Brad Frost: Atomic Design, chapter 4.

Tokens and CMS controls: Design Tokens Community Group: specification 2025.10; WordPress: curating the editor experience; Shopify: section schema.

Accessed 15 October 2026. Platform features and specifications change; check the current documentation.

17

Conclusion

A design system is the product's shared language: tokens, foundations, components and patterns that make every new screen faster and more consistent. Start small with the most-used pieces, keep design and code in sync, and grow it as patterns repeat. If your website has already drifted, start with an inventory and a consolidation sheet before anything bigger, and hand the result to developers as specified blocks; see what a good design handoff includes. For the wider process, see the product design guide. To theme one system across several brands, see multi-brand website architecture.

FAQ

Common questions.

A shared set of design decisions, reusable components and guidelines, kept in sync between design and code, that teams use to build consistent interfaces efficiently.

Get in touch

Have a project in mind?

Whether you're building a new digital product, improving an existing website, or looking to automate part of your business — let's talk.