Due to the nature of our product, we have a long signup process. To give you an idea, it can take between 15 minutes and 3 hours before the product is really ready to use. Once the user inputs their details, we need to go and talk to other APIs before everything's ready. The user can use the product during this setup period, but they're not seeing the full value and it can leave a bad impression - we try to discourage it.
Technically, we can improve this time to make it as short as possible, but it'll never be instant. There'll always be a delay before the product is good to do.
We are having some challenges around this, and I'd love to get your feedback as product people and as users.
Hey Steven,
First off, it's a good sign that you're aware of the problem :)
I don't know your product or customers, so take my (quite generalised) advice with a pinch of salt.
But here are some things to think about:
Churn from start-to-finish is probably unavoidable. Consider at least testing whether you can include the subscription/payment step at the beginning (as opposed to the end) - people are more likely to come back and finish if they're paying for it already...
Make sure the user knows about the delay/duration up front. Try to parcel it into different sections, not just an onboarding.
Keep the user updated - via notifications and email/sms. If you can, include a %-chart of the progress.
If you get the API keys etc from the user first, you could already be doing the work while they finish setting up their accounts... that might make it seem like they've had to wait less.
Don't require an input from the user once the setup is complete. Make it an opt-out not opt-in after setup.
Hope that's at least a bit helpful. Good luck!
Great advice, thanks Louis. We'll start looking at how we can put some of these into practice.
Interesting dilemma. Basically I agree with @louisswiss. Good comment!
The wait is for indexing documents, I assume, judging by your product? I think a setup wait is fine as long as it doesn't come as a surprise, or confuses users.
Once your indexing has started, show some kind of progress meter along with estimated time and relevant information:
And maybe also give them a way to learn more about your product and its benefits while waiting, for example a video with the basics, or just a link to a simple tutorial. Right there on your page. "While you're waiting, here are some quick tips and tricks for getting the most out of [product]."
Maybe you're already doing all or some of this, but this is what came to mind when reading your post.
Edit: To catch some people who may drop off during the setup stage... If they haven't started using the product within a day or two of your indexing, send them a second reminder. "Hey, we just wanted to make sure you know that your [product] account is all set up and ready for you. You can now find any document in seconds. If you have any questions, just reply to this email."
Create a dummy API that will work identical to real one. This will let users to use the platform from the word go. When you're done integrating real APIs for customer, notify them of this with a cute email describing why it look so long and ask them to update their product.
Hey, thanks for your reply. I understand the concept but I think it'd be difficult for us. Our product is like a search engine for a user's files. If we offered "fake data" they wouldn't know what to search for. A user's first reaction once installing our product is to search for something they know exists in their data. I'm not sure how we could dummy this out with fake data.
From a perception perspective:
Ask your stronger/power-users: how was the signup process for you? What was the timing like? Did we give you enough information or not enough information to get rolling quickly?
Then ask some recently signed-up users the same questions.
Now you've quantified the time lag from your users instead of from your own perception and you'll have a clear idea of the pain. Then you can work to devise some solutions. For that, ask your users again: what would our signup process look like if it were up to you? Not the timing, we can't control that, but what could we do better to make it more clear for you? Would it be an alert on a page? An email? A customer success manager or consultant guiding you through things?
From a technical perspective:
That's the easy part. Figure out what your users want as a Nirvana-like end-state first. If they have to sign up all over again, how should the system hold their hand (or not), and make it so.
I like the idea of a sample or dummy API or make something that you could wire up and make public.
You could also try take some of the popular API's and setup some sample account that every user would get by default. So while your gathering information the user can have a look at some real data in a real API. Maybe something you could make public like https://baremetrics.com/ do with their demo having the real data.
Also try sending some videos based off this sample information to show off or introduce parts of the product.
When you have the users data ready send them an email and a video to remind them or help them get started now the product is ready.
Nice idea sending users a video or an email when the product is ready - thanks! See my response above for the trouble with dummy data, but maybe there's a way around it.
I see what you mean, so it's the index of the users files you are waiting on?
I would still look at it but create a small folder with 3 or 4 files and use a placeholder or the video to show them it in action. They can do the same searches they see in the video.
Also maybe show something that shows your working to load the data, an animation. And let them search the fake folder while they wait.
Yep - exactly. I think it's a good idea to show some videos or an interactive tutorial whilst they're waiting. Thanks for the ideas!
cool, let me know how it goes and if it helps user signups.
I would recommend providing some sample data whilst the real data becomes available. This way the user will be able to play around with the dummy data to get a feel for how your product works.
Not sure how it currently works for you, but I would definitely recommend to have a simple and fast signup page (name / email / password and not much more than that)
Once they are signed up and logged in, refer the users to a "Setup" area with a progress bar that shows how many steps are left or something like that.
I'd also recommend to have on that page a live chat / support option
We have something similar to that already. The problem is that one of the "steps" takes a long time and the user (whilst he can continue), does not see the value of the product until the step is finished.
Gotcha.
So perhaps like other guys have said, you could try a dummy API so the users can test the product on dummy data.
At the end of the day, the long signup is inevitable, so you'll have to create enough value beforehand. (Unless you can automate or shorten the signup process)
Yep - I talked a bit about using fake data. It's not ideal because our product helps users find things in their documents. So if we use mock or dummy data they won't know what to search for. But maybe we have to be smarted about it - thanks for your feedback!
Is it possible to give them a sample project/data to play with first? And/or maybe a guided tutorial?
It reminds me when I was younger I would buy a game and then race home to install it and have to wait like 30 mins while it installed. I was still excited the whole time because of the value I knew I would be getting.
Yep, exactly. We're trying to do everything we can so that the user has the same feeling.
From a users perspective, as long as I was forewarned I wouldn't really mind. From a developers perspective, I would probably design it so there's a holding page of "Come back soon we're doing XYZ" with an animated gif or something like that. Include a note that you'll email them when it's ready, and just trigger an email upon completion of processing.