Outlook 2013 email campaign - tracking opened emails

rino

Member
Outlook version
Outlook 2013 64 bit
Email Account
Exchange Server 2013
my company is planning to launch a series of email campaign internally. one requirement is to be able to track (and therefore log) that an email was opened. I have look at read receipts but the problem with it is some power users can disable and prevent sending back read receipts thereby affecting the stats which the campaign is collecting.

I have learned that 3rd party tools have gone around that limitation by embedding some image in an Outlook message. this image gets loaded from a server so once the server receives something like a pull request, for lack of a better term, for the image then it gets flagged that the email was opened.

I am a mail admin only, not much familiar with coding but understand simple programming or scripting. how can I do such embedding in an Outlook email to do the above?
 

Diane Poremsky

Senior Member
Outlook version
Outlook 2016 32 bit
Email Account
Office 365 Exchange
If you want to track it by person, you need to use an addin since you need to generate a coded link for each person it was sent to (contact monkey and others can do this). If you just want to track opens and not worry about who opened it, you can embed an image that is stored on a website.

Depending on how often you'll use it and how many messages you'll send, a service such as constant contact might work better.

a list of mass mail addins is here - Mass Mail Tools for Outlook - not all do tracking.
 

rino

Member
Outlook version
Outlook 2013 64 bit
Email Account
Exchange Server 2013
after much searching, i found how in the way of macros. you create this macro which in turn gets sent with your email.

Dim insp As Inspector
Set insp = ActiveInspector
If insp.IsWordMail Then
Dim wordDoc As Word.Document
Set wordDoc = insp.WordEditor
wordDoc.Application.Selection.InsertFile "e:\test.html", , False, False, False
End If



i have created a simple HTML file that loads a picture once the email was opened. my only problem now is how to know, from the server side, that the picture was requested/downloaded by a user?
 

Diane Poremsky

Senior Member
Outlook version
Outlook 2016 32 bit
Email Account
Office 365 Exchange
You would need to have access to the server logs. (Sorry I forgot to mention that - I have access to my web server logs and sometimes forget that others might not.)

If you have access (or can get it), i recommend using a subdomain that is only used in email, so you can track it easier - something like 'https://s.mydomain.com'
 

rino

Member
Outlook version
Outlook 2013 64 bit
Email Account
Exchange Server 2013
I need a little help please. I found some code on the web plus from this website and it works. when I open an email it sends me a blank email indicating that the email have been opened. however, it seems it would always send a blank email whenever I touch that test email I sent to myself. I only need the macro to run when I open the mail.

here's the code:

Public WithEvents myItem As Outlook.MailItem
Public EventsDisable as Boolean

Private Sub Application_ItemLoad(ByVal Item As Object)
If EventsDisable = True Then Exit Sub
If Item.Class = olMail Then
Set myItem = Item
End If
End Sub


Private Sub myItem_Open(Cancel As Boolean)
EventsDisable=True
Dim objMsg As MailItem
Set objMsg = Application.CreateItem(olMailItem)

objMsg.To = "bugs@acme.com"
'objMsg.BCC = "me@slipstick.com"
objMsg.Subject = "test"
'objMsg.Body = Item.Body
objMsg.Send

Set objMsg = Nothing

EventsDisable=False
End Sub
 

rino

Member
Outlook version
Outlook 2013 64 bit
Email Account
Exchange Server 2013
correction. the macro runs everytime I click on new email. btw, I pasted the above code in the ThisOutlookSession part of the macro. could that be it?
 

rino

Member
Outlook version
Outlook 2013 64 bit
Email Account
Exchange Server 2013
well found out that the above macro only works for me. in my Outlook. when I send the email, I was expecting the macro would have been embedded in the sent email and therefore would execute once the recipient opens the email.

how then to embed a macro to a sent email and execute it at recipients end?
 
Top