Hello!
we have a small project where the user's request takes around 2 minutes. Right now, it is just a loading spinner but when you wait 2 minutes for something on the internet, it feels like the website is broken.
What is the best way to let a user know that this request could take a long time? Is the solution just text and we are overthinking it? Or, could it be some type of turbo tax style animation?
Thank you!
I am going to take a guess that you're using OpenAI for some kind of parsing.
Even if not, my advice would be to just queue the process. Tell the user immediately with 200 that you have received the request, and that we'll get back to you once the processing is done. Then use websockets or emails to tell the user that it's done after the process is complete.
that's a nice idea! thank you
Add small "in browser" game to kill the time.
You're right, anything over 2 seconds, people will think it's broken unless you set expectations right ahead of time. Text should be just enough. Make sure to mention 2 minutes, it's better to over-estimate and beat expectations than the opposite. You'll do animations after PMF if there's no other way to speed things up. Sounds like a nice marginal increment which probably makes a difference for a multi-million business like TurboTax but not for you at this stage. You may also want to consider other flows, such as collecting an email and sending the results once done.
added the this is going to take at least two mins! thanks for the suggestion :)
Hello!
Display that it will take some time.
If you can, then you should definitely display how many steps are left from the process. From there, you can create all kinds of fun animations, but I think a simple progress bar is enough too.
On the other hand, if your app has other parts to interact with, then you could create a feature where you send the user back to the home page and say that you will notify them when the thing is ready.
2 sec is a lot for users to wait! You might try optimizing it at a fast server.