Skip to main content

10 Zimbra Sieve Filter Examples

Ten Sieve filters for everyday mail on Zimbra. Copy one, change the addresses and folder names to your own, and it is ready to use.

Want to know how they work, or where to put them? Read Zimbra Sieve Filters: An Introduction.

1. Move newsletters to their own folder

require ["fileinto"];

if exists "List-Unsubscribe" {
fileinto "Newsletters";
stop;
}

2. Collect invoices in one folder

require ["fileinto"];

if anyof (header :contains "subject" "invoice",
header :contains "subject" "receipt") {
fileinto "Invoices";
stop;
}

3. Flag every message from your manager

require ["flag"];

if address :is "from" "manager@mshsoftware.com" {
flag "flagged";
}

4. Forward a copy of all mail to another address

require ["copy"];

redirect :copy "assistant@mshsoftware.com";

5. Forward only urgent messages

require ["copy"];

if anyof (header :contains "subject" "urgent",
header :is "X-Priority" "1") {
redirect :copy "on-call@mshsoftware.com";
}

6. Tag everything about a project

require ["tag"];

if header :contains "subject" "Project Apollo" {
tag "Apollo";
}

7. Move messages not addressed to you directly

require ["fileinto"];

if not me :in "to" {
fileinto "Cc";
stop;
}

8. Move large messages out of the Inbox

require ["fileinto"];

if size :over 10M {
fileinto "Large messages";
stop;
}

9. Delete automatic daily reports

if allof (address :is "from" "reports@mshsoftware.com",
header :contains "subject" "Daily report") {
discard;
stop;
}

10. Tag mail that arrives outside working hours

require ["tag"];

if anyof (current_time :before "0800",
current_time :after "1800",
current_day_of_week :is ["0", "6"]) {
tag "After hours";
}

Learn more

These scripts cover the most common cases. To understand what each line does, where Zimbra stores Sieve scripts and how to set them up for a user or a whole domain, read Zimbra Sieve Filters: An Introduction.