The Pattern Debt in AI-Built Apps

By Andrew Phelps·Patterns

AI builds page by page.

Design builds systems.

That's the root of the problem.

When you build with AI coding tools, the output is impressive. You can spin up dashboards, tables, detail screens, and admin panels in a single session.

Everything renders.
Everything works.
Everything looks modern.

But underneath the surface, there's pattern debt.

And it compounds quickly.

What Pattern Debt Looks Like

You click from screen to screen and notice small shifts:

  • Primary buttons are blue on one page and indigo on another.
  • A destructive action is red in one table and gray in another.
  • Badges are rounded in one context and squared in the next.
  • Headings jump levels without logic.
  • Similar data types are treated differently across screens.

Individually, none of this breaks the product.

Collectively, it erodes clarity.

The UI is consistent in theme.

It is not consistent in grammar.

Visual Semantics Drift

AI doesn't naturally create semantic systems.

It chooses what looks right in the moment.

Not what rule governs the entire product.

So colors drift.
States drift.
Labels drift.

Users don't consciously articulate this.

But they feel it.

Because repetition builds trust.

And inconsistency erodes it.

The Flat Hierarchy Problem

AI often gives every action equal weight.

Primary and secondary actions look similar.
Important metrics sit next to trivial metadata.
Everything feels evenly distributed.

But not everything is equal.

Hierarchy is a decision.

AI won't make that decision unless you force it to.

A Simple Coherence Audit

Take five screenshots from different parts of your product.

Place them side by side.

Ask:

  • Are primary actions identical?
  • Are status treatments consistent?
  • Are headings structured logically?
  • Are similar data types treated the same?
  • Is spacing uniform?

If the answer is “mostly,” you have pattern debt.

And pattern debt grows.

Because every new feature compounds the drift.

AI can generate components.

It will not enforce your system unless you define one.

Discipline is the advantage.