The best way for businesses to improve their understanding of consumer behavior is to gather as much data as they can regarding the purchasing behavior of their customers.
One way that this can be done is through loyalty cards of the sort that American grocery stores use. By tracking what customers buy, the stores can better understand what combinations of things various customers buy, for example.
Another way to do this is by observing customer behavior directly. Firms might look at the ways in which customer move through their stores. They might use this data to determine where to put their displays. I recently read an article that said that customers buy more things at places like Wal-Mart when the aisles are relatively cluttered. This is the sort of data on customer behavior that can be very important for a firm to have.