Tracking time spent viewing email in Google Analytics via a tracking pixel - email

So I'm experimenting with tracking email activity through Google Analytics.
I can create a simple tracking pixel that indicates if the email has been opened and sends that event to GA like so:
<img src="https://google-analytics.com/collect?v=1&t=event&tid=UA-0000000000-1&cid=555%ec=Email&ea=OpenedEmail"/>
But is there a way to send a hit to GA that records user timing?
I can see user timing variables in GA's Measurement Protocol: https://developers.google.com/analytics/devguides/collection/protocol/v1/parameters#utc so I assume it would be a second tracking pixel (first sends open event to GA) like this:
<img src="https://google-analytics.com/collect?v1&t=timing&cid=555&utc=Email&utv=EMAIL NAME&utt"/>
Since utt is an integer, I shouldn't hard code it with anything right?
Has anyone else attempted this?

Related

Can Google Workspace Alert Center be used with Email Log Search?

Is there a way to create an Alert Center notification based on criteria returned in the Google Workspace Email Log Search?
For example..
If an email address sends a message to 1000+ recipients or sends 1000 messages to 1000 recipients...
We already see the System Defined alert center actions if say... someone flags a message as phishing, but we want to create a triggered alert rule based on the count of messages.
Thanks in advance.
This can be done using the Investigation tool found at ‘Security’ > ‘Investigation Tool’ Be advised this is a feature available for these editions: Enterprise; Education Standard and Plus as documented here
Basically what you are looking to do is build a query like this:
Data Source = Gmail Log Events
With Conditions Below:
Event Is User spam classification
AND
Spam classification Is Phishing
Like this
Then:
Click on the three dots at the top right, next to the bin icon.
Click on ‘Create activity rule’
Add a name + description. Click on ‘Next: View conditions’
Click on ‘Next: Add Actions’
Select the time window: 24hrs o 1hr
Scroll down and set the threshold desired and configure it (basically after how many incidents this will be triggered)
Add a desired action, eg. Send to quarantine, etc.
Select the severity of this rule
Check the box to ‘Send to alert center’
10.Configure Email Notifications.
11.Click on ‘Next: Review’ and make sure it is set to ‘Active’
12.Finally click on ‘Create Rule’
Keep in mind this may take some propagation time of up to 48hrs. For more information on the Investigation Tool see here
Unfortunately the way the Alert Center works would not allow an integration with the Email log search.
They both work on a different way, the Alert center has his own set of parameters to determine the severity, while the Email log search works like a direct tool to audit the data manually.
I believe the best available option to create rules and get notifications an alerts while using the Alert Center dat, is the Investigation tool which is only available with certain versions, check it!

Braze canvas - unable to receive emails

I am trying to send more than 3 requests to my braze canvas from postman, immediately one ofter other. But I am not able to receive emails for all of the requests sent. I haven't setup frequency capping and customer re-entry time is 0sec. Can anyone help?
Edit: I found the Answer for this. Looks like Braze canvas cannot be used to send email to same person in succession. Braze Campaign is appropriate in this case.
Are you able to submit your code? It should look something similar to:
{"api_key":"<api_key>",
"canvas_id":"<canvas ID>",
"recipients":[
{"external_user_id": "{{User}}",
"canvas_entry_properties":{
"<any additional entry criteria>": "<values>"}}]}
That would allow you to push a single user. If the external_user_id does not appear in your instance when searched, it may not send.
https://www.braze.com/docs/api/endpoints/messaging/send_messages/post_send_triggered_canvases/#request-body
The information passed for the Canvas via the API must match up to the filters in Braze, otherwise it won't send. Make sure your API key can deploy Canvases as well.
I found the solution.Apparently, Braze campaign cannot be used to send email in succession to a single user. Switching it to Braze canvas solved the issue.

icalendar Event in QR Code

I am generating a QR Code in InDesign to include in flyers, so that interested people can quickly scan the code and add the event to their calendar. The idea is if they can be reminded of the event, we get more people in the door.
So far, everything is working great...except: I don't know how to format the icalendar event such that I receive RSVP responses from people who scan the code. If the event had to change for whatever reason, I'd like to be able to email the people who scanned it. As I have it structured now, when I test scan the QR code my email address receives an invitation and not the expected RSVP response saying the scanner is attending. I have read the specifications for icalendar, but have come away just as confused because the specs are surprisingly short and thin.
Current ical event:
BEGIN:VEVENT
SUMMARY:Event Title
LOCATION:Venue Name\, Venue Address
DESCRIPTION:Event description
DTSTART:20171115T180000
DTEND:20171115T190000
URL:http://webaddress.org
ATTENDEE;RSVP=TRUE:mailto:myemail#address.org
BEGIN:VALARM
TRIGGER;RELATED=START:-PT120M
ACTION:DISPLAY
DESCRIPTION:Reminder
END:VALARM
END:VEVENT
It's the ATTENDEE line that I can't figure out. The spec makes it sound like that would cause the person responding to automatically send an acceptance to the email address that follows, which is mine as the event organizer. That's not what happens, so is there a different component to use to get what I desire?
Thanks!
This is an application concern, not anything to do with the iCalendar spec. I'll drive through your ical text quickly, though:
Your RSVP request is formatted fine.
You don't need the URL line.
You need VERSION:2.0. Some applications (like Apple's Calendar app) can't parse ical text without it.
You need a PRODID.
Depending on the location(s) of your attendees relative to the venue, it might make sense to specify a TZID, or (since it's not a recurring event) express your start and end time in UTC.
In general, you should use an iCalendar library like ical.net or ical4j to build your calendar events. They'll keep you from 1) needing to know the spec, which probably isn't a good use of your time and 2) shooting yourself in the foot because of #1.
The spec makes it sound like that would cause the person responding to automatically send an acceptance to the email address that follows, which is mine as the event organizer.
This is magical thinking: how would that happen? It would have to be handled by an application or operating system. Something that would "know how" to 1) understand ical, and 2) send a web request or an email or do something else.
The spec allows the organizer to indicate a preference with respect to RSVPs, that's all:
Purpose: To specify whether there is an expectation of a favor of a reply from the calendar user specified by the property value.
It's up to the implementer of the software to determine what that means in the application layer: send a web request, send an email, ignore it, etc.
Presumably scanning the QR code does something. How is the ical text loaded? How should it be loaded? By the user's mobile mail client? By the mobile calendar application? Something else? You need to figure out what THAT action should be, and figure out how to trigger or handle it.
My reading of the RFC suggests that a possibly better interpretation of this line:
ATTENDEE;RSVP=TRUE:myemail#address.org
is that you have added a single attendee, that attendee's email address is myemail#address.org, and that attendee is required to RSVP.
As a result, when you add this calendar event to your calendar, the calendar evaluates it and says: "Wait, we haven't even invited myemail#address.org." and then does so.
I actually wouldn't have expected that behavior, and would tend to see it as a bug (side-effect behavior that the user would have no reason to suspect, and which would potentially leak information (like their email address)).
It may help to think of this as you specifying the calendar entry as it will appear on their calendar, as if they created it. As such, they aren't an attendee, they are the organizer.
I think you need to specify a METHOD:REQUEST line per the RFC: https://www.rfc-editor.org/rfc/rfc5545#section-3.7.2 and IETF draft: https://datatracker.ietf.org/doc/html/draft-ietf-calsify-2446bis-09#section-3.2.2
This should change the entry from a static representation of an entry in your calendar to an invitation. You will probably need a few more things per the IETF doc (like a UID).

Detecting image load on server

I am wondering how services like mailchimp detect email opens
I read it's because they add a 1x1 pixel image
Can someone tell me how this is done on my server ? I am using AWS :)
I would also like to know how these services detect things like device and browser/email client
I read it's because they add a 1x1 pixel image
True
Can someone tell me how this is done on my server ? I am using AWS :)
The usual approach is to set the image source attribute to a URL on your web server that includes a query string parameter that you can track back to a particular user, for example a hash of the user's email address or their ID in your system, e.g. in the email you send you add a tag like this
<img src="http://example.com/track?id=42 width="1" height="1" />
That forces the email client to load the URL http://example.com/track, which would return a 1x1 transparent image and also log that the ID 42 requested that image.
Note that some email clients block images from some domains. If the user has you in their contacts list, chances are pretty good the image will be shown. Some ISPs will consider your sending reputation, your implementation of email security standards (e.g. SPF/DMARC) and other factors in deciding whether to actually request and display the pixel data.

Google analytics email open tracking with measurement protocol

we tried to track email opens with google analytics and measurement protocol. We exactly followed instructions given in http://www.lunametrics.com/blog/2013/06/17/email-tracking-google-analytics/ and http://dyn.com/blog/tracking-email-opens-via-google-analytics/
The problem is that every email open is counted also as a session which is not correct. Can you give me any advice how we can track opens without recording sessions? Thank you
Every hit in GA always starts a session, so this is not possible. If you don't want it to appear in your normal profile, try setting a pageview with prefix so you can filter them out into a seperate View.
e.g.
/virtual/email-open
Then set up your filters.
Session begins with any interaction. Don't be sad, it is correct.
You can extend your data with some identifier like virtualpagname or whatever and than make segment or filter.
dp=mypage.com
dh=/emailing
dt=Email Gate
You can either use datasource parameter:
ds=email
https://developers.google.com/analytics/devguides/collection/analyticsjs/field-reference#dataSource