I need to allow users to select products / sub products that are up to 3 levels deep.

We also are only able to display 100 top level products at once due to technical constraints, this is currently achieved by requiring the user to type a certain number of characters and it will fetch nodes based on the search criteria.

Here is an example picture of the input:

enter image description here

The data structure seems to fit this searchable tree select well, but general feedback currently is that it is difficult to use with 1000s of products.

Any thoughts on how this could be improved or if there would be any better UX ideas for handling 1000s of nodes?

Please let me know if I can provide any more information, this is my first time reaching out to the UX stackoverflow :)

  • 1
    What exactly is difficult with your searching interface?
    – Nash
    Commented May 4, 2021 at 7:26
  • 3
    Is it an option to flatten the hierarchical structure for the search? Then users could search on the lowest level. The hierarchy could be displayed as tags for each element. (I am thinking about how jira does it with its tickets which have epics)
    – Nash
    Commented May 4, 2021 at 7:29
  • Is the tree structure absolutely necessary? What about guiding the user through the research asking some questions and filtering the list as they answer them? Commented Aug 11, 2022 at 9:06

1 Answer 1


When the user is entering information to a search input and expecting results to be returned, the last thing that they want to have to do is probably to do another search through the results to find what they are looking for. This is potentially where you want to limit the amount of results returned by introducing more filters and parameters to avoid this problem.

However, let's say that this is unavoidable and a large result set will sometimes or often be the expected result, then you'll have to structure the search result so that the user can find the values that they are looking for. I would suggest that a more tabular structure to line up the different values or fields in the row item and creating some type of sortable order that you can't easily do in a tree structure would be ideal (as @Nash suggested in the comments).

Keep in mind that a tree structure is good for organising information that have a nature hierarchy that a user has to traverse in a logical order to locate the node, but in your case the search strategy and result expected might not necessarily follow this pattern even if it is easier to implement with the underlying data structure.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.