最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

javascript - Capturing Hotjar User ID in Google Tag Manager & Google Analytics - Stack Overflow

programmeradmin2浏览0评论

We have a setup where we capture Hotjar User ID in Google Tag Manager and then pass it as a custom dimension to Google Analytics. It's done to simply merge and cross-reference both data sources.

We used the following code to capture the User ID:

function() { return hj.property.get('userId'); }

2 days back we stopped receiving the data, even though there haven't been any changes to Google Tag Manage, Google Analytics or our Hotjar account.

My suspicion is that there have been a system update on the Hotjar end. I had a chat with their technical support, but they were unable to help me.

Would be great if someone with more experience could have a look at the following file, to see if there is a way to capturing the 'userId' value:

.js

Thanks

We have a setup where we capture Hotjar User ID in Google Tag Manager and then pass it as a custom dimension to Google Analytics. It's done to simply merge and cross-reference both data sources.

We used the following code to capture the User ID:

function() { return hj.property.get('userId'); }

2 days back we stopped receiving the data, even though there haven't been any changes to Google Tag Manage, Google Analytics or our Hotjar account.

My suspicion is that there have been a system update on the Hotjar end. I had a chat with their technical support, but they were unable to help me.

Would be great if someone with more experience could have a look at the following file, to see if there is a way to capturing the 'userId' value:

https://script.hotjar.com/modules-397099a69f05558cbf66f164cffcaf65.js

Thanks

Share Improve this question edited Mar 20, 2018 at 13:33 Victor Leontyev 8,7362 gold badges19 silver badges37 bronze badges asked Nov 17, 2016 at 0:30 TomGTomG 711 silver badge3 bronze badges 5
  • Can you unpack that file (into jsfiddle or something) or update your question with relevant snippet of code? I'm at work and a bit paranoid, so I don't want to click that link. ;) – nyuen Commented Nov 17, 2016 at 1:13
  • It's a legit URL. Unfortunately the script is too large for me to post it here. Not enough available characters. – TomG Commented Nov 17, 2016 at 9:23
  • Yeah... that's too much to sift through and the scope the is too big, I'm afraid. You'll have to try hard to narrow it down to what you think could be the problem. – nyuen Commented Nov 17, 2016 at 18:12
  • I got this problem too. Previously "hj.property.get('userId');" will return me the HotJar ID but now it showing is not a function in console. – yk1007 Commented Nov 25, 2016 at 8:09
  • @TomG i've just received response from Hj: "[...] That is correct, yes. We changed our tracking code. In the future we will offer a more "unbreakable" solution on how to extract the userID. We are currently working on this and will keep you updated on it!" – Łukasz Rysiak Commented Dec 19, 2016 at 10:30
Add a comment  | 

7 Answers 7

Reset to default 7

Please try hj.pageVisit.property.get('userId'). This one has returned a proper userId for me today.

As of FEB 2019 you can use the following to get the Hotjar User ID:

hj.globals.get("userId").split("-").shift()

Having looked at the JS file loaded by HotJar i discovered the following code

hj.hq.isUndefined(hj.globals.get("userId"))

From that i extracted the following

hj.globals.get("userId")

And this works for me as of today. Hope this helps someone else. Please let me know if it has worked in all cases.

It looks like it is not available in DOM right now.

According to Hotjar support:

...this change came about when we moved towards supporting Single Page Apps. I'm told that we may provide this ability again in the future, though I don't have an ETA for it at the moment, as we're currently focusing on improving other aspects of Hotjar.

Checking our current requests for this, it unfortunately seems that not a lot of users are voting on this feature - this is why it's pivotal for us to get this feedback on our "Suggest a Feature" tool

Cheers, Florian .

Try this, but check with setTimeout until you get a value:

hj.pageVisit.property.get('userId').

OBS: In IE don't run this code... getting undefined value in response.

This code worked for me:

hj.globals.key.split("-").shift()    

If you are using GTM, use setTimeout or Tag sequencing to make sure this is triggered after hotjar Tag is loaded.

Working method as of December 2024:

hj.bridge.getSessionUserId()
发布评论

评论列表(0)

  1. 暂无评论