views:

468

answers:

3

Does anyone have a list of the common user agent strings that email clients use when opening HTML emails? I'm looking to do some pixel web bug detection using PHP on an email campaign.

A: 

I think you'll find that there's no easy way to distinguish between Email Applications opening a html email. All desktop agents use a specific rendering engine that is already built into web browsers (Thunderbird uses Gecko, earlier versions of Outlook use Internet Explorer, Mail.App uses WebKit etc) which makes them virtually indistinguishable from the browser itself.

Anyway, from a programming perspective, it's not even useful to be able to tell the difference because, even if you could tell which client is being used, there's no way of taking advantage of that through a PHP script.

pmckenna
A: 

you just need to add your image to your HTML email.

<img src="www.yourserver.com/track?id=someHASH..."/>

Then on your server, when you get that hit, relate it back to who you sent it to, when, etc.

Just keep in mind that most email clients now BLOCK external images to stop spammers from using this technique to phish out live email accounts (since most servers/clients block return receipts also).

Thus, respect that many users will never load the image... but if your site is "compelling enough/trusted", then the user may load the images.

Also realize that if a user forwards the email to others, or re-opens the email at a later date, this may cause the web bug "call home" to fire again (depends on caching etc.)

scunliffe
+1  A: 

According to UserAgentString.com, Thunderbird uses these strings. Sadly, I'm unable to find very much about other email clients. My best suggestion is to do as you are planning, but send it out to specific friends, so you can gather some baseline knowledge.

However, as Scunliffe mentioned, most interfaces do not display images until you choose to. So the best way to force it, is to have your email as one big image! ;)

St. John Johnson