New Apr 12, 2026

The perfect file upload pattern

More Front-end Bloggers All from Adam Silver View The perfect file upload pattern on adamsilver.io

Last week I listened to episode 10 of the Complimentary podcast, “Taking Interaction Design from Good to Great”.

Anthony Hobday, one of the hosts, gave an example of applying for a driving license on GOV.UK.

He said that instead of asking you to upload a photo, the form said:

“We notice that you’ve already got a passport with us. Do you want us to use your passport photo for your driver’s license?”

You click ‘Yes’ and move on.

Anthony said this design is “next level”.

I agree.

The best file upload pattern is the one where you don’t even have to take a photo, let alone upload one.

Because if you have to take a photo that would mean:

  1. Leaving your computer
  2. Getting someone to take your photo
  3. Returning to your computer
  4. Transferring the photo onto the computer

That’s significant effort.

And then you have to upload it by:

  1. Clicking the file input
  2. Browsing to the folder
  3. Selecting the file

Or

  1. Opening the file browser
  2. Browsing to the right folder
  3. Dragging the file onto the drop zone

And that assumes the file size and format are appropriate so you don’t get validation errors.

Even if you have the clearest content and an accessible interface, uploading a file is the most labour intensive form interaction.

Which is why clicking ‘Yes’ and moving on is next level UX.

When Anthony described the experience, he never mentioned:

Because what impressed him had little to do with the interface.

Over the last 10 years, I’ve designed 20+ different products and services for gov.

It takes a lot of effort to produce such an effortless interaction.

It often involves:

But it’s 100x harder to pull off next level UX if you don’t know the fundamentals.

If you’d like to nail the fundamentals and get to next level UX, you might like my course, Form Design Mastery.

Here are some of the things you’ll learn:

https://formdesignmastery.com

Scroll to top