We’ve been buying things on the web for roughly two decades now, but the process and UI for making purchases has been very slow to improve over that period of time. As I was making a pledge to a Kickstarter project yesterday, I was delighted to notice that the process seemed less painful than normal. Here’s what I saw:
They started off by providing some nice smart defaults. The credit card expiration starts at this month and this year. I’m shocked by how many payment forms default the expiration date to a year that’s already past, let alone to the current month. Kickstarter goes one step further and doesn’t show any options before the current year, thus removing one potential validation error. They also seem to preselect the State and Country. I’m not sure if they’re doing this based on my profile information, IP, or location data provided by my browser, but it saves me a couple steps in filling out the form. State and country are typically pretty safe bets for smart defaults to preselect depending on the method you use to discover them, and save the visitor time finding the right option in what can be very long dropdowns.
In addition, once I started entering my credit card number, they automatically selected the card type based on that number. This saved me another additional step and removed another potential validation error for them. (Entering a MasterCard number and having VISA selected from the Card Type is a very frequent error — at least in my household.)
What could they have done better?
I love seeing forms that use good smart defaults. It often saves the visitor time and can help prevent unnecessary validation errors. That said, here are a few things Kickstarter could improve upon:
- Prefill the credit card owner name with the profile name if one is available. In my case, I’d have to change it slightly because I use a nickname, but I imagine this would be a good smart default for the vast majority of users. For the small percentage that have to enter a completely different name, it’s a relatively minor hassle and not much different than starting from a blank field.
- For certain countries, automatically fill out the city and state from the ZIP or postal code. Because Kickstarter has a pretty big international audience, it may be impossible to prefill city and state from every potential postal code, but with a starting point of country and then postal code, they could prefill city and state for a decent number of countries.
Want to make your forms better?
- Use your available data (profile information, IP/location information) to provide smart defaults.
- Determine the credit card type based on the card number to save your buyer a step.
- Zippopotam.us - A free API for getting city and state from postal code for a large number of countries
- IPInfoDB - Look up location information based on the visiting IP address. This method is not perfect, especially with mobile devices, but may help if location information isn’t available from profile data.
- You can even get super fancy with a single input credit card form.