36

I'm using Apple Mail with IMAP account. I have several filtering rules defined. The problem is that Mail doesn't apply them automatically to incoming email. Even spam isn't filtered automatically.

For all incoming email, every time, I have to select e-mails and select "Apply Rules", and then rules work fine (that one time on selected e-mails only).

It works like this on two separate installs of Mail with different accounts (both IMAP though).

How can I get Mail to apply all rules automatically every time to all e-mails?

I wonder does it ignore rules because of misconfiguation, bug or does Apple seriously expect people to use "Apply Rules" menu item regularly?

Breakthrough
  • 34,227
  • 10
  • 105
  • 149
Kornel
  • 1,325
  • 1
  • 13
  • 20

4 Answers4

26

I found following post: http://www.cnet.com/how-to/how-to-delete-and-manage-old-messages-in-os-x-mail/

So you have to do the following:

  1. Add your filter that you want to apply.
  2. Add the rule condition: Every message.
  3. Set the drop down to "all"

You need to set "all" because if you set "any". What happens is that it evaluates every message, it will automatically match "every message". Then because you set "any". It won't consider the actual filter. Then it'll execute the action. So if you set the "delete" action. You will automatically delete every message in your inbox. A very dangerous mistake.

velop
  • 411
  • 1
  • 5
  • 7
  • 6
    Make sure that when you set the "Every Message" action, that you make sure that the rule matches ALL conditions, instead of ANY conditions. otherwise you will affect every message in your inbox. – Ben L. Mar 17 '15 at 19:24
  • 2
    I did the following to finally get it working: 1) remove "stop evaluating rules" from Rule #1 Apple News 2) Add "Every Message" to my rule 3) Add the Account name to my rule (Google account) – Vasily Hall Feb 17 '19 at 09:07
  • This also fixed my problem, but in addition to the solution presented, I also had to add the account name as a rule as @Vasily Hall suggested. – GForce Mar 09 '19 at 02:08
  • This doesn't work for me. Yes, if I do all of these things, I can colour a mail, and it works on the way in too. But when I switch the action to an applescript which works on mails when I select them and run opt-cmd-L no probs, MacMail ignores the script run. – volvox May 20 '19 at 21:47
22

This is a bug.

In their infinite wisdom, Mail.app developers decided only to apply rules to 'unseen' messages. If the IMAP 'seen' flag is set, rules will not be applied.

I started a forum thread on the apple forums on this topic.

rouble
  • 724
  • 6
  • 7
15

I had the same issue, but it turned out the first rule in the list (News from Apple) had "Stop evaluating rules" as the last action.

I removed this action and it worked fine.

bvpb
  • 251
  • 2
  • 4
  • 3
    Thank you! That should be on on Apples FAQs. – Tobias F. Meier Nov 09 '18 at 16:22
  • 2
    Thanks. Eight years later this is still a pain. Why would they do that!! – wheeliebin Mar 19 '20 at 17:08
  • wow I just spent 20 minutes trying to figure out why my rules didn't work. Thanks! and wtf apple. – JavaKungFu May 21 '20 at 21:50
  • Thank you for this insight -- I've applied the change and we'll see how it goes fingers crossed. That said, this feels like an inherently stupid decision; that flag applies at the level of "if an email matched this rule, do these things" so why should it stop the processing of ALL emails and not just that one email? Isn't the actual intention behind such a rule (when seen on other platforms) to be "handle this email in this way and then do not process this particular email through any other rules"? What is the point of having a global "stop processing rules"-rule? – Bane Mar 26 '21 at 14:34
  • 1
    How does this rule cause problems? Looks like it targets only Apple messages. – Fred Lackey Dec 11 '21 at 13:43
5

Not sure if this is exactly your problem, but something similar happens to me.

I've got a Mac running Apple Mail and an iPod touch, both checking the same IMAP account. The Mac is asleep during the day. While out and about, I'll check my mail on the iPod, read the new messages, and leave them in my inbox. When I come home, I wake up the Mac, and Mail syncs with the server. The filtering rules are not applied.

The reason for this behaviour is that Mail only appears to apply rules to "new" mail. Having already seen these new messages on another device, I'm not so much downloading new messages to Mail as I am synching with the server. So, no rules applied for these messages.

CartoonChess
  • 181
  • 3