View
UX Design4 min readDec 2024

The Cost of Over-Engineering UX

Complexity doesn't make products powerful — it makes them harder to use.

ComplexityDesign DecisionsSimplicity

There's a certain pride in building elaborate systems. Eleven filter options. Three types of dashboards. A notification preference centre with twenty-three toggles. It feels thorough. It isn't. Complexity is easy to add and nearly impossible to take back — and users pay for it with every interaction.

Complexity as a Safety Net

Teams add features when they're unsure who their user is. More options feel like covering all the bases. But every toggle, every menu item, every additional step is a small tax on attention. They compound. A product that requires thirty minutes to configure loses users who needed five minutes to succeed.

The instinct to add is natural. Removing something feels like admitting a mistake. Keeping it feels safe — 'someone uses this.' But that reasoning fails at scale: ten users who need a feature can easily be served another way. Two hundred users confused by it cannot.

When everything is important, nothing is. The most powerful moment in a product redesign is often removing a feature that ten users loved but two hundred found confusing.

The Real Cost

Over-engineered UX creates three compounding problems. First, it slows down first-time users who can't find the core value. Second, it bloats maintenance costs — every additional state is a potential failure mode. Third, it obscures the product's actual promise behind configuration noise.

I've seen products where the onboarding flow had seventeen steps before a user could do anything meaningful. The engineering team was proud of the flexibility. The conversion numbers told a different story.

The Subtraction Test

Before adding anything, ask: what happens if we remove it? If the answer is 'most users won't notice,' reconsider the addition. Build the minimal version, observe behaviour, add only what friction demands.

The best products feel inevitable — like every feature is exactly where it should be and nothing is missing. That feeling is the result of relentless subtraction, not addition. It's harder to achieve than it looks.

Simplicity is not the absence of features. It's the absence of features that don't belong.

Key Takeaways

01

Add features last — they compound complexity faster than they compound value

02

Confusion is usually a signal of unnecessary complexity, not user error

03

The best redesigns are often net removals of features and steps

04

Run the subtraction test before every addition: what if we didn't build this?