2

I am using PHP mail function to send mails to my clients. But, I wish to know how many of the recipients have actually bothered to open my mail and how many have not.

Is there any way to detect that ? Any javascript function will surely be disabled by the clients email user interface.

Any help in this regard will be appreciated

Prashant Singh
  • 3,725
  • 12
  • 62
  • 106
  • 1
    Microsoft Outlook has that, but I don't know any other mail provider which supports it, so I don't think SMTP supports it... good luck trying though, I'll follow this question myself. – Madara's Ghost Dec 25 '11 at 07:51
  • What if i record the request of image to my server through some unique URL tracking for every mail i sent. Request for image with a particular URL means that mail has been opened. Will that work ?? – Prashant Singh Dec 25 '11 at 07:55
  • 1
    Could work, do note that most email clients block outside images for exactly that reason, so the user will have to enable images manually in addition to actually opening your mail. – Madara's Ghost Dec 25 '11 at 07:57
  • 1
    Image tracking works in a number of cases, but you need to understand that there is no *reliable* way to do what you want. – Maerlyn Dec 25 '11 at 07:58

2 Answers2

5

The most common means of accomplishing this is to send HTML email, with references to some image hosted by your web server. In each email, as part of that image's URL, include a unique identifier. Then as people read your email, and download the images, that activity will be noted in your web server logs. All you have to do then is a bit of log analysis.

allingeek
  • 1,378
  • 8
  • 16
  • Hmm... nice idea. I was thinking in a similar fashion. However, this will fail if he filters out my images :( – Prashant Singh Dec 25 '11 at 07:57
  • 2
    Yes, but you forgot to mention that not all users will thoughtlessly enable external images on their clients... Which is a big difference. – Madara's Ghost Dec 25 '11 at 07:58
  • There really is no means of forcing a recipient's mail client to do anything. Providing such a mechanism would be quite irresponsible because of the security implications. AFAIK this remains the most common and reliable mechanism. – allingeek Dec 26 '11 at 18:20
4

One solution, if the person receiving the email allows remote images (often email clients will prompt for this option by default), is to display a unique image URL (either a "real" one or a 1x1 pixel) residing on a server you own. Therefore, you can track if that image URL has been loaded on your server by the client.

There are also read-receipts, but those are optional and not supported by all clients.

Cameron S
  • 2,251
  • 16
  • 18