I am fetching emails via POP from another Gmail account and am applying a label @Private to all such emails.

Now, on my private email I also receive emails from services like Bitbucket. So I wanted to filter those emails as well and have created a filter @Bitbucket for all such emails.

However my @Private is now overcrowded with @Bitbucket emails as well, because Google first applies @Private label to all emails fetched via POP, and then additionally labels a few of them as @Bitbucket. All emails that come from Bitbucket now have 2 labels. Obviously I would like NOT to see Bitbucket emails into @Private label directory.

Is there any way to remove @Private label for emails that match @Bitbucket filter rules?

  • Let me know if you find any solution on this. I am in the same situation.
    – James123
    Commented Jan 23, 2017 at 16:40

4 Answers 4


You can't remove a label with a filter.

However, it seems that Gmail applies filters sequentially, so if you change the order of your filters so that...

  • the @BitBucket filter is listed above the @Private filter, and
  • the @Private filter includes a negative search in its search criteria (e.g., -label:@BitBucket) so that it only applies the label to messages that don't already have the @BitBucket label

I think that will do what you need.

As for changing the order of your filters, see: How can I reorder Gmail filters?

  • I've read on google forums that we cannot rely on filter execution ordering. so I think this method is not reliable. Unless they've changed this after 2013 (year when a post was written). Commented Apr 15, 2016 at 13:34
  • Yeah, I don't rely on it myself, but there was at least one other question here and experimentation showed that it seemed to matter. I agree that this is relying on an undocumented feature.
    – ale
    Commented Apr 15, 2016 at 13:45
  • I can't seem to add any kind of label criteria to a filter. Has this changed? I can SEARCH with -label, but when I go to make a filter out of the search, that part goes away. I even tried exporting the filter as xml hoping to add -label somewhere in there, but I don't see where. Each part is a different xml tag and I don't know the name of the property for labels, if it exists.
    – Marcel
    Commented Aug 26, 2020 at 14:37

Another, possibly easier way than reordering your labels and excluding those already labeled would be to simply add the NOT operator in the first filter against the same criteria in the second.

So, if your first filter looks something like this:

action: Apply label "@BitBucket"

Just modify your other filter like this:

{previously existing criteria} -from:bitbucket.com
action: Apply label "@Private"

I used this idea when I could identify everything which should not have a specific label. This is simply turning the normal pattern of say what should be labelled on its head. I wanted to label everything which wasn't in a standard folder (well certain standard folders) with [Gmail]/Archive to make gmail so that archived emails could be searched for in an IMAP email client.

First, I deleted the label (I'd tried a few things already.)

Then, created a filter as has been described above like this:

-{in:inbox in:sent in:spam in:draft in:trash}
action: Apply label "[Gmail]/Archive"

The braces create an OR'd set of expressions and the - negates it. So, if you can describe where you don't want the label with gmail search expressions this should allow you to remove the label entirely, create it again, and then apply it to your messages by specifying what shouldn't be labelled.


I pull via POP3 from 3 different email accounts. Each of them get their own label.

The settings page where you specify the account details also allows you to specify the label to use. The last item in the pull-down of labels is "new label..."

  • You did not understand my issue. I need to mark some email from 1 email as @A and all the rest as @B. This is not possible during POP account creation. Commented Apr 15, 2016 at 10:44

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.