If we select a bunch of files and bulk-rename them all to "Name", they will usually get names like "Name(1)", "Name(2)", "Name(3)" etc.

If then we go on to delete "Name(2)", and then take a new file and try renaming it to "Name" - should it get "Name(4)", or should it use the "gap" we've created and get "Name(2)"?

I tend towards the "highest+1" approach, but Windows seems to be taking the "filling gaps" approach.

  • Does it matter from user perspective? It's an arbitrary name either way, something that always will surprise someone.
    – jazZRo
    Commented Feb 1, 2022 at 11:11
  • @jazZRo I believe it does. If I add a file to such a list I will assume I need to look for it at the end of the list, not in the middle. Commented Feb 1, 2022 at 11:30
  • What I mean is: Even when you know what is expected by most people, still someone will think that it will appear between file 1 and 3, someone will think it will appear at the bottom and another will think it will appear at the top. Whatever you choose it will always confuse someone. So it doesn't matter from UX perspective. What matters is how you show the user the (location of the) new file, so that is what you should be focussing on imo.
    – jazZRo
    Commented Feb 2, 2022 at 10:03
  • 1
    Well the only thing I tried to say is, don't waste too much time on this question because if predictability is key and you can't guarantee it to be predictable, just keep it to conventions like the solution in Windows if that is what people are used to and focus on other ways to improve the experience.
    – jazZRo
    Commented Feb 2, 2022 at 11:33
  • 1
    @jazZRo I agree completely, perspective is important :). Commented Feb 2, 2022 at 11:56

1 Answer 1


Yes, because there isn't another simple way to do this that is practical. Generally the auto-increment on filenames allows users to stick to the default naming convention to keep track of the number of files that have been created. It also prevents the issue of ever having a duplicate filename, even if the operating systems or applications allow this.

If you try to fill in the gaps, it means that there is an extra check that needs to be done, and you still can't prevent issues of name duplication if you move the file to a different directory that is not checked by the application. In addition, you now have to use the creation date to know the most recent file created, and you lose track of how many files have been created.

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.