I have a site where a regular user can delete records, where what happens is that an IsDeleted flag gets set. On administrative pages, a privileged user can delete records where an actual SQL DELETE permanently discards such records. The difference is important for obvious reasons, and I want to use a consistent term to refer to the one form of deletion vs. the other. I've been playing with the words Remove, Delete, Discard and possibly Recycle, and Archive.

My question is: are there standard user-facing terms that distinguish these two behaviors?

  • 3
    Just a few examples: In IMAP, the terminology is delete (soft delete) vs. expunge (hard delete). In Windows, the terminology is delete (move to recycle bin) vs. permanently delete (remove from recycle bin).
    – Heinzi
    Feb 9, 2013 at 15:55
  • 2
    As long as you don't go down the delete, really_delete, really_really_delete road, you should be fine IMO. Feb 10, 2013 at 7:51
  • @HakanDeryal Isn't really_delete fairly close to permanently delete (from Windows) :-) ?
    – KajMagnus
    Jun 19, 2013 at 21:01
  • 1
    Yes, they both sucks. Jun 22, 2013 at 17:00
  • How about delete vs. purge?
    – tofro
    Feb 15, 2017 at 22:37

4 Answers 4


For regular users they click the Trash icon to flag a record for deleting. The privileged users can then view the contents of the Trash and delete those icons.

Delete is permanent, where as Trash can be thought of as a location.

The user can move records to the Trash.


The privileged user deleted records in the Trash.

The other words don't work well for me.

I don't like Recycle because it implies a different meaning then simply deleting records.

Archive implies permanent storage, and possibly moving the records to offline storage.

  • Your answer has forced me to reconsider my original question. While @Heinzi's comment better answers the question I thought I was asking, you answered the question I asked more precisely than did he. What I am left contemplating is whether there is a difference between a hard and a soft delete if, from the user's standpoint, neither should be recoverable. Or I could just be overthinking the whole matter. Feb 11, 2013 at 15:37
  • Well, for me soft delete implies a deletion that involves software, and hard delete implies a deletion that involves hardware. A soft delete of a file would be marking the file as erased in the file system (but the bytes are still there on the hard drive), where as a hard delete would be writing zeros to all the bytes on the hard drive to ensure it can not be recovered. For a database a hard delete would be compacting the database to ensure the old record can not be recovered by an administrator.
    – Reactgular
    Feb 11, 2013 at 16:55

One interface I saw had options to Retire (soft-delete) or Delete (actually remove) data from the database.

  • 1
    That UI Designer clearly never saw the movie "Blade Runner", then.
    – Phill W.
    Jun 22, 2016 at 11:42

Soft-delete and Hard-delete. I'm sure the difference is obvious enough.


I use:

Delete for soft-delete

Destroy for remove from database

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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