How to Track LinkedIn Career, Jobs and Life Pages in Google Analytics with GMP
Linkedin company pages have sections known as Jobs and Life pages, where companies can post available jobs and lots of information about working there, such as work environment and such.
Linkedin provides the ability to track visits on a number of third party analytics solutions through the installation of a tracking pixel. In this post, however, we will be focusing on Google Analytics because of its wide use.
The reasons you might want to track this is to build reports about your recruiting efforts, such as traffic impact of a career fair, open house, exhibit or paid advertising.
The pixel entry fields look like this:
Where to get the Google Analytics Pixel you need for LinkedIn Career / Jobs and Life Pages
We’re going to have to go into the weeds a bit about Google Analytics, so let me introduce two topics:
- Google Analytics Hit Builder
- Google Analytics Measurement Protocol
Pageviews, but Not Users: Linkedin Does Not Provide A UUID / Namespace Insertion Option for GMP. Know this before you deploy.
Please be aware that the method below has a problem. The issue is that the user id (cid) cannot be assigned so that Google Analytics will treat each visitor as a unique user. This means you’ll end up with many sessions and few users in the reports. The only way to fix this problem will be for Linkedin to allow for a variable (a random number per https://www.ietf.org/rfc/rfc4122.txt) to be inserted into the field to serve as the unique CID. So This Whole Feature Works Part Way (Pageviews, but not Users). This may work for you. It may be a show stopper. I have sent this to LinkedIn but I’m seriously doubting they will help.
Create and save a PAGE VIEW report as your primary source of information.
Understanding the Google Analytics Measurement Protocol for LinkedIn Career / Jobs Page Pixel Tracking
The Google Measurement Protocol allows developers to make HTTP requests in raw form to be sent directly to Google Analytics servers. It provides a long list of URL parameters used to enhance the hit based on your needs. Don’t get bogged down in the huge parameter list right now – we’re only going to use a few for the LinkedIn Tracking exercise.
So…. here’s the Analytics hit parameters we’ll be using for LinkedIn career pages with an explanation of each below – you can find a lot more detail about each of these online also.
- https://www.google-analytics.com/collect? (the URL of the tracking pixel, more on this shortly)
Parameters used above:
- v = Protoocl Version – this will be “1”
- tid = Tracking ID / Web Property ID – also known as your Google Analytics UA number
- cid = Client Id – an optional, anonymized user ID*
- dp = document path (the URL of your jobs or life pages, without parameters, encoded)
- dh = document host ( I use linkedin.com – which allows us to create filters in GA)
- dt = document title (for clean display in Google Analytics)
How to Use Google Analytics Hit Builder to Validate Pixel Hits on Your LinkedIn Career and Life Pages
The Google Analytics Hit builder is a cool tool for creating and validating analytics Measurement Protocol hits for use on various Google Analytics applications. With hit builder, you can send Analytics events directly to Google’s analytics servers, and then watch them in real time Here’s how our parameters look all plugged in to Hit Builder:
Note: The cid parameter is optional, but hit builder won’t run without it for me, so I’ve added a very random number here. Since this hit is being added to a separate host, we cannot generate a cid on the fly. I am hoping to learn how to get LInkedIn to let us use a on-the-fly, random CID, but have not figured this out yet.
Once the parameters are in place, let’s validate our hit and send it to Google. Click “validate hit” under the parameters and you should see this. If it fails, look for syntax errors and keep trying.
Now, let’s open up Google Analytics in the account we’re using (which matches the cid of the hit) and open “real time” / “content” Now, click “Send hit to Google Analytics” Wait a moment and you should see the hit show up in real time view!
Now that we know the hit paylod is working with google Analytics servers, in hit builder click “copy hit payload” and save it in a notepad.
Rinse, Repeat for all the pages you want to track (save stuff in a notepad.)
Do this for each of the pages you need analytics for… one for the life page, jobs page, etc. Pretty much any page that LinkedIn decides to offer a tracking pixel on. Don’t forget to change the dp and dt parameters appropriately so these hits show up correctly in Google Analytics reports.
Measurement Protocol (GMP) Tweaked for LinkedIn use
Now that we have beautiful GAMP hits saved for our LinkedIn Pages, it’s time to finish the construction of the pixel. For this, we’re going to use a trick from GMP for emails documentation.
GAMP for emails refers to the Google tracking pixel like this:
Which you’ve probably guessed by now is the final piece of the puzzle before we add things to LinkedIn’s pages! That’s right, just construct the URLs from the first part of this post and this GMP pixel so you get the following:
Linkedin Careers Life Page
Adding Tracking Pixels to LinkedIn Jobs and Career Life Pages
I think the rest of this process is self explanatory. It’s time to head over to your LinkedIn Company page Careers sections in admin mode.
Take the GMP pixel code for each respective page and add it into LinkedIn.
Once you’ve saved and published the appropriate Linkedin pages with their respective GMP links in place, you need to “view as member” and test it, while looking at your Google Analytics real time view.
If everything is working you should see visits on that report from these pages.
TIP: You can also use Google Analytics tag assistant to check if your GA tag is installed on those pages.
You’re Now Reporting Data from LinkedIn on Your GA!
You may want to isolate these visits using filters or otherwise split them – maybe into a different analytics view?
EDIT: We are putting all of these in separate GA views using Property-level Google Analytics Rules and a bit of renaming. Works well.
If this helped you, let me know!!!
*I am not sure if there’s a way to generate a valid, unique CID on the fly for these pages so that we can do audience building in GA. This is something I’ll be looking into and will append to this article if I figure it out.
Thank you for these directions. I am going to give it a try.
Let us know if you solve it! It would be nice if Linkedin would document this a bit better.
Hi Scott, this was very helpful! I got this to work as you described, but it seems we are defining a static URL to send pageview data for. Is there a way to send dynamic pageview data for the actual Job postings as well? Or, do I need to add a unique pixel to every single job posting and define the parameters I want to send for each?
No…. and we don’t understand why Linkedin doesn’t give us either page-wide pixels to use. We can only assume the reason is they are concerned it might impact something they have to sell now or later. We’re actually confused by why they gave pixel access to the pages they did! We can only hope it’s harbinger of more trackable company pages in the future.