More Form usability

Freshness Warning
This article is over 15 years old. It's possible that the information you read below isn't current.

Paul Scrivens has some additional ideas about making Web forms easier to use.

He suggests using a single name field instead of separating first name from last name unless you really need the names separated. The problem with this is that you never know what future uses you might have for that data. If you don’t make sure it’s in a format you can use, it’s useless. I’ve been on countless projects where I had to go back and reconstruct data that people didn’t collect because they thought they’d never use it. Common sense should prevail, however. Blog comments would probably be overkill to have separate fields. Use what makes sense in your situation.

I also suggested to Paul that you should only provide a single phone number field and said that you can clean up whatever the user enters with some simple code. I should elaborate. I’m not taking a programmer’s view for entering phone numbers, I’m taking a user-centered view. As Paul noted with the first name last name issue, it’s harder and more time consuming to fill out two or three fields than it is to fill out one. People see a phone number field and they start typing. A hunt and-peck typist will often have entered their entire phone number before they look up at the screen and realize that all the system accepted was their area code. They then have to make the conscious effort to click in the next field and fill it out. They then switch back to their mouse, click the final field, and fill it out. It’s amazing how many users don’t tab through fields.

One solution I’ve often seen to this is to automatically progress to the next field when the required number of characters are filled out. This frustrates users. They made a mistake on the last digit, but hitting backspace doesn’t work because they’re now in the other field. Or they usually tab through fields so they enter the area code and hit tab, skipping the second phone number field.

Of course, it all depends on the situation. If the application is an internal data-entry form that is used hundreds of times each day by the same person, you need to optimize for speed and to reduce keystrokes. In that case, you can (and should) sacrifice usability for speed. All that is required to overcome the lack of usability is a little training. Call center operators can easily learn that when they enter an area code, the cursor automatically moves to the next field and will actually appreciate the step. In this case “easier” actually means “faster.”

But if the application is something that someone is only likely to use on rare occasions, optimize for usability at the expense of speed. A checkout form on an ecommerce site is a good example. Make it easy to use. Anticipate the choices they are going to make and account for them. Ask for their phone number and let them enter it however they want. You can clean it up with the code. The thing is, unless someone’s a programmer or familiar with database concepts, they won’t wonder at all what format their number should be in. It doesn’t occur to them that there’s any reason a phone number would need to be in a certain format.

Paul Scrivens
July 18, 2003 12:35 PM

On the single name field idea, I believe your last sentence sums up my thoughts: Use what makes sense in your situation. Great point on the phone numbers and I completely see your point. However, I still believe that it would be easier from a user's perspective if they saw three small fields and would automatically know how they should input the phone numbers. Therefore you are guaranteed to get the data in the format you want. Yes it is somewhat more difficult to input data into more than one field, but for this example I believe it would be best. However, though you are making me doubt the way I am looking at the problem so I will definitely have to think this over some more. All in all you made some excellent points (as usual). Thanks for the insight.

Paul Scrivens
July 18, 2003 1:42 PM

Alright, Microsoft has forced me to change my mind on the whole matter and I totally agree with you now. I was installing XP on a computer and messed up on the serial key part and tried to backspace to the previous box and it wouldn't let me. Sounds like what you were talking about. Point Kalsey.

Jemaleddin S. Cole
July 19, 2003 6:04 AM

The worst thing about auto-advance forms is that I'm accustomed to hitting tab after each element - I see three phone number blanks, I type "123 tab 456 tab 7890". Except what I get is "(123) -456" and "7890" for my address or something. Blech. The principle of least surprise is called for here.

July 21, 2003 5:12 PM

About this matter, met me tell you about my experience. I live in Belgium. And since i got my Visa, i started buying stuff online, mostly either from france or from USA. And about those phone number fields, let me tell you this: if in USA, phone numbers are like (xxx) xxx-xxxx, in France, they are like 0x xx xx xx xx (ten digits). But in belgium, they are either 9 digits. BUT! Mobile phone numbers are 10 digits. All numbers start with a 0, and zone field is either 3 or 4 digits. So a big problem i had, when i was asked on a few websites for my phone number, was to be told that my phone number was not correct. Even further, when i write down phone numbers anywhere, i often write them in international format: (+32 (84) 315450), and as a result, this is what i usuall type in phone fields in forms (without the parenthesis). And of course, most form validation schemes tell me "to use numbers". Now about the multi-fields trick, it could be though about deeper. Like, automatic jump to next field, but going back to previous field if either "tab" or "backspace" was pressed... It Can Be Done.

December 9, 2003 11:58 AM

I'd like to stress the points ThaNerd made, think about international users! (and international does not just mean Canada like Crate&Barrel assumes). Zip or Post Codes can be anywhere in front or behind the city, there may be numbers and letters, special characters... Same with the phone number. Just like ThaNerd said, he'll put it in the form in the correct international format so why not just trust your users to make the phone number usable for you. Phonenumbers can have lots of digits don't limit the field to 9 digits! (so annoying!) Just some suggestion from germany.

Nick Gassman
December 13, 2004 3:44 AM

If you have a free-format field, and rely on sorting it out, then software may or may not be able to tell if people have included and international code or a region code. Also, if you require the international code, you could just indicate this in text against the entry box, but it would probably be clearer to the user if there was a separate entry box for it.

Your comments:

Text only, no HTML. URLs will automatically be converted to links. Your email address is required, but it will not be displayed on the site.


Not your company or your SEO link. Comments without a real name will be deleted as spam.

Email: (not displayed)

If you don't feel comfortable giving me your real email address, don't expect me to feel comfortable publishing your comment.

Website (optional):

Follow me on Twitter

Best Of

  • How not to apply for a job Applying for a job isn't that hard, but it does take some minimal effort and common sense.
  • Movie marketing on a budget Mark Cuban's looking for more cost effective ways to market movies.
  • California State Fair The California State Fair lets you buy tickets in advance from their Web site. That's good. But the site is a horror house of usability problems.
  • Customer reference questions. Sample questions to ask customer references when choosing a software vendor.
  • Comment Spam Manifesto Spammers are hereby put on notice. Your comments are not welcome. If the purpose behind your comment is to advertise yourself, your Web site, or a product that you are affiliated with, that comment is spam and will not be tolerated. We will hit you where it hurts by attacking your source of income.
  • More of the best »

Recently Read

Get More

Subscribe | Archives


Assumptions and project planning (Feb 18)
When your assumptions change, it's reasonable that your project plans and needs change as well. But too many managers are afraid to go back and re-work a plan that they've already agreed to.
Feature voting is harmful to your product (Feb 7)
There's a lot of problems with using feature voting to drive your product.
Encouraging 1:1s from other managers in your organization (Jan 4)
If you’re managing other managers, encourage them to hold their own 1:1s. It’s such an important tool for managing and leading that everyone needs to be holding them.
One on One Meetings - a collection of posts about 1:1s (Jan 2)
A collection of all my writing on 1:1s
Are 1:1s confidential? (Jan 2)
Is the discussion that occurs in a 1:1 confidential, even if no agreed in the meeting to keep it so?
Skip-level 1:1s are your hidden superpower (Jan 1)
Holding 1:1s with peers and with people far below you on the reporting chain will open your eyes up to what’s really going on in your business.
Do you need a 1:1 if you’re regularly communicating with your team? (Dec 28)
You’re simply not having deep meaningful conversation about the process of work in hallway conversations or in your chat apps.
What agenda items should a manager bring to a 1:1? (Dec 23)
At least 80% of a 1:1 agenda should be driven by your report, but if you also to use this time to work on things with them, then you’ll have better meetings.

Subscribe to this site's feed.


Adam Kalsey

Mobile: 916.600.2497

Email: adam AT

Twitter, etc: akalsey



©1999-2019 Adam Kalsey.