CiviMail likes to use VERP for bounce processing, but it looks optional because there's a checkbox for it on CiviMail Component Settings (where is the documentation for this screen??). Bluehost doesn't support VERP, but I found this thread, which explained how to comment out two lines in smtp.php. I did that and email blasts work now, but I did a test with a bad email address and it didn't bounce.

Can anyone explain the ramifications of commenting out those two lines? Will this ever work on a host that doesn't support VERP? Where is the documentation for CiviMail Component Settings? Thanks much in advance...

  • Wait--what do you mean by "doesn't support VERP"? Is it limiting the return path to certain addresses on your domain (such that [email protected] is okay but [email protected] isn't)? Or do you just mean that you can't set up a default address or plus-addressing, so you'd end up unable to scoop up all the bounces?
    – Andie Hunt
    Commented May 26, 2015 at 22:13
  • Doing an email blast with CiviMail on a Bluehost shared server results in 0 emails sent, all emails have a syntax error. It doesn't like the weird VERP addresses. NEW QUESTION: If we stay with Bluehost, but upgrade to a VPS, will email blasts work then???
    – jimcrist
    Commented May 27, 2015 at 17:46

1 Answer 1


VERP is not optional in CiviMail, the two lines you comment out are the one needed to be able to identify who was the recipient, so if it bounces, Civi can identify it properly.

If you don't process bounces, you will not know if an email is invalid, and you will keep sending emails to invalid emails. It's something mail servers really don't like, and one of the sure way to get you categorised as spammer and blacklisted.

If you have developer skills or budget, you could add a feature to handle the bounces not based on the email the bounce returns to (VERP), but on an extra field added to the header as discussed here

However, switching to a better mail server is usually a cheaper alternative than developer's time, especially if the result is likely to be less efficient as identifying bounces.

As for the civimail component setting:

Track replies using VERP in Reply-To header
- If checked, mailings will default to tracking replies using VERP-ed Reply-To.

It isn't about bounces (not having VERP isn't an option), but for what's happening when a recipient replies: should it go directly to civicrm and be processed there or should it bypass civi and go directly to the inbox of the sender?

  • Thanks for your reply. Why is there a checkbox for VERP on CiviMail Component Settings and where is the documentation for this screen?? My programming skills are dated at this point, but matching a bounced email with it's associated database record shouldn't be hard if the email address is in the email header. I'm surprised there isn't an option for this?
    – jimcrist
    Commented May 25, 2015 at 14:11
  • 1
    completed the answer above. matching a bounce is surprisingly more complex than expected, as (for instance) you could send to [email protected], that is set up as an alias to [email protected]. If the later is not working, you will get a bounce [email protected] is invalid, but you won't know that it has to be matched with [email protected]
    – Xavier
    Commented May 25, 2015 at 14:37
  • We tried using Bluehost's VPS service to no avail. The fact that Bluehost doesn't support a "catch-all" or "bounce" email account means that they are not a good choice if you want to do CiviMail email blasts. We switched to a DreamHost VPS and are very happy.
    – jimcrist
    Commented Feb 5, 2016 at 15:38

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.