Hi everybody,

So, 'Litmus', a web app for testing emails and webpages across browsers and email clients, has a proprietary method that they claim is able to track not just opens, clicks, browsers, etc (standard with an embedded image and pass-through link tracking.)

What's unique is they claim that they are able to track what actions the end user took, how long the end user read it for, and if they deleted or forwarded the email. They claim they do this without JavaScript, and purely using embedded images. They claim that the method works across most major email clients.

What could they be doing to track this? Obviously, if they're doing it with third party applications that they don't control, whatever they are doing should be replicable.

I'm thinking that they realized that when an email client forwards or deletes an email, it 'opens' the email in a different way then normal, creating a unique user string on the server log of some kind? I'm grasping at strings, though.

anyone can help me in this regards

I actually work in emailing, you can only track:

Read: user has clicked "show images" or just has the email set to show images default, meaning they could of just skimmed past it

Click: user clicked a link in the email or some program has followed the link to check it.

In the read you can record pretty limited things such as user-agent, ip address time the file was ran no way of tracking how long the email was open.

Once a user goes online into the web browser though such as the click or "view this email online" javascript and such opens up then and you could start to track time spent etc. which google analytics does very well.

It'd be pretty genius if they have worked out a way to record actions and that with just embedded images - especially since images are a one off download. I expect they have just intelligently classed the data, ie you could tell if someone has forwarded the email by getting the same email id logged from 2 ip addresses or 2 different browsers.

I know email clients, such as google, will run a specified link in the email header if it is there when they click 'spam' maybe some have started to add one for delete now - you could log the time between the read and delete/spam click and see how long between the read & delete.

I'm thinking that they realized that when an email client forwards or deletes an email, it 'opens' the email in a different way then normal, creating a unique user string on the server log of some kind? I'm grasping at strings, though.

Oh and you generally don't link to an image, you link to a serverside script file which runs a script and logs the data into a database.

<img src='http://www.example.com/readlog.php?emailid=3428434'/>

If you logged the ip address $_SERVER['REMOTE_IP']; you will get the same id in twice from 2 ip's, meaning its been forwarded or hes looking at it from another pc. Thats as close as you can get unless the email client will run a script for you when he clicks forward - as it will be an exact copy of the email he got you cant track it definitely.

actually there are some people who did this before

I'd love to know if you know how, that would certainly be a really nice stat for us to have. As far as i know the only points you can monitor is the one time images are downloaded, any clicks and the spam click.

The danger of running javascript in an email client is just too great -> window.open('http://badurl.com") 100 times or while(1){alert('hi');}

I could only imagine with them being so big is they have actually got in touch with the major email clients and setup something with them, it's personal info though and i'm not sure they are even allowed to give out that sort of data

i am totally new to development,as you see above in the first paragarph litmuss track there email in most of the browser,i also want to know how can they did this

Google analytics will do it all for you. looking on the litmus site, they seem to use google analytics and another custom tracking code:

view-source:http://litmus.com/

<script src="/javascripts/analytics.min.js" type="text/javascript"></script>
<script>var _gaq=[['_setAccount','UA-2373888-1'],['_setDomainName','.litmus.com'],['_trackPageview']];(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];g.async=true;g.src=('https:' == location.protocol ? '//ssl' : '//www') + '.google-analytics.com/ga.js';s.parentNode.insertBefore(g,s)}(document,'script'));</script>

I'm not sure if its been said already but the way Litmus does it is basically the usual image tracking and some snazzy CSS. For the image, they let it download slowly which allows them to track time it takes to read email. This isn't super accurate buts it good enough. Here is their tracking code.

There are other free alternatives that work better IMHO: http://campaigncog.com/

Thanks compsci,
Campaign Cog looks promising. I've requested their API beta. Do you already have experience with the API?

Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts meeting, networking, learning, and sharing knowledge.