Use sensible defaults when building a web, mobile or desktop application Apr 25, 2011

While working on migrating “”, a Danish ridesharing service, to Rails 3, I figured it would make sense to look into the existing database to figure out if I could add some sensible defaults when creating e.g. new rides. The site already contains a decent database so I figured it would be rather easy to measure which defaults to use.

As an initial example, I would like to know how many seats were shared on each trip and therefore I did a simple query as shown below:

Number of seats available for created rides on

From this, it is pretty obvious that I should use “3” as a default number of seats available. In this case, some common sense would probably give you the same result (four seats in a standard car minus one for the driver).

Same type of query can be used to figure out the most popular seat price:

Default price per seat for rides

It is even possible to remove options if you look into providing sensible defaults for your users. As in this case where the existing contains a checkbox for specifying if car is “smoking” or “non smoking” area. A query showed me

Smoking vs non smoking on

i.e. we really don’t need to have users decide on this .. more than 95% of all rides are non-smoking rides so the rest should either write it in a comment field or edit the ride afterwards to mark is specifically as “smoking”. So in this case we just removed an option from our wizard to avoid clutter. Lovely.

The examples above should go for all defaults .. also stuff your marketing department would like to decide e.g. when a user creates an account and have to uncheck instead of check a “Subscribe to our daily, fancy, not-to-miss newsletter” box. Focus on pleasing your users by pre-selecting choices they probably are going to make themselves … follow the “don’t make me think” principle! It makes users happy and allow them to complete a task faster.

Using sensible defaults goes for any type of application you are creating being for web, mobile or desktop.