Blunt statement: nobody wants more than 20 results.

I’ve done web apps for many things, especially in Faveod and Ruby on Rails. It’s easy to have your brain think in CRUD mode, and it actually maps people’s uses pretty well. Listing, showing, editing data.

But we often have to choose from a huge list (hint: use autocomplete), or display the whole data set like Excel would.

If Google has shown anything, it’s that nobody wants that: after 20+ results (I dare say 10 results), people get tired, they miss information, and they can’t act on it.

If you have more than 20 results anywhere, you should limit that. Try this, and know it’s a good time to ask the customer for more input.

— — —


No one wants the list of all shippings.
Try providing shortcuts to the most recent shippings.
Ask if users need history and how they’d access it.


No one wants the list of all customers.
Try providing the list of most important customers.
Ask if there’s one or more relevant scoring.


No one wants the list of all payments.
Try providing the list of failed payments.
Ask what users do with payments and if there’s a hidden state machine.


No one wants the list of all products.
Try providing “products per category” to customers, “number of products per warehouse” to shippers.
Ask how many of each thing you should be considering; consider different points of view.


No one wants the list of all of this, but they want to find relevant data.
Try providing filtering options or search fields: names, amounts, dates and numbers with a range from…to and so on.
Ask for the most useful searches, and provide autocompletion if possible.

Report & graph

No one wants the list of credits mixed with debits. Attention would drop even faster.
No one wants to match the list of credits with debits.
Try providing the sums (per time, like “last 24h”, “per month”, “compared to last year”), and a report showing the evolution of cash on hand over the last days or weeks.
Ask which objects make sense with other piece of data, how they evolve with time.


If all else failed, pagination will help your customers browse the list.
They’ll likely get tired of it and demand an Excel export.
That’s another problem, for another day :)

— — —


We’ve talked about listing things, we can talk about inputs.
Many frameworks have some sort of autocompletion, often with AJAX being possible.
You should think about which information are the best to search by and display.

Follow the process

Perhaps you don’t want to “create a reminder” then choose “for customer X” from thousands of customers. If you are making an application for customer support, they probably already used search or filters to find the correct person, then from that person’s page they should have a simple button opening the “create reminder” which would automatically open the form, with the customer already selected.


Specific products will have specific answers.
Travel apps will use your GPS or show maps, ecommerce will add recommendations.

If you can make my life easier, please do, I’ll be a faithful customer or a vocal user!