Email bounce tracking system

From LimeSurvey Manual

This page contains changes which are not marked for translation.

Other languages:
Deutsch • ‎English • ‎Nederlands • ‎русский


The mail bounce tracking system (available in v1.91 or later) is capable of tracking down and marking the emails that were not delivered to the recipients (participants). The system relies on the "mail delivery notification failure report". Therefore, it needs an email address where the emails can be sent to in order to track the bounces . Along with the address of the account, the credentials of the account are also required, with the connection details.


The php5-imap module must be installed on your server. You can check if this is the case by looking at the Show PHPinfo button, found on the global settings page of your LimeSurvey installation, under the Overview tab:

Show php info general settings.png

Next, look for an imap section, like this. If an imap section is shown, you are good to go:

Phpinfo imap.png

If you don't have php5-imap installed and you have root access to the server, you can install it following the proceudure specific to your distribution. For example, check this link if you use Debian. Just remember to restart your web server once it is installed (e.g. run "apache/usr/sbin/apache2ctl restart" in terminal).

How it works

The basic idea behind the development of the system was to reduce the manual work and reduce the possible human errors that might arise from manually editing every field.

The basic idea behind this system is that when sending the mail, the mail bounce tracking system automatically adds a survey-id and token-id to the mail header without the notice of the administrator.


These headers (also known as custom headers) are added to each invitation email sent via LimeSurvey to the survey participants.

When the mail is bounced back, the original header along with the Delivery notification header is received. The system then checks for new mails and parses the mails that have these custom headers and mark the wrong e-Mail id in the red font color in the tokens table.

Setting up the system

The system is capable of working at the global level or survey level, thus the settings can be saved accordingly. The global settings can be saved under Global Settings -> Bounce Settings.

Limesurvey index php admin globalsettings bouncesettings.png

The local settings can be entered under the token management of that particular survey.

Limesurvey admin tokens bouncesettings.png

As you can see in the screenshot above the setting to be used in that particular survey is to be selected. Available options are

  • No settings to be used
  • Use settings below (survey-specific)
  • Use global settings

Starting Bounce Processing in v2.5

In version 2.50+, once the bounce processing system has been set you can start Bounce Processing by accessing the appropriate menu choice option on the "Invitations & reminders" button of the "Survey participants" menu as illustrated below.

The "Survey participants" menu can be reached by clicking the "Survey Participants" button either in the left hand menu or the top menu of the Survey homepage.


After selecting this option a progress indicator will be displayed during processing, followed by a final processing status summary.

Note: some releases of v2.50+ do not correctly display this menu choice and the issue was fixed in build 160714 released on July 14, 2016

Starting Bounce Processing in earlier versions

Once the settings have been set you can start the bounce processing by clicking on the bounce processing icon in the Token browser toolbar as shown below.

Limesurvey admin tokens browse bounceicon.png

After clicking the icon you will be presented with a popup which shows a progress meter.


Wait for it to complete. Once complete the result of the scan will be shown and after a refresh of the browse responses page (you might have to do that manually) all the entries whose invitation are bounced their e-mail address are marked in red font. Also their "Email status" is chanced from "OK" to "bounced".