I'm working on a checkout system, and there are instances where an existing user can have up to 8 delivery addresses. Is it in your opinion a good experience to have that many, or have an unlimited number of addresses - increased cognitive load? Or should the system limit the number of stored addresses - reduce cognitive load?
I can't really imagine many users will have more than 5 active addresses though as with any user data, the user always knows best.
I would do the following and allow the user to store as many as they need:
- Allow the user to set a primary address which is used as the default.
- Offer to save any other addresses the user uses on checkout.
- At checkout display their primary address followed by the saved addresses ordered by last used first. You could also show primary, last used, and then sort the rest by most used if users are more likely to use the same address multiple times.
- Optionally delete secondary addresses after they haven't been used for a while.
I have 14 delivery adresses in my Amazon account. Granted, many in there I have only used once (when I was on holiday somewhere, or to send a gift to someone). Some are no longer relevant as I moved since.
However, I'm pretty sure many people have a lot more than that, and probably use many of them on a regular basis.
Just don't set any arbitrary limit at all.
Do indeed have a default address, and allow the user to easily make another address the default (if they select an existing address other than the default, or add a new address).
Sort the rest by most recently used or most frequently used.
Add UI to add/delete/edit addresses.
Not UX related, but when you edit an address, make sure it doesn't affect previous orders. Either copy the address in the order, or create a new copy of the address and mark the previous one deleted.