Отслеживание электронной почты открывается в Google Analytics
Мы отслеживаем наши электронные письма, чтобы отслеживать клики на нашем сайте с помощью Google Analytics. Но есть ли способ отследить открытие? Я полагаю, что я должен добавить изображение отслеживания Google к электронной почте где-нибудь. Возможно, JavaScript тоже?
6 ответов
Как уже отмечали другие, вы не можете использовать Javascript в электронной почте. Фактическое отслеживание выполняется по запросу __utm.gif
хотя и Javascript просто создает параметры GET.
Google поддерживает использование Google Analytics без использования Javascript в своих документах для мобильных устройств: http://code.google.com/mobile/analytics/docs/web/
Они документируют полный список параметров, но единственными необходимыми параметрами являются:
Parameter Description
utmac Google Analytics account ID
utmn Random ID to prevent the browser from caching the returned image
utmp Relative path of the page to be tracked
utmr Complete referral URL
Ссылка, которая описывает все параметры, которые позволяет GIF Google Analytics для отслеживания, находится здесь. Используйте это, чтобы построить <img>
Отметьте в своем письме ссылку на GA GIF.
Согласно этому посту, обязательные поля:
- utmwv = 4,3
- utmn =
<random#>
& - utmhn =
<hostname>
& - utmhid =
<random#>
& - utmr = - &
- utmp =
<URL>
& - utmac = UA-XXXX-1 &
- utmcc = _ utma% 3D
<utma cookie>
3B% 2B _utmz% 3D<utmz cookie>
% 3B
Похоже, вы используете отслеживание кампании для GA, но также хотите знать, сколько было открытых открытий. Это возможно сделать с помощью Google Analytics, так как они отслеживают просмотры страниц или события с помощью отслеживания пикселей, как и все (я думаю?) Отслеживания электронной почты. Однако вы не можете использовать javascript, так как это не будет выполнено в электронном письме.
Использование отслеживания пикселей в Google Analytics. Самый простой способ - использовать инструменты разработчика браузера, такие как Firebug для Firefox или Opera Dragonfly, для захвата запроса utm.gif и копирования URL-адреса. Измените заголовки в соответствии с вашими потребностями. Вы можете считать его как событие или просмотр страницы. Если вы считаете это событием, оно должно выглядеть примерно так:
http://www.google-analytics.com/__utm.gif?utmwv=4.8.6&utmn=1214284135&utmhn=www.yoursite.com&utmt=event&utme=email_open&utmcs=utf-8&utmul=en&utmje=1&utmfl=10.1%20r102&utmdt=email_title&utmhid={10-digit time code}&utmr=0&utmp=email_name&utmac=UA-{your account}
Вы можете использовать это, чтобы понять, что описывает то, что в заголовках.
Я лучше выложу это, чтобы избавить всех от необходимости создавать этот чудовищный URL-адрес UTM gif.
Теперь вы можете использовать новый API протокола измерений для отправки запроса POST и простой записи событий, просмотров страниц, обращений или почти любого другого типа измерения. Это супер просто!
POST /collect HTTP/1.1
Host: www.google-analytics.com
payload_data
Например, вот фрагмент кода для отправки события в C# (с использованием конечной точки SSL):
public void SendEvent(string eventCategory = null, string eventAction = null, string eventLabel = null, int? eventValue = null)
{
using(var httpClient = new HttpClient() {BaseAddress = new Uri("https://ssl.google-analytics.com/")}) {
var payload = new Dictionary<string, string>();
// Required Data
payload.Add("v", "1"); // Version
payload.Add("tid", "UA-XXX"); // UA account
payload.Add("aip", "1"); // Anonymize IP
payload.Add("cid", Guid.NewGuid().ToString()); // ClientID
payload.Add("t", "event"); // Hit Type
// Optional Data
payload.Add("ni", "1"); // Non-interactive hit
// Event Data
if (eventCategory != null)
{
payload.Add("ec", eventCategory);
}
if (eventAction != null)
{
payload.Add("ea", eventAction);
}
if (eventLabel != null)
{
payload.Add("el", eventLabel);
}
if (eventValue != null)
{
payload.Add("ev", eventValue.Value.ToString(CultureInfo.InvariantCulture));
}
using (var postData = new FormUrlEncodedContent(payload))
{
var response = httpClient.PostAsync("collect?z=" + DateTime.Now.Ticks, postData).Result;
if (!response.IsSuccessStatusCode)
{
throw new Exception("Could not send event data to GA");
}
}
}
}
Гораздо проще, чем взломать с __utm GIF.
Полезный пример
Вы можете легко добавить это в электронные письма, выполнив это:
В электронном письме:
<img src="{url}/newsletter/track.gif?newsletterName=X" />
Например, на вашем сайте MVC NewsletterController
:
public ActionResult Track(string newsletterName) {
using(var ga = new AnalyticsFacade()) {
ga.TrackEmailOpen(newsletterName);
}
return Content("~/images/pixel.gif", "image/gif");
}
В вашем Global.asax или RouteConfig
:
routes.MapRoute(
"newsletteropen",
"newsletter/track.gif",
new
{
controller = "Newsletter",
action = "Track"
});
БУМ, готово, сынок. Теперь вы можете отслеживать открытия электронной почты, используя гораздо более приятный API, который поддерживается и документируется.
Ваше требование - отслеживать, сколько раз электронное письмо было открыто данным пользователем. У нас похожая проблема. Мы используем SMTP-сервер ретрансляции и хотели отслеживать, сколько раз наши маркетинговые электронные письма открыты в дополнение к google-аналитике, которая регистрирует даже, когда кто-то нажимает на внутреннюю ссылку на наш сайт в электронной почте.
Это наше решение. Он основан на выполнении вызова REST путем переопределения элемента изображения html (наши электронные письма являются основой html)
где TRACKING - это динамически генерируемый URL, который указывает на нашу службу REST с отслеживанием информации о человеке, которому было отправлено электронное письмо. Это что-то подобное
// def trackingURL = URLEncoder.encode ("eventName = emailTracking & entityType = employee & entityRef =" + email.empGuid, "UTF-8");
trackingURL = baseUrl + "/ tracking / create?" + trackingURL;
Это будет что-то вроде " https://fiction.com:8080/marketplace/tracking/Create?eventName=email&entityType=Person&entityRef=56"
Когда фактический html электронной почты будет сгенерирован, TRACKING будет заменен на
Важным моментом является возвращение ответа типа image и возвращение однопиксельного прозрачного изображения с ответом REST.
Поэтому я предполагаю, что письмо содержит ссылку на ваш сайт. Конечно, GA может записывать, как часто щелкают по этой ссылке, потому что нажатие на ссылку по очереди откроет страницу, вызывая функцию *_trackPageview()*, которая записывается GA как просмотр страницы.
Таким образом, до тех пор, пока эта страница имеет стандартный тег страницы GA, никакой специальной настройки не требуется - ни для кода GA в разметке вашей веб-страницы, ни для браузера GA. Единственная дополнительная работа, которую вам нужно сделать, - это то, что вы можете отличить эти просмотры страниц от просмотров страниц посетителями из другого источника.
Для этого вам просто нужно пометить эту ссылку. Если у вас нет собственной системы, и она работает для вас, я рекомендую использовать Google URL Builder, чтобы сделать это для вас. Google URL Builder - это просто веб-форма, в которой вы вводите описательные термины для вашей маркетинговой кампании: Источник кампании, Средний уровень кампании, Содержание кампании, Название кампании. После того как вы ввели значения для каждого из этих терминов, а также ввели URL-адрес вашего сайта, Google мгновенно сгенерирует для вас "теговую ссылку" (путем объединения значений в URL-адрес вашего сайта).
Этот URL-адрес, созданный Google URL Builder, является ссылкой, которая будет размещена в тексте вашего маркетингового электронного письма.