Determining how and when Google Analytics 4 collects website event data

With Google Analytics 4 (GA4), Google’s next generation of Analytics, replacing Universal Analytics (UA)  in July, it’s crucial to learn and analyze how GA4 processes data as well as its time frame.

Why is tracking event-based data in GA4 important for search engine optimization?

With GA4, we can analyze events and conversions in reports. We are also able to view pages on the website that are receiving the most traffic as well as how many events/conversions are being tracked on that page. With this data being tracked, we can report back to clients how landing pages are performing, what internal/external links users are clicking on, how many form submissions are being filled out, etc. The number of events and conversions can help determine what SEO efforts need to be made for an overall improved ranking. 

Analyzing how GA4 tracks new events

To test GA4 event tracking, we created a new page on a sample website as well as added an outside link on that page. We ensured that this website had a GA4 property tagged to accurately track the data. To track this link click event in Analytics, we created a new GA4 Event Tag in Google Tag Manager with a trigger that fired when that specific link was clicked. Once the event is created, it takes around 24 hours for this new event to appear in GA4. 

 

Google Tag Manager: GA4 Event Tag

 

Event Names/Counts in GA4

 

How long does it take for event data to track in GA4?

By using this new event we created, we can test the timeframe for this data to appear in GA4. Over the course of a few weeks, we would click the link a few times and monitor GA4 to see how soon the new data would appear. After several trials, the new data for the event seemed to appear in GA4 around 16 hours after clicking the link twice.

Data from 3/22/2023 4:23 p.m.

 

Data from 3/23/2023 9:15 a.m.

 

Why should we monitor data processing time?

Up-to-date data, also known as data freshness, is important to identify trends, patterns, and user behaviors as they occur. This is especially important when using the data for reporting, for example in Google Looker Studio. To see how data updates when used in Looker Studio, we created a new report with a chart of the event data to view how long it takes for the fresh data in GA4 to appear in the report. After testing, the data appears exactly as it does in GA4 as soon as GA4 is up-to-date. This may vary depending on data freshness settings in Looker Studio, but we have an idea of when you can expect to see this data in your report. 

Keeping data freshness in mind, picking the right time frame for the most accurate data is important. For example, since our test calculated new event data won’t process until about 16 hours after it occurred, the data from the previous day is still being processed. To see what your website analytics numbers are looking like, the day before yesterday is the best time frame to view. It will be the freshest and most accurate data on your GA4 property. 

Looker Studio Report Data

 

Conclusion

Whether you’re reporting data or using data to improve SEO, it is important to ensure that the data is accurate and up to date. Based on our tests, once you’ve created a GA4 property or successfully migrated to GA4, you can expect to see fresh data in less than a day. Migrating from UA to GA4 can be an adjustment when it comes to data collection, so learning how/when data is collected in GA4 is a game changer when it comes to utilizing data for your campaign. 

Infographic: Fonts & Colors That Drive the World’s Top Brands

What Fonts and Colors Make a Perfect Logo?

We took a look at the world’s top 100 brands to determine which fonts, colors and formats were the most popular choices. Our infographic provides some good food for thought if you’ve hit a road block on your latest logo design.

Logo & Font Color Infographic

Share Our Fonts & Colors Infographic

You’re free to display our infographic on your website; however, the license we grant you requires that you properly and correctly attribute the work back to us with a link to our website by using the embed code provided below or simply by linking to our homepage:

Embed Code

<div style="width: 420px;">
<a href="https://tastyplacement.com/wp-content/uploads/Logo-and-Font-Color-Infographic-Full.jpg">
<img src="https://tastyplacement.com/wp-content/uploads/Logo-and-Font-Color-Infographic-Reduced.jpg" alt="Fonts & Colors Infographic" /></a>
Infographic authored by TastyPlacement, <a href="https://tastyplacement.com/">an Austin, TX-Based SEO, Digital Marketing, and web design agency</a>. To view the original post, <a href="https://tastyplacement.com/infographic-fonts-colors-logos">click here</a>.
</div>

About the Study: The Details

We based our research on the latest Forbes list of the world’s most powerful brands. Since brands frequently change or update their logos, our study reflects only the logos featured on the list. The color white was not included as a design feature if other colors were present. Apple’s white logo was the only exception.

The Results

We found that most brands opt for a blue logo featuring the world’s most popular sans-serif font, Helvetica. Serif fonts ended up being the least used typeface, although it hasn’t stopped Google from being listed as the #5 top brand in the world.

…and the thumbnail!:

Research Shows a 23% Divergence Between UA and GA4

TLDR;

To compare and contrast the way Universal Analytics (UA) and its newest version, Google Analytics 4 (GA4) collect data, we sampled multiple clients with both accounts over the month of October 2022. When comparing the UA and GA4 data side by side, we observed variations that average a 23% difference in the numbers between the platforms. We will be expanding further on the discrepancies found during this study.

Why are divergences in Universal Analytics and Google Analytics 4 data important?

The upcoming switch to Google Analytics 4 is approaching. After July 1st, 2023 the Universal Analytics platform will be going away forever and leaving behind Google Analytics 4 to take over all web analytics for website traffic online. It is important to better understand and depict the way data is measured across the two platforms for utmost success when setting website traffic goals.

Comparing Data from Universal Analytics with Data from Google Analytics 4

Throughout the month of October, we sampled over 30 clients that had active Universal Analytics and Google Analytics 4 accounts on their websites. We measured the data from both accounts focusing on three main metrics: User data, Session data, and Conversions data. Considering that these metrics do not translate exactly from UA over to GA4, the numbers we used are the closest equivalents of each other for the most accurate comparison. 

 

Although changes are expected when using a new platform, the differences need to be acknowledged. We calculated that there was an average of 5.3% difference in User data, a 3.2% difference in the Session data, and an astounding 65% difference in Goals data. Overall a 23% percent difference in all data when aggregated. 

What are the differences in User data in UA and GA4?

One of the main differences between User data in UA and GA4 is the primary metrics used. In UA, the primary metric is Total Users. This means that all users that visit the site are counted equally. In GA4, the primary metric used is Active Users. Only users that have an engaged session with the website are counted. An active user is described as someone who has been on any page longer than 10 seconds, completed a conversion event, or viewed two pages. 

 

Another difference is that Google states that GA4 is able to differentiate users across different platforms and devices. We are speculating this means that someone using their laptop and phone simultaneously would only be counted once in GA4 as opposed to twice in UA. This may have resulted in an average of 5.2% lower User data. However, even though traffic may appear lower in GA4, it is more certain that your users are not being duplicated and are engaging with your content.

 

How are Sessions data in UA and GA4 divergent?

The difference between Sessions data in UA and GA4 was smaller than the User data percentage with an average of a 3.2% change. This is most likely due to the fact that the definition of a session in UA versus in GA4 is fairly similar. Therefore, the numbers did not have a very noticeable change.

 

The big adjustment is that GA4 will be moving from grouping data into sessions to grouping it into events. An event consists of any interaction the user has with the website. This is completely customizable but some events that are automatically collected according to Zac Duncan from Root and Branch Group are:

  • session_start
  • first_visit
  • user_engagement

Why are conversions measured so differently in UA and GA4?

The biggest difference in our data happened when measuring conversions with an average percentage change of 65%. This correlates to what we mentioned above. Sessions are now events and events can equal conversions. We noticed that GA4 had higher conversion data than UA due to GA4 counting every event that occurred as a conversion. For example, GA4 was counting every single form fill or phone click despite the fact that it may have been clicked twice (or multiple times) by a user. We are able to see the Total Users next to conversions with a more realistic number, however, one must be very careful and remember it may be counting multiple conversions for one user.

 

UA

GA4 

 

The Conclusion 

All in all, this study was able to show how Google Analytics 4 will be measuring data in comparison to Universal Analytics. This is a big change that will require some getting used to. The biggest takeaway from this is that once you start collecting data with GA4, ensure the data you want to track is set up properly on the platform. This may be difficult to adjust to since it is a bit overwhelming to see all the ways GA4 lets you customize your data. That being said, once adjusted, you will be able to track all analytics data perfectly to your business needs. 

 

console post message text

How to Track Google Analytics Conversions on BuilderTrend’s iFrame Form

Let’s say you have a client who insists on using a third party webform on their site. In this case, the third party is BuilderTrend. For the client this is the best option because it merges with their office workflow and the actual process of building a house. For you, the agency, this is a poison pill, because BuilderTrend has no inbuilt Google Analytics functionality. BuilderTrend put their webform inside an iframe, the most convenient solution for them. They don’t have to worry about conflicts with the host site, or communication barriers with their server. They just tell their customers to embed the iframe on the contact page, and the work is done.

For an agency, particularly one running a Google Ads campaign, iframe contact forms are exceptionally dangerous because they sever you from seeing what your users are doing. It destroys your ability to track conversions in Google Analytics (or at least makes doing so a non-trivial feat, more on this as we go). In the case of BuilderTrend (and a few other iframe form applications, such as MailMunch), we have found a solution for tracking conversions which is not elegant, but it’s at least feasible.

Why You Need Conversion Tracking on Your Website

Back in the day, in the nascent days of SEO, analytics were just an afterthought. After all, you could see how well you were doing by seeing how well you were ranking. Today, Google Analytics is a vital tool for tracking the success of a campaign. After all, you’re only doing as well as the conversions you’re getting.

Once you bring Google Ads into the equation, tracking conversions is super, super, super critical. The effectiveness of your ad spend is directly proportional to the accuracy of your analytics. The creepy AI brain over at Google headquarters will see who’s converting on your site, and then present ads to more people like that. When your analytics track legitimate conversions, this smart targeting will put you on the fast track to success. If your analytics can’t see who’s converting (because they’re hidden behind an iframe) then you might as well be flushing your ad spend down the toilet for all the good it’s doing you.

The Problem with iFrames

You can think of iframes as an HTML element which allows you to put a window into another website within your webpage. For all practical purposes, your website, where all your analytics code is, has no authority over the content within the iframe. If it’s a different domain expressed by the iframe then you can’t grab user data from it any more than you can grab the user data of people visiting whitehouse.gov or Amazon. It’s a tantalizing pool of mystery, right there out of reach. There’s no real javascript solution, and if there were, then the programming community would shut it down for security reasons. You can’t take screenshots of the iframe. You might be able to put a transparent div on top of the iframe and track cursor movements, but that won’t tell you if they succeeded in filling out the form.

There are solutions to this conundrum, which require the domain in the iframe to cooperate with you. Mostly they are variations of the cross-domain tracking solutions which you can use on multi-site campaigns. Generally you need Google Tag Manager on all the domains involved. GTM will tag the URLs with a unique user ID so that Google can match up user behavior even when different cookies are tracking those users in different locations.

Unfortunately, you need control of Google Tag Manager on both ends of the cross-domain tracking, and third party organizations like BuilderTrend can’t be bothered to help out like that. It would be a lot of extra labor hours for them to get something like that to work, and they probably worry about their customers taking advantage of the ability to insert arbitrary javascript code onto the BuilderTrend servers. In short, helping out their customers with analytics tracking would require a ground-up approach. Consider Ngage, a javascript-based chat app, which has well-documented Google Analytics event capabilities. Ngage started out as a search marketing company, so it’s not surprising that they prioritized their customers’ need to track conversions onsite.

Why BuilderTrend is so Awful

BuilderTrend of course recognizes the importance of analytics. If you look at the Tag Assistant on any page with an embedded BuilderTrend form, you will see that they have quite a lot of analytics tags on their side of the iframe. Data is money, and they are certainly not going to let any of their data go to waste. They’re just not going to spend any extra effort helping out their customers with data. It’s sheer carelessness and contempt for their customers, that they would release a conversion capturing feature that has no conversion tracking features. Shame on you, BuilderTrend, shame. I hope y’all read this and do right by your customers, and give them a way of tracking conversions which isn’t as janky as the solution I explain in the next section.

The Terrible Yet Workable Solution

This next part is where we make coding choices which are so outlandish and seat-of-your-pants imprecise that they would surely leave Google Tag Manager guru Simo Ahava spinning in his grave (he’s not actually dead, but like all Finns he presumably has a pit for curing salmon and making graavilohi).

It’s not strictly true that there’s no way to see what’s going on inside an iframe. The site inside the iframe has to want to communicate with you. Or, as is the case more often than you realize, you can listen in to the bleed-through signals. Let’s take a look at the BuilderTrend embed code. Yes, there’s an iframe with its sinister one-way window. But there’s also an attached piece of javascript. You might ask yourself, what’s that for? The answer is, it’s for the convenience of the developers. You see, BuilderTrend wants the easiest one-size-fits-all solution they can get. So if you have an embedded iframe which contains a user-customized form, how does the webpage know the best dimensions of the iframe? If the user adds a field or two, suddenly it needs to be longer. This is the purpose of the attached code, every time the iframe loads, it tells the javascript onpage the best height to style the form, to prevent the iframe from taking up too much space or using those annoying scroll bars.

There’s a comment in the attached BuilderTrend javascript which gives us a mesmerizing glimpse into the minds of the developers:

// there have been mulitiple ways of doing this over the years, unfortunately this has to support all of them

So apparently a lot of thought and development time has gone into deciding how to style the form so that it looks good onpage, but nothing for the marketing needs of their customers.

The backchannel method of communication between BuildTrend’s iframe and the client page is called postMessage. We can listen into this channel using your Chrome Developer tools. Open the page containing the iframe and then right click and select “inspect.” When the window opens up, change to the “console” tab and enter the following command:
monitorEvents(window, ‘message’)
console post message listener
By right-clicking on the BuilderTrend iframe and selecting “Reload Frame,” we can see that a postMessage comes through every time the iframe reloads. And if you fill it out, the iframe reloads again to display the thank you message, while once again sending a postMessage to inform the javascript function about the preferred dimensions. In the console window the important information will show up under the “data:” section.
console post message text
Now that we know that the BuilderTrend servers send a postMessage with the form’s height every time the iframe reloads, we can now make an analytics event triggered by the postMessage. We like Google Tag Manager for this sort of project.

First thing we do is add a “Custom HTML” tag in GTM which pushes into the datalayer the two different data formats used to declare the frame height in the postMessage JSON.

<script>
    window.dataLayer = window.dataLayer ||[];
    var FrameHeightCount = 0;
    var JustHeightCount = 0;
    window.addEventListener('message',function(e) {
        if (e.data.FrameHeight) {FrameHeightCount++;}
        if (e.data.height) {JustHeightCount++;}
    window.dataLayer.push({
        'event' : 'BuilderTrend' + e.timeStamp,
        'bt_FrameHeight' : e.data.FrameHeight,
        'bt_JustHeight' : e.data.height,
        'bt_FrameHeightCount' : FrameHeightCount,
        'bt_JustHeightCount' : JustHeightCount
    });

});</script>

Once we have the relevant postMessage communications in the datalayer we can trigger events in both GA4 and UA.
GTM trigger screenshot for buildertrends
The customization I made to this particular trigger was to delay activation three seconds after page load, so that the initial postMessage declaring the iframe height doesn’t register as a conversion.

Why This PostMessage Tracking Method is Useful But Also Very Fragile

The reason this is a terrible solution is because there’s a lot of points where the conversion tracking could break down. We know that BuilderTrend has a history of changing the coding implementation. At any point they could change the JSON structure sent through postMessage from their silly iframe and this could break conversion tracking, leaving all of us internet marketers high and dry.

However, it appears to very nearly match up with the actual numbers of leads coming through, which is the most important part for us.

An informal (and limited) survey of these sorts of iframe forms shows us that about half leak postMessage information. We were able to use a similar method to track conversions on a Mailmunch form:
mailmunch custom html screenshot gtm
This code is a little simpler, just sending a datalayer event whenever it sees a robust data field in the postMessage JSON.

So should you check your clients’ terrible iframe forms to see if they have postMessage events? And should you cobble together a fragile conversion tracking system? For sure. But that doesn’t mean that software companies like BuilderTrend should be left off the hook. They need to show respect and consideration to their customers and their marketing needs, so that we don’t have to engineer crazy hacks just to run a simple Google Ads campaign.

Test Results: How to Stop Google Re-Writing Your Title Tags in the SERPs

TLDR; Experiments show that adding square brackets to the title tag and/or turning H1/H2 headings into questions will break Google’s tendency to put something other than your title tag in the SERP links.

Starting in about August of this year, us SEOs were shocked to discover that Google was rewriting the title links in the SERPs. For a long time it had just been assumed that the title tag was more or less sacrosanct. The title tag was the jewel of onpage optimization! But now Google grabbed heading elements from the page text and displayed them to users as if that’s what the SEOs had intended.

Of course we’re all a bit miffed about this.

We wanted to know the extent of the issue, so we asked one of our analysts, Erica, to do a survey of the SERPs, to see how this change affected our clients. And yes, a large portion of the SERP title links now showed something different, such as an H1. But while going down the list of clients, Erica noticed that titles which had non-standard characters bracketing the brand names, were more likely to display as written.

You may recall that a number of years ago (around 2013), another incident where Google did what it wanted with our title tags. Google began displaying brand names to the left of the SERP titles, connected with a colon. So instead of
Austin SEO Company | TastyPlacement
what showed in the SERPs was
TastyPlacement: Austin SEO Company

SERP title pivot

Brand name pivot in the wild

We assumed at the time this was because Google was tired of seeing title tags in the SERPS in the format of:
{keyword}{keyword}|{brand name}
It was fairly logical to us that if all the sites which ranked for a term had essentially the same title as the term itself, then the main point of uniqueness would be the brand name. So of course Google would try to make that more prominent. We called the SERP title rewrite, “the pivot.”

We had the bright idea at the time that we could confound the algorithm which made the pivot by surrounding the brand name with non-standard characters, in our case, left and right square brackets:
Austin SEO Company [TastyPlacement]
This worked 100% of the time, putting the titles on the SERPs pages as we wrote them. It looked snazzy to boot, and had no effect on the site rankings. Another welcome side effect is that it took up slightly less pixel real estate than that old standby the pipe character surrounded by two spaces.

But did the brackets have an effect on the title-rewrite phenomenon? What exactly was going on? And could we use scientific reasoning to test it all?

As it happens, we had the perfect testing subject in Client X. This client had above the fold rankings in dozens of locations around the country, delivered by a couple dozen very similar landing pages with very similar title tags. So first step, see what actually had happened to these pages in the SERPs.

September 20: Initial Conditions

    • Out of twenty-some local landing pages, only two retained the same title tag that we had originally wrote.
    • Twelve of the SERP titles were the same as the title tag, but were missing the brand name. These brand names were connected to the rest of the title tag with pipes, and the scuttlebutt is Google particularly hates these pipes when they do the rewrites. We’ll call what happened to these twelve pages: “Brand drops.”
brand name dropped from SERP title

A brand drop title in the wild

    • 8 of the SERP titles came from a heading element onpage, mostly H2s (H1s were in the slider, but H2s were right above the text, which may be why they were preferred). We’ll call this type of rewrite: “Heading-type.”

Heading-type in the wild

  • And one particular page, the black sheep of the bunch, had a brand drop title, with an extra keyword added from someplace mysterious.

Curiously, some of the headers titles had the brand name appended to the end with a hyphen, as if Google believed that some of these virtually identical pages required a brand declaration, and some did not. Almost seems to contradict what the pivot has been doing since 2013, no?

For the experiment, we put square brackets around the brand names in a randomly selected half of the <title> elements. We’re all scientists here, are we not? Control groups are our bread and butter.

We waited a month for the full indexing to take effect, and you’ll never believe the results! Well, you might.

Results of Brand-name Bracket Experiment

Of the control group, nothing much changed. If they had a brand drop, it was still a brand drop. If it was a heading-type, it stayed like that. One of the control group pages mutated from a heading SERP title to a brand drop, but otherwise the control group stayed remarkably the same for a couple of months.

In the experimental group, some shit went down.

  • 4 Brand drops turned into heading-types
  • 3 Heading-types stayed as heading-types
  • 1 What had been originally a correctly reproduced title tag, updated to the new title tag
  • 3 Brand drops turned into accurately reproduced title tags
  • 1 The aforementioned black sheep page correctly displayed its title tag, but then Google tacked a second brand name onto the end. Basically in every way Google made this title worse

For this first round, we came to the conclusion that the brand name square-brackets don’t affect the heading-type of SERP titles. However, they do have an effect on the brand drops. About half the time it will fix the SERP titles and show them as-is, and half the time it will give you the heading-type titles instead. Perhaps this is because Google’s title rewrite algorithm is essentially random? But that’s just speculation.

That’s when we had an idea for round two of the experiment. Clearly the heading-types were the real problem. What if we changed the headings onpage to questions? Like that last sentence? We were going on the assumption that Google wouldn’t care to have rhetorical statements and aggressive ad copy tricks polluting the SERPs.

Esti re-wrote about half of the heading-type H2s so that they formed questions, roughly in this format:
Are you looking for the best {keyword} in {region}?
After we questionized (yes, this is a word) the headings, we only waited about ten days for the pages to re-index.

Results of Question-type Headings

In the control group, all four SERP titles remained unchanged. But once again we saw action with the experimental group:

  • 3 Titles suddenly displaying correctly
  • 1 Still showing old heading
  • 1 Showing new “questionized” heading

Conclusion of Heading Questionizing

Turning your primary headers into questions isn’t foolproof, but it is very likely to dissuade Google from hiding your title tag. Better than even odds in your favor! There’s probably other tactics which will be able to confound the algorithm Google is using for this. You could use brackets, colons, tildas, or other a-typical characters in the headings. I bet some well-placed emojis will kick your headings off the SERPs.

Our speculation is that the real purpose of this title re-writing is to prevent homogeneity in SERP results. Consider how many sites which rank on the first page for “Austin SEO” have “Austin SEO” as the first two words of their title tags. Nearly all! By mixing up the sources of the SERP titles, Google is breaking up the visual impact for the user and making it easier to differentiate the results. Which may be good for the user, but maybe not for the SEOs who put a lot of time and effort into writing the title tags and controlling that messaging.

Have you seen this SERP title rewriting in the wild? Have you tried any techniques to mitigate the effects? We’d love to know about it! Leave us a comment below!

Study Authors:

Matthew Bey, Estibaliz Sanchez, Erica Mancha

Tasty Truly Is Awesome

Pro Tip: Track Your Website Goals in Google Analytics (and More)

Tracking Website Goals In Google Analytics Should Not Be Optional in 2021 & Beyond

As TastyPlacement enters its 14th year of operation, we remain astounded how many new clients come to use with improper Google Analytics installations. We see it all, from mangled Google Analytics Snippets, to doubled Analytics Snippets. Far more common though, are websites without Goal Conversion Tracking installed–which is like going to battle with a blindfold on.

But don’t believe me, look what Google says about it:

  • “Defining goals is a fundamental component of any digital analytics measurement plan.”
  • “Having properly configured goals allows Analytics to provide you with critical information, such as the number of conversions and the conversion rate for your site or app. Without this information, it’s almost impossible to evaluate the effectiveness of your online business and marketing campaigns.”
  • You can read the full article here on Google’s support website.

Goal Tracking Defined

Goal Tracking, or Conversion Tracking, is very simple: when a user visits your site, Goal Tracking is a measurement of whether that user takes a specific action such as:

  • Dialing your company phone number
  • Filling out a contact form
  • Engaging with a live chat or chat bot
  • Making a purchase

It’s vital to track goals: with goals tracked you can now know valuable, actionable information such as:

Goal Tracking Gives You More than Just Actionable Information

Now, let’s take it even farther. Google Ads can, with properly configured Goal Tracking, act on its own behalf using artificial intelligence to improve ad performance and increase Conversions.  More on this in a future article.

UTM Codes/Tags: A Quick Guide to Tagging Ads Like a Pro

UTM Codes: The Basics

When you have multiple channels funneling web traffic to your  website, UTM Codes let you control with precision how that web traffic is represented in Google Analytics. Here, look how slick this is…

So an ad tagged like this:

https://clientsite.com?utm_source=fb&utm_medium=cpc&utm_campaign=premium-phoenix&utm_content=carousel-phoenix-v2

Will appear like this in your Google Analytics:

UTM Tagging

UTM Tagging

How it works is super simple: Google Analytics is already set up to “Listen” for your tags–you do not need to do anything in Google Analytics.

Useless Fun With UTM Codes

So YOU can push any data you want through the codes…literally anything, so for example, if you wanted to toy with your co-workers:

This:

https://tastyplacement.com/?utm_source=matthew_smells&utm_medium=matthew_smells

Will appear in your Google Analytics like so:

When Are UTM Codes Useful?

  • They are an absolute must for Email campaigns. If you don’t tag links in your email newsletter, any clicks from the newsletter will report the “Source/Medium” as a mess of dozens of separate sources like “gmail”, “not set”, “search.mail.com”. This will happen because technically, the mail service is the referral source. The UTM Codes are the way to override this behavior.
  • You can also tag ads in obscure 3rd party networks.
  • You can UTM tag ads from social media campaigns. Facebook ads, for example, will appear correctly in Google Analytics as the source “fb”, but no campaign name, no ad name will populate, unless you tag each ad with a UTM Code.
  • If you are running a social campaign through an agency and they are not tagging your ads, you should not use that agency, you should use Austin-based digital marketing and SEO agency, TastyPlacement.

Let’s Dive in and Tag Our Links w/ UTM Codes

Before we start, here are a few key parts to remember:

  • Everything MUST be lowercase. Information that is passed to Google Analytics is case-sensitive so November-2019 and november-2019 will appear as different campaigns in Analytics.
  • We recommend only using dashes or underscores in tag names. No spaces, commas, periods, etc.
  • Most importantly, keep an organized naming convention!

This will save you the headache and mistake of having duplicate data in Google Analytics.

Example: Black Friday Sale Promotion

One of our e-commerce clients, Neurobiologix, sends monthly newsletters to their client base announcing promotions and deals they offer. In today’s example, we’re going to be sending out a newsletter promoting a Black Friday Sale.

Let’s go to Google’s Campaign URL Builder and fill out all of the appropriate fields. It will look like this:

UTM Tag Builder

 

Now, let’s break down the image above.

Website URL – Place the full URL of the page you are sending users to on your site.

Campaign Source – This is literally the “source” of website traffic. Is it a newsletter? Is it an ad? For social ad campaigns, this will be the web property that generates the traffic: fb, pinterest, etc. Keep in mind that you may already have organic traffic from, say, pinterest in your analytics. You want to use the same spelling, down to the capitalization so when you do a “Source” analysis, you want have Pinterest as one source and pinterest.com as another source. Just go look in your analytics account to be sure.

Campaign Medium – The medium is a well-defined channel in Google Analytics. These really are classes from which you should not stray:

  • cpc for paid ads
  • organic for organic traffic
  • referral for referral type traffic
  • email for referrals from email newsletters
  • direct for direct visits, but never use that in a UTM tag because by definition it means the source is largely unknown

Campaign Name – This is how you decide how you want to organize the data that comes in. Here at TastyPlacement, we like to analyze the data by  month, but you can also do it by quarter, season sale, etc. This is wide open, it’s up to you. “summer_promotion”, “march_2019_newsletter”, that sort of thing.

Campaign Term – This is the keyword you are using to identify your ad. We often leave this one blank.

Campaign Content – Now this part is optional. Use this field if you want to further filter out traffic for a specific occasion. In this example, Neurobiologix has already sent out a November newsletter early in the month. So in order to be able to distinguish the data between the first November newsletter and this Black Friday Sale promotion, we are going to use the Campaign Content field to track the data for this specific holiday newsletter with “black-friday-sale-2018”.

After filling out all the fields above, a link is automatically generated for you:

And that’s it! You are now ready to use this link to share with your users and be able to track where your campaigns are coming from.

Avoid Polluting Your Google Analytics Data w/ UTM Codes

UTM Codes appear permanently in your Google Analytics data–at least in that view. Remember that “matthew_smells” joke we did before? I could look that up in 20 years, and it will still be there.

If you are using these links in a monthly newsletter or ad campaign, make sure to replace the tagged URLs with the most current Campaign Name (aka time frame you want to track) in order to keep track of any conversions coming in during this period.

Tagged URLs can be reused through the same month unless the landing pages change in the newsletter

If you are tracking monthly traffic, the URLs must be changed each month in order to keep track of any conversions coming from the newsletters during this period.

Social Media Case Study: Hundreds of New Customers From Core Facebook Campaign

Multi-City Awareness Campaign Yields a Flood of New Customers

Our client is an installer of kitchen & bathroom cabinets for remodels and new construction, and operates in multiple cities. Our challenge getting new residential customers comes down to simply competing for their attention: most folks already have cabinets, and even if their existing cabinets are Grandma’s avocado green cabinets with rococo knobs, if the cabinets are working fine, customers might tend to leave well enough alone.

How to Target Customers in Social Media

Social media management is all about the targeting.

95% of social media campaigns that fail do so because the targeting is set wrong.  Now remember, the targeting you set at the commencement of a campaign is not necessarily the targeting that will yield otherworldly results–you need to test and optimize as you go.  In this case, our initial targeting (which we tweaked over time) targeted a mix of the the following customers:

  • Remarketing website visitors in a radius around the service area. But keep in mind, that this is real “reach”, it’s effective, yes, but you aren’t connecting with anyone new. It also winds up taking up only about 5% of the total ad spend, so it’s a smaller component of the overall budget.
  • Industry professionals and homeowners who matched interests such as Countertops (this is an actual interest available in Facebook and did quite well), HGTV, Dwell magazine, and about 60 others.
  • We also experimented with some Facebook lookalike audiences (ready-made audiences that Facebook’s systems create). Results with this selection were mixed.

How to Approach Facebook Ad Types Like a Pro

Our next decision was what type of ad to leverage for our Facebook ad campaign. Remember, the campaign strategy dictates the ad type–don’t misstep here, or you campaign might flop. We like Video Ads because they just develop such strong engagement, but there wasn’t a production budget for shooting and editing, and we wanted to get started more quickly. A Boosted Post didn’t seem right either (and almost never is a good choice, it’s marketing without a rudder). We didn’t like the fit with Page Like Ads either, they only give you Facebook followers, our strategy was to get clicks to the client’s website where we had highly developed landing pages already delivering high conversion rates. Then we turned to Carousel Ads, shown here in a final format:

Why did we like the idea of carousel ads? A few reasons. First, kitchens are all about drama, so we wanted to show off a nice gallery of the pro photography the client had developed. Second, we were able to show a variety of styles–this is key here because some folks aren’t going to like every style. With a variety of styles, we have a better chance of really connecting with a potential customer. That is the key: think about your campaign goals and how the ad type fits to that strategy.

TastyPlacement Assemble! Running the Ads and Our Results

We of course set up our UTM Codes, so when our ads are clicked in Facebook, our Google Analytics can track the clicks perfectly. The click-through URLs looks something like:

https://clientsite.com?utm_source=fb&utm_medium=cpc&utm_campaign=austin_spring&utm_content=carousel_2

So, with our ads tagged with Source/Medium set to fb/cpc, we are able to clearly segment out our source and gauge performance. Another important element is that we have goal tracking established. In this case, we measure when a new customer dials in or fills out our website form. This chart below shows 637 new customer inquiries we tracked from our Facebook ad campaign.

Facebook Conversions

Keep in mind, the price of the cabinet install service we are promoting is routinely around 10 thousand dollars, so these customers are pure gold.

Final Thoughts

There is something notable about this case study–it was a successful campaign because it followed a simple series of steps, but by no means did it require any massive effort.

 

 

 

 

 

How to Recognize the Indeed.com Robot and Other Unwanted Visitors

The longer you stare at Google Analytics, the more you see things that don’t make sense. Sometimes the irregularities pop right out, users who crawl every single page exactly once in a single session, or users who load up pages that can’t possibly exist a couple times every month. Most likely these abnormalities are caused by robots, those sneaky denizens of the inter-webs, teeming in the millions and doing their masters’ bidding. Mostly the robots don’t execute javascript, so they don’t manifest in Google Analytics. And you can filter out a lot of the robots which do use javacript by clicking the “exclude known bots and spiders” box in your GA view settings.

Why this box wouldn’t be checked by default is anyone’s guess. Between views where you forget to check off that box, and robots which get around Google’s filters, you will see a lot of this fake traffic once you start to look.

A few months ago we noticed one robot in particular which stood out from the others. Instead of hailing from Russia or the Philippines, or some other sketchy location, it seemed to originate from right here in Austin, Texas (also an admittedly sketchy location). The pattern was a single user loading all of the pages on the site one right after the other.

This crawling seems to have started within the last year or so, and the declared user agent was an outdated version of Firefox. Once we made a segment which isolated the stats we found it everywhere. It was like that scene from Independence Day where Jeff Goldblum discovers that there’s an alien signal inside all the telecommunications satellites.

Drilling down to all the dimensions allowed by Google, we found the smoking gun under Audience –> Technology –> Network.

We believe the robot is how Indeed.com gets some of its job listings. It scrapes the entire dang internet to find those sites where the companies can’t be bothered to post directly to Indeed.com.

Here’s the stats for identifying the Indeed bot:
City: Austin or sometimes Denver
Network: indeed inc
Nework domain: cyrusone.com
source/medium: direct/none
Browser: Firefox, 38.0, 1024×768

If Indeed has the hardware and expertise to scour the digital world with a fully rendering bot, you think they could also make it not execute Google Analytics. Just saying.

A Few Other Robots of Note in Google Analytics:

New York Mystery Robot

Appears to be probing sites for security flaws. Deliberately loads 404 pages with mysterious hashes in various subdirectories, such as /blog/aHQtZ3JvdX . It’s declaring the browser to be a year-old version of Chrome. One theory is the hashed 404 pages load up remote shells. Or maybe that’s just being paranoid. Nearly every site has dozens of visits a month.
City: New York
Network: microsoft corporation
Nework domain: unknown.unknown
source/medium: direct/none
Browser: Chrome, 57.0.2987.133, 1280×960

Amazon Bing Bot

Surprisingly pervasive, sometimes visiting every day. Usually loads homepage, but sometimes a gibberish 404 page. It’s really apparent if you visit the Acquisition –> Channels –> Organic page, the keyword “Amazon” shows up right near the top. It’s not clear what they’re trying to do here, there’s no obvious spam message, and they’re not crawling much content.
City: Santa Clara/Anaheim/New York
Nework domain: paloaltonetworks.com, unknown.unknown, keznews.com
source/medium: Bing/Organic: keyword “Amazon”
Browser: Internet Explorer 8, 800×600

Weird Brazil Traffic

It’s probably no surprise that if you’re getting Brazilian traffic on a Texas home-services site, that the Brazilian users are probably not actual prospect customers. A variety of cities in Brazil are the homes to bots which methodically crawl all a site’s content.
City: Itacoatiara (Brazil)
Nework domain: sovereignease.com
source/medium: direct/none
Browser: Chrome, 52.0.2743.116, 1920×1610

City: Santarem
Network Domain: ip-158-69-167.net
Source/Medium: direct/none
Browser: Chrome

City: Maraba
Network Domain: ip-66-70-225.net
Source/Medium: direct/none
Browser: Chrome

Let us know if you see any interesting bots crawling your sites!