How To Treat Website Visitors With Respect
One important way to show respect to website visitors is to treat what they type in as something precious.
Have you ever been in these situations?
You fill out a form and submit it. You made a slight mistake (maybe missed a field). When the form comes back to you it loses all - or at least some - of what you have entered. Luckily, such clueless websites are getting quite rare.
You accidentally click on "Reset" button and everything you typed is immediately wiped out. Is it your own fault? I do not think so - web developers should not have put this button on the form in the first place. A Reset button is an old - and I think very stupid - convention they blindly followed. Do you ever really need a "Reset" button?
You accidentally click somewhere outside of the webpage you are working on - maybe on a link to another website. It loads in your browser and your current form entries disappear in the void - Back button does not help...
You are distracted with a telephone call. You come back to a half-filled form, complete it, Submit... only to get "Your session has timed out. Please login again." All your data is lost. ARGH!!
I have just lost all my very own precious time on an airline reservation website. I filled out the form and was asked to login to confirm my status. After I typed an incorrect password, my flight data disappeared.
What can - and should - be done about it?
How do you avoid these problems in you web app? (And you really want to do it. Even if it happens once in a 1000 times, it generates a lot of ill-will - and hurts your business results)
One simple approach is to split long entry forms into several steps/screens. Ask for the most important information first - like name, email, phone number. This makes good business sense because if your visitor does not complete the form, you can follow up. Quite possibly, he/she might have meant to complete it - but was distracted. One gentle reminder can boost your conversion rates!
Another good idea for a lengthy form is to let people save their work at any moment - and come back to finish it later. Maybe they are missing some key piece of information - or maybe they have an urgent task to do. Give them a button like "Save Draft".
When you implement such a feature - do not bug them to fill out all mandatory fields, let people save whatever they have. Only check mandatory fields when they submit the final form.
Going further, implement auto-save of user input every few minutes. A really nifty way some websites are doing this is auto-save your input immediately after you go the next field. Since the save happens in background (using Ajax), user is not inconvenienced in any way - he does not have to wait. Google Gmail is a good example - it auto-saves your draft email every few minutes and you can also save manually at any time.
The auto-save feature can work even if user is not logged in (using cookies) - but be careful - this has privacy implications. What if a visitor uses a public PC to access your website? His information can be accidentally made visible to the next user of that PC. Let people know if you are auto-saving their data - and let them disable this feature and/or delete saved data at any time.
Finally, about those "session timeouts." My recommendation is that whenever possible you should not kick people out of your system if they are in the middle of a long form. Geeks call such code "keep-session-alive". Sometimes this is not wise due to security issues - then you have to ask them to login AND still keep the submitted form data (not easy but doable).
Bottom line: Showing respect is always a good idea - whether we are talking about someone's communication skills or about a website.
Dmitry Buterin is the Chief Apricot at www.WildApricot.com and offers additional usability strategies at his blog, www.Usability.ca. |