I know that all mails already have an inbox label applied, but I want the label exclusive of all my other filters.

I want to be able to keep track of all emails that will not otherwise be labeled so that I can simple click on the "other" label and delete them all at once or view them collectively. Deleting one at a time is a drag.



You can create a filter that will act on all messages that are not labeled by any of the filters listed above this one (filters are processed in the order listed). Just create a filter entering in the field "Has Text" the following: has:nouserlabels

Potential issue: You have to make sure this filter is the last one on the list of filters. When I created it for the purpose of setting, it ended up near the bottom, but not the last one (to my surprise). Apparently, it's no longer guaranteed that the last created/edited filter will be listed at the end. (This used to be the case; see How can I reorder Gmail filters?)

And even if the filter is the last one now, sooner or later you'll add more and forget about that one.


I think a better solution may be to bookmark the search link in:inbox has:nouserlabels which will bring up unlabeled messages in the inbox. There is a potential issue here too:

You'll probably see a lot of conversations that have user-defined labels when you search for [has:nouserlabels] and that's because "Gmail applies labels to individual messages. In this case, another message in the same conversation thread has had a label applied to it."

If this becomes an issue, you can temporarily turn off conversation view for this search; there is a switch on the first page of settings.

I wish there was a search parameter like conversation:off because it frequently makes sense to disable the conversation view specifically for the display of search results. Alas...

  • A workaround regarding the conversation view is to use an IMAP client – Rubén Aug 4 '15 at 2:41
  • Another workaround is to use Google Apps Script. See Advanced Gmail Filters That Aren’t Available in Gmail – Rubén Aug 4 '15 at 14:47
  • What we need is a script that goes through the mailbox and if any message in a conversation has label 'foo' it applies it to all the messages in that conversation. – Sherwood Botsford Feb 15 '16 at 23:06
  • @SherwoodBotsford Why does not this work for you? – user79865 Feb 15 '16 at 23:07
  • If you reply to a message, your sent message does not have the label of the received message. Now this message will show up in any search for has:nouserlabels. I don't want to apply the same label to all unlabeled messages, I'm searching for a way to make sure that all labels in a conversation are labeled uniformly. – Sherwood Botsford Feb 15 '16 at 23:28

Short answer

If your list of filters is short, create a filter for the complement of them.

Useful search operators

  • NOT -
  • OR |
  • Parenthesis ( )


One filter

the complement is -from:username@domain.com

Two filters

  1. from:username@domain.com
  2. subject:"the non-wanted subject"
    the complement is -(from:username@domain.com|subject:"the non-wanted subject")

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.