Saturday, May 28, 2016

Monitoring Email Delivery

Screenshot showing an example of reporting statistics of email delivery.
Many OpaVote elections depend on the delivery of voting emails to voters. Delivering large quantities of email is a tricky business because, as you all know, emails are unfortunately abused by spammers.

As an election manager, it is very important for you to know the status of email delivery for your election. OpaVote now makes it very easy to do this!

Above, is a portion of the management console for an election that shows email delivery status.  For this election, there are 2782 email voters.  Each email sent to a voter can be in one of four states: pending, in transit, rejected, or delivered.  We'll explain each of these.

Pending Emails

OpaVote sends emails out at a rate of 2 per second.  This helps ensure that receiving mail servers accept the emails.  If OpaVote suddenly sends thousands of emails to a single mail server, the mail server may assume they are spam and drop them in the digital trashcan.

While voter emails are waiting to be sent out they will be in the pending state.  Right after you start your election, all voter emails will be in the pending state.  If you refresh the management console, you will see this number go down at a rate of about 2 per second.

An email will change from the pending state to another state when we receive a response from the email server the voting email is being sent to, and then the voter email will transition to one of the states below.

In Transit Emails

Sometimes a receiving email server will play coy with an incoming email if it isn't sure who the sender of the email is.  The receiving email server will basically say, no one is home, please try again later.  The idea is that spam senders probably won't come back but legitimate email senders will try again.

OpaVote does try again, and while OpaVote is in the process of trying again, the voter email will be in the in transit state. The email will probably be delivered in the future, but we don't know yet for sure if it will.  It may take 24 hours for an in transit email to be delivered.

If all of your voters have email addresses at the same domain (e.g., and most or all of the voters are in the in transit state, then you should contact your IT department and ask them to whitelist as a sending domain.  If your IT department wants other information, such as our sending IP addresses, please contact us.

Rejected Emails

For voter emails that are not delivered or where it seems the voter does not want to receive the emails, the voter email is put in the rejected state (note that some of these emails have been delivered but are not included in the delivered state below).  Fewer than 2% of your emails should be in the rejected state.  If many of your emails are rejected, we may terminate your election.

An email bounces if it cannot be delivered.  This could be caused by a typo in the email address, because the person closed that email account, because the person's inbox is full, or for a variety of other reasons.  If you click on the rejected emails link, you will see the response that we received from the email server.  Although the responses are somewhat cryptic, most of the time they make sense.

Voters can mark emails as spam, and often the mail server will tell us that the voter marked the email as spam.  When this happens, we put the voter on a blacklist and we never send emails to them again.  A voting email will be in this category if they previously marked a voting email as spam (from your previous election or someone else's) or marked a voting email from the current election as spam.

Voters can opt out of OpaVote emails.  They have the choice to opt out of emails for the particular election or for all OpaVote elections.  Voters who opt out are put in the rejected category, though it is really sort a gray area.  Some voters may vote and then opt out so they haven't really rejected the email...

Delivered Emails

The last category is delivered emails.  Nearly all of the time, this means the voting email reached the voter's inbox.  We can't be sure however.  All we really know is that the mail server told us that it accepted the email.  The email could have been put in the voter's spam folder or could have been lost on the receiving end.

So there you have it.  We hope you find this feature useful!