I have a checkbox grid available to group administrators that allow them to mass view/change settings for all their users. (Users themselves and their administrator have access to a setting page to change settings for a single user.)

Example of the grid: Montrosity

This solution worked great until groups started getting a lot of users and settings. The usability is still acceptable (hovering a table cell highlights the current row and column), but it doesn't look good with this many values.

Is there any better way to make the users' settings readable and editable at a glance? Both names and settings are usually longer than in the example too.

  • Do you need to show all this information in a single page?
    – Alvaro
    Mar 30, 2017 at 16:15
  • Is it necessary to provide user access controls at an individual user level? Why not cluster users under standardized groups which have a pre-configured set of permissions/options? Then you can just move the individual to the proper group that matches the permissions/settings they need.
    – mtv.vac
    Mar 30, 2017 at 17:02

3 Answers 3


Would something like this work for you? I present it on a bit limited set of data, but the user/right labels could be quite compact (= more rows) and you would avoid having columns (= text would not need to be squeezed, and in general you would pack more rights this way).

enter image description here

Whenever a User is selected (or hovered), connections to their rights are shown:

enter image description here

Similarly, the other way around:

enter image description here

Whenever you select (click) a user, he becomes permanently selected (until you deselect them), so that you can remove or add rights:

enter image description here

I know this one might be a little bit harder to implement (but I am sure if you show this to a JS dev, they may find a proper library to do it, or even go beyond it).

The question is if this provides enough clarity for you, as this idea does have its shortcomings.

  • I like this a lot, and there's still scope for sorting, filtering, grouping rights or users, and for selecting all/none. It focuses on objects and connections and removes the sparse nature of the grid view. The horizontal nature of each item means long names are not so much of an issue. Mar 30, 2017 at 22:11

For a batch change on group of attributes, for a selected another group of attributes, you can follow some of the practices JIRA software uses. Step by step process is something like this:

  1. You select e.g. Users you want to apply THE SAME changes on
  2. Then from the list of all the settings (it's still a long list, but at least not a grid), you select the new setting value (if should change).
  3. You review the settings you're about to change (e.g. 5 out of 50)
  4. You apply the change

All that reduces cognitive load by separating the process into: what's the context of changes I wanna do + what are the changes I wanna make.

  • It's a good solution. Could you share a screenshot of the process?
    – Sooraj MV
    Aug 26, 2019 at 12:55

The best way I've seen is the way spreadsheets do it: lock the explanatory row(s) and column(s) and scroll the rest. If you want to allow comparisons of non-adjacent columns or rows, allow the intervening ones to be temporarily hidden. For changing all settings for some user, or one setting for all users, again follow the spreadsheet model and enter the value off-grid, e.g. in the header row/column. Whether you also change hidden rows/columns can be a user preference item.

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.