I am a designer for an enterprise software that deals with huge data grids. As input is a huge part of our software, I am looking for opinions on what is a good way to create new rows.

Current : Click on a "+" icon to add a new row. This is obviously annoying when it comes to entering a lot of rows.


  1. auto add a new row after users finish typing in the last cell. My worry for this input method is that it is not as straightforward and users don't have to fill up all the input fields all the time. It makes no sense for users to simply tab to the last row just add a new row.

  2. default several rows for them. We have a rough idea of how many rows a user might need so this design might work. This has to be used together with one of the other input method to work.

  3. pre-set a bulk adding amount, so instead of clicking 5 times for 5 new rows, users can get 5 rows with just a click.

  4. allow users to define the number of rows then add them into the table. Visually, it will be a numeric input field and a "+" button.

Personally, I feel that the fourth method gives user more control over how many rows they need and it is rather easy to learn how to use it. I intend to use a combination of the second method and the fourth method.

Are there other ways that I have no yet explored?

3 Answers 3


I don't think you necessarily need any buttons at all. If you're okay with adding a new row if the last cell is filled, how about always having 1 spare row? Then when 1 of the cells of the empty row gets filled, add a new empty row. This way you'll always have an empty row to fill. For neatness you could have a simple script remove the empty/last row when saving or printing or whatever.


If you stick to any of your four points I believe you need the "+" button, which should add one new row or display a menu with add one new row & other possible ways of adding rows. About your points:

  1. I don't think it is a good idea to trigger actions in behalf of the user. Even if you decide to apply this method it is more like a feature for power users.
  2. This method sounds like a good idea, as long as when the user finishes editing/inserting if there are empty rows those don't show in the view mode. You might want to consider adding much more fields than the ones you think the user needs, so you get him covered.
  3. This seems to work but I'm not sure it is the most intuitive way to solve it.
  4. This adds an extra step for the user that, although gives him more control, I feel is not necessary.

Some other alternatives:

  • The insert mode might not need to be the same as the view mode. So if you move the insert to a Dialog, for example, it might be easier to insert fields and easier to add more elements.
  • The insert mode might have an "infinite" number of rows so you don't need to deal with adding rows.

I would prefer a combination of options 1 and 4 in the following fashion.

When the user gets into the insert mode, ask them how many rows they would like to insert, and generate that many rows in the insert mode screen. You could also populate the text field with a default value, preferably the count of rows you know the user is going to insert, or some value that the user has previously used in the text-field.

Insert Form Generator

Superusers could tab from the last cell and a new row would be added.

Simultaneously, keep the text field with plus sign at the end of the table in case the user wishes to add more rows. That way, even a new user would be able to figure out how to add new rows in case they run short of rows.

Add new row/rows for table.

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.