I have multiple email addresses that are synced to one Gmail account. I currently have the other addresses skip the inbox and get labeled based on the email. However, now I need it so that if I get an email from a specific address to get sent to the inbox instead. I tried adding a filter with the email in the From field, using a not, applying a different label, only for it to still skip the inbox since the initial filter is taking priority. How can I resolve this?
Unfortunately, unlike Outlook, there's no way to get a Gmail filter to stop processing other filters. Also unlike Outlook, Gmail doesn't make it easy to change the order of filters. (They like to tell you that the order doesn't matter, but that doesn't seem to be the case.)
Assuming you don't want to go through the trouble of re-arranging your filters, you need to include the search negation in the existing filters.
So, assuming you have filters that look like this:
to:firstname.lastname@example.org apply label 'Mom'; skip the inbox
You'll want to change it to look like this:
has the words: to:email@example.com -from:firstname.lastname@example.org apply label 'Mom'; skip the inbox
That filter will only trigger on messages that are to the address you want to "move" but don't have that from address you want to keep in the inbox.
Of course, you still need a filter to tag that address appropriately, but this way it can be at the end and won't matter.