i have done a lot of research but still cannot clearly understand what is the difference between postfix bounce_queue_lifetime and maximal_queue_lifetime in main.cf. Although I've read a lot of articles, it still does not make any sense to me. Could someone explain to me the difference REALLY CLEARLY and how to properly configure these values in Postfix. Providing some examples could also be helpful. Thanks in advance

1 Answer 1


For what I understood by reading the postconf (https://www.postfix.org/postconf.5.html):
--> maximal_queue_lifetime is the maximum lifetime for a "regular" mail. Hence, it is applied to mails coming to postifx from a client: when postifix fails to deliver a mail to the destination (considering also the retries), after the specified lifetime it considers the mail undeliverable and starts the bounce service to send back a non-delivery notification (bounce mail).
--> bounce_queue_lifetime is the same thing, but for "bounce" mail. Hence, it is applied precisely on the mail that postifx tries to send back to the sender when a mail is considered undeliverable.

So, a chronological example of them applied should be:

  1. try to deliver a regular_mail, coming from a sender, to a destination
  2. regular_mail not deliverable: retry up to maximal_queue_lifetime (default 5d)
  3. after maximal_queue_lifetime has passed, consider the regular_mail as undeliverable and try to send back to the sender a bounce_mail (non-delivery notification). You can set a custom failure template using bounce_template_file (there are others options too: see postconf)
  4. bounce_mail not deliverable: try up to bounce_queue_lifetime (default 5d)
  5. after bounce_queue_lifetime has passed, consider also the bounce_mail undeliverable.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .