What a tide table taught me about empty states
Nothing on the screen doesn’t have to mean nothing to say.
Available for new projects from January 2027.
A few things I’ve madeGood questions. Useful things.
Nordic Ocean Institute · Lead designer
A field app that helps marine biologists record what they find, even offline on a boat.
Designed around wet hands, patchy signal, and short windows between samples. Large touch targets and a clear local save state let researchers keep their attention on the water. Observations wait safely on the device until a connection returns.
Västkust Credit Union · Product designer
Replacing a 20-year-old member banking system, one understandable form at a time.
A migration is also a chance to question what a form asks of people. The design breaks long workflows into clear steps, keeps entered information visible, and pairs every error with a useful way forward. Keyboard access and plain language are part of the foundation.
Region Väst Transit · Design and front-end
A live view of tram and bus delays, for the people waiting and the people keeping things moving.
One network, two different moments of need. Commuters need a quick answer; dispatchers need the wider pattern. Route labels, delay values, and update times communicate status alongside color so the map remains useful at a glance.
Self-initiated · Author and designer
A free, practical guide for municipalities publishing their very first datasets.
A guide built around the questions a small municipal team actually asks: where to begin, what to publish, and how someone else will use it. Short chapters connect readable examples with practical checklists for formats, metadata, and maintenance.
Nothing on the screen doesn’t have to mean nothing to say.
A boat, a pair of cold hands, and the limits of a perfectly sized button.
The most valuable field in the old system was the one nobody could explain.
When the question is “how much more?”, a circle makes everyone work harder.
Small observations from the number 11, collected between home and everywhere else.
A clearer scope starts with the decision a client needs to make.
6 posts · A working notebook, in public.
DESIGN · FEATURED ESSAY
On a boat outside the Koster Islands, I watched a researcher refresh a tide table three times. The screen was blank. She wasn’t impatient; she was trying to work out whether the water was doing nothing, the connection was doing nothing, or the app was doing nothing. Three very different situations, wearing exactly the same interface.
I had designed that interface. Back at my desk, the empty state had seemed like a quiet corner of the product: a small illustration, a friendly sentence, a button to try again. On the boat, it was a question we hadn’t answered.
A tide table without entries might mean there are no predictions for this station. It might mean the predictions haven’t arrived yet. Or it might mean we have yesterday’s data, sitting safely on the device, but haven’t decided whether to show it. Calling all three “No data” throws away the most useful information we have.
“An empty screen should explain what we know, not just what we don’t have.”
We started by writing the states in plain language, away from the layout. For each one, we asked: what happened, what can someone trust, and what can they do next? Only then did we decide what belonged on the screen.
{
"status": "offline",
"last_updated": "2026-10-01T16:30:00Z",
"cached_predictions": true
}
This little object changed the conversation. The screen wasn’t empty anymore. It had an explanation, a timestamp, and something useful to offer. We could show the saved predictions, label them clearly, and let the researcher decide whether they were suitable for the task.
The final copy was ordinary: “You’re offline. Showing predictions saved yesterday at 18:30.” No apology, no cheerful drawing, no suggestion that refreshing harder would improve the signal. We placed the timestamp beside the table rather than hiding it behind an information icon.
I now sketch empty states before the happy path is finished. They expose assumptions about time, certainty, and responsibility that a populated dashboard can quietly conceal. They also give engineers and writers a shared way to discuss what the system actually knows.
That morning, the researcher stopped refreshing and went back to her samples. A useful interface sometimes earns its keep by giving someone permission to look away.
Written slowly, by the water.
Curious by default.
I’m Maya, an independent product designer and writer based in Gothenburg, Sweden. I help teams make complicated information feel approachable, especially when the people using it have important work to do.
My practice moves between research, interaction design, and working prototypes. I’m happiest alongside people who know their subject deeply: marine biologists, credit union staff, transit dispatchers. Their everyday work is usually where the interesting design questions live.
Before going independent, I worked in a small design studio and on analytics software. These days I partner with thoughtful teams, write about what I learn, and make room for projects that serve the public. Away from my desk, you’ll find me walking along the coast or sketching on the tram.
“Empty states are content”Nordic Design Days · 2026
“Forms that survive a migration”Front-end Gothenburg · 2025
I’d love to hear what you’re working on.