2xN

Craft

Fast Is a Feeling, Not a Number

Perceived speed is a design job, not just an engineering one. Here are the techniques that make a wait feel shorter than it is.

25 January 2027 3 min read Craft

We spend a lot of time making websites load quickly. We compress images, cut unused code, choose good hosting and measure the results. All of that matters, and it shows in the numbers. But the numbers aren't the whole story. Two pages that load in the same time can feel completely different, depending on what the visitor sees while they wait.

Speed, from a visitor's point of view, is a feeling. Design shapes that feeling as much as engineering does.

Respond immediately

The most important rule is that every action gets an instant response. When someone taps a button, something should change straight away, even if the result takes a moment longer: a pressed state, a spinner, a change of label. Without it, people wonder whether the tap registered and tap again.

Research on response times has long suggested that around a tenth of a second feels instant, and around a second is the point where people notice the delay but stay focused. Beyond that, they need clear feedback that something is happening.

Show the shape of the page

A blank screen feels slow because nothing is happening. A page that shows its structure first, with the layout, headings and placeholder blocks where images and data will appear, feels like it's already arrived. These placeholders, often called skeleton screens, give people something to look at and help them understand the page before the content fills in.

On websites, we get the same effect by loading text and layout first and images after. People can start reading while the photography catches up.

Keep things still

Nothing feels slower than a page that keeps moving. You start reading, an image loads above, and the text jumps down. You go to tap a button, something loads in, and you tap the wrong thing. We reserve space for every image and embedded element so the page holds its shape as it loads. Google measures this movement as part of its page experience signals, which is one reason it matters for SEO too.

Do the work before it's needed

Some delays can be hidden by starting early. When someone hovers over a link, the next page can begin loading. When they start filling in a form, we can prepare what happens after it's sent. Images further down a page can load as the visitor scrolls towards them rather than all at once on arrival.

In apps, a technique called optimistic updating shows the result of an action straight away, such as a message appearing as sent, while the actual work happens in the background. If something fails, the app says so and offers to try again. Most of the time it succeeds, and the app feels instant.

Make waits understandable

Some things just take time, like uploading a large file or generating a report. For those, a progress bar with a sense of how long is left is better than an endless spinner. People tolerate waits far better when they know roughly how long they'll be. If it will take more than a few seconds, we tell them, and where possible, we let them carry on with something else.

Motion that helps

Short, purposeful transitions can make an interface feel smoother and faster. A panel that slides in tells you where it came from. Slow or decorative animations do the opposite. We keep most transitions under a third of a second, and we never make people wait for an animation to finish before they can act.

Real speed still counts

None of this replaces genuine performance. A page that takes ten seconds to load will feel slow no matter how clever the loading screen is. We do both: make the site as fast as it can be, then design the remaining waits so they feel shorter. That combination is part of every website design and build we do.

If your site scores well on speed tests but still feels sluggish, the gap is often in the design. Let's take a look.

Ready to talk about your project?

Start a conversation →
→ Back to all posts