The Empty States Nobody Designs, Until They're Embarrassing
404 pages, empty search results, and blank dashboards are part of the experience too. Here's how to handle them well.

The moments nobody designs on purpose are often the ones people actually hit
Every site has states that only show up when something goes slightly wrong or hasn’t happened yet: a broken link lands on a 404 page, a search returns nothing, a new user’s dashboard is completely blank. These get built last, if at all, because they feel like edge cases. But a visitor who follows a dead link or searches for something you don’t have is having a real moment on your site, and a badly handled empty state can lose them right there.
Here’s how to treat these moments as part of the experience instead of an afterthought.
A 404 page should feel like your site, not a system error
The default “page not found” is jarring precisely because it looks like it came from somewhere else entirely — different fonts, no navigation, no personality. Give your 404 page the same header, footer, and tone as the rest of your site, explain briefly what happened, and give people an obvious way back to something useful. It’s a small design task with an outsized effect on how polished your site feels in a moment of friction.
Empty search results should suggest a next step, not just say “nothing found”
A bare “no results” message leaves someone stuck with no obvious next move. Suggest a broader search, show popular items instead, or offer a way to get in touch if what they wanted genuinely isn’t available. The goal is to turn a dead end into a fork — give them something to do next instead of just confirming that the thing they wanted isn’t there.
A blank dashboard is a chance to teach, not just an empty box
A brand-new user staring at an empty dashboard has no idea if that’s normal or if something’s broken. Use that space to explain what will eventually live there and offer a clear first action — “add your first project” with a button, not just silence. First impressions of a product often happen in exactly this empty moment, before there’s any real content to judge.
A cart or list with nothing in it should still feel like part of the brand
An empty shopping cart is a natural moment to gently point people back toward browsing, without being pushy about it. This is also a good spot for a bit of personality — a friendly illustration or a light line of copy can turn a genuinely mundane moment into one that feels considered rather than forgotten.
Design these states before launch, not after someone complains
It’s easy to forget these exist because you, the builder, rarely encounter them once the site is populated with real content. Deliberately trigger each one before launch — search for nonsense, visit a broken link, look at a fresh account — and make sure each one reflects the same care as your homepage. These are small moments, but they’re the ones most likely to catch a visitor off guard.
