I'm developing a web based reporting tool that allows users to give their report a title, pick their metrics, run/save reports, and then after some wait due to backend processing, view the results (some charts, tables, and infographics).

Currently, we have a ribbon around the top of the report building page with buttons that say "New", "Generate", "Save As", "Schedule", and "Export".

"Generate" implicitly saves a report and makes a request to the backend to fetch the report results. If you edit an existing report or one that was already "Generate"-ed and click "Generate" again, it saves/overwrites the existing report and reruns the processing so you get the updated results.

Save As duplicates a report under a new report title (user is prompted for new title).

So the application kind of uses a document model like in MS Word, but the difference is there is some action behind saving the report.

At various points over the course of the development of this app, these buttons have had different names based on which business owner won an argument that week, and I think the current names are not good. When I first saw "Generate", I froze and didn't know what to do for a second, and I am very familiar with the app. A tester also had a similar reaction as me.

This is what I think each button should say.

Option #1: New, Run, Duplicate (or copy maybe?), Schedule, Export

This let's users know there is an action that's going to be performed. But user does not explicitly know that "Run" will save/overwrite a report.

Option #2: New, Save, Save As, Schedule, Export

The problem with the "Save" is that a user may not know that saving kicks off a report generation which will give them results to view.

What is the best way to name these buttons?

1 Answer 1


I think with any naming conventions, consistency, familiarity and logic are your best friends.

The problem with the word "Generate" is not much the term, but the lack of context around it. "Generate New Report" makes more sense than "Generate" or "New". But keep in mind that once users know what "Generate" means, they probably don't need to be reminded that it means "Generate New Report".

The problem with the word "New" is that you are creating a menu that uses a noun with a bunch of verbs, so the consistency in language needs to be addressed. And the problem with the word "Duplicate" is that it can be a noun or a verb.

I think you can say the same thing about naming conventions in general. It is not that they are not suitable, but as with every type of application you have to treat new users a little bit different to existing users. Rather than creating two sets of labels, you should aim to either find the common denominator or create software interface that can adapt to usage.

  • Thanks. Really helped to clarify my thinking a bit. I now think New is out of place as well since it's a noun instead of a verb like the rest of the commands. Probably something like "create" or "create new" would work better. I think adding the text "Report" to the end of each button would be a little too wordy perhaps, and our clients will presumably be frequent users of the application so they will quickly understand what it means without having to be explicit about the wording.
    – JesseDahl
    Jun 9, 2015 at 22:17

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.