set cookie on the chrome extensions (chrome://extensions) for google analytics - javascript

I'm new to chrome extension development. we've needed to trace our customers for out service growth. so we've been wanting to get the metric for retention of our users. but there were some wired thing that same number of users each user type was traced. I attached it below. this is Google Analytics Cohort Analysis of our service.
a screenshot on the google analytics
but I think Event metrics(Behavior > Events) are being collected correctly. screenshot is here.
Google Analytics > Behavior > Events
so I looked for Google Analytics users. and I've figured out that Google’s tracking snippet looks for a tracking cookie on user's device. site address is here. https://www.hotjar.com/google-analytics/glossary/users/
according to these documents, Google uses cookie to distinguish user type between new users and returning user. so I've set the checkProtocolTask option to false into GTM console like this. cuz chrome extension doesn't have http or https protocols.
Google Tag Manager Console
but user cohort is still weird. I really wanna get correct result of new users cohort analysis.
question
why google analytics shows us weird cohort result?
what can I do for this more?
my english ability is not good and I don't know Google Analytics well so my questions are kind of a mess. please understand me 🙏
thanks for reading this question!

Ok, so for Extension tracking, I have never heard of people using GTM for extension tracking. That doesn't sound correct to me. Just because of how GTM deploys analytics, expecting there to be a standard window scope, relying on all the standard window.location values and many other properties and like the resolution, viewport, "this" and such.
Moreover, since you're a JS developer and you're not going to delegate tracking to non-JS devs, you probably want to use GA's measurement protocol directly rather than completely relying on the default library through GTM.
With the measurement protocol, you will be able to explicitly set all the fields you're interested in, including client IDs. You will have to manage user cookies on your side, but it's easier than trying to force web tracking logic to work for extensions.
Here is the parameter reference. It may be very useful to you: https://developers.google.com/analytics/devguides/collection/protocol/v1/parameters
And here is an npm lib that implements measurement protocol. I use it with Node, but it can definitely be used on the front-end too: https://www.npmjs.com/package/universal-analytics
I actually tried quite a bit of npm packages for measurement protocol usage and I found this one the most comfortable for me. There's a lot of them. Feel free to browse.

Related

Google one tap login noCredentialsAvailable [duplicate]

I assume it has something to do with this:
For me Google one Tap stopped working on all my sites that previously worked. I added API HTTP refer to restriction in console.developer.com, but I still get a warning message "The client origin is not permitted to use this API." any thoughts? If you go to the page https://www.wego.com/ you can see that Google one tap still works...
https://news.ycombinator.com/item?id=17044518#17045809
but Google YOLO stop working for everyone. I use it like many people for login and it just stop work.
My domain are obviously added on console.developers.google.com
Any ETA for fix this? Some information would be great for people who rely on it.
Google YOLO is not disabled. It is open to a small list of Google Partners.
The reason you were able to access it earlier was because it was open for a short period of time but the whitelist is now readded/enabled.
Reference:
https://twitter.com/sirdarckcat/status/994867137704587264
Google YOLO was put on whitelist after a client-side exploit became clear to google.
People could cover the login button of the prompt with something like a cookie consent (which we all know people automatically accept).
Therefor people could easily steal their gmail or other details due to this google decided to put it on whitelist and review the sites that are using this technology in order to ensure that they are using it as they should.
Google retroactively labeled One-Tap as a "closed beta".
https://developers.google.com/identity/one-tap/web
The beta test program for this API is currently closed. We are improving the API's cross-browser functionality and will provide updates here in the coming months.
The link for the entire project is currently 404, but the beta statement is visible on the wayback machine.

How to Integrate Google Map JavaScript API V3 without Internet in Web Application? [duplicate]

Like Nokia's OVI maps can be used offline, there must be some way of caching Google map tiles too. Any hints?
If you are trying to cache the tiles that Google serves, that may be a violation of Google's Terms of Service (unless, under certain circumstances, if you've purchased their enterprise Maps API Premier). That's why gmapcatcher has it crossed off their list. See http://code.google.com/p/gmapcatcher/issues/detail?id=210.
At the gmapcatcher URL above, you will also find a shell script that can download tiles (or so its author says).
There are also other projects that try to make Google Maps available offline:
http://code.google.com/p/ogmaps/
http://code.google.com/p/gmapoffline/
Lastly, if Google Earth can meet your needs, then you can use that. Offline usage of Google Earth requires a Google Earth Enterprise license according to http://www.google.com/permissions/geoguidelines.html.
Note that the preceding page also says: "You may not scrape or otherwise export Content from Google Maps or Earth or save it for offline use." So if you try to cache tiles, that will almost certainly be considered (by Google, anyway) a violation of the Terms of Service.
Unfortunately, I found this link which appears to indicate that we cannot cache these locally, therefore making this question moot.
http://support.google.com/enterprise/doc/gme/terms/maps_purchase_agreement.html
4.4 Cache Restrictions. Customer may not pre-fetch, retrieve, cache, index, or store any Content, or portion of the Services with the exception being Customer may store limited amounts of Content solely to improve the performance of the Customer Implementation due to network latency, and only if Customer does so temporarily, securely, and in a manner that (a) does not permit use of the Content outside of the Services; (b) is session-based only (once the browser is closed, any additional storage is prohibited); (c) does not manipulate or aggregate any Content or portion of the Services; (d) does not prevent Google from accurately tracking Page Views; and (e) does not modify or adjust attribution in any way.
So it appears we cannot use Google map tiles offline, legally.
update:
I found the terms of use from Google Map:
Section 10.5
No caching or storage. You will not pre-fetch, cache, index, or store
any Content to be used outside the Service, except that you may store
limited amounts of Content solely for the purpose of improving the
performance of your Maps API Implementation due to network latency
(and not for the purpose of preventing Google from accurately tracking
usage), and only if such storage: is temporary (and in no event more
than 30 calendar days); is secure; does not manipulate or aggregate
any part of the Content or Service; and does not modify attribution in
any way.
It means we can cache for limited time actually
On http://www.google.com/earth/media/licensing.html there is a "Mobile" section containing :
Similar to our online terms, if you use our APIs or a mobile device’s native Google Maps implementation (such as on an Android-powered phone or iPhone), no special permission is required, but you must always keep the Google name visible. Offline caching of our content is never allowed.
You can use Open Street Map : you will find dozens of different layers and map types, and this is absolutely free. You can download all the map tiles you want. And of course, as anyone can enhance the map, it displays more information than Google's maps.
If you need help, you can ask the community which is also very active.
On Android platforms, Oruxmaps (http://www.oruxmaps.com) does a great job at caching all WMS sources. It is available in the play store.
I use it daily in remote areas without any connectivity, works like a charm.

Facebook conversion pixel and google tag manager

I am not an engineer but im asking question beyond my understanding. The company i work for recently reported that the Google Analytics often gave us wrong statistics. When i tried to scrawl the website's HTML code , I found that the facebook conversion pixel code was put ahead of the google tag manager code on our website. Does that affect how google analytics work ? In my mind, google analytics suggests us not to put other tracking code to interfere GA.
While it defeats the purpose of tag management systems to have tags outside the tag management container Google Analytics will work just fine with other tracking pixels, and Google certainly does not say anywhere that you should not use other tracking software. Nobody would use GA if it interfered with the normal operations of a website.
So no, the Facebook Pixel will not interfere with GA. You can easily check if the data is transmitted correctly if you use the Chrome extensions that Google provides - look for "Google Tag Assistant", that's the most userfriendly option. Install it via the Google Play Store, it will add a small icon to the right of your adress bar, and if you click the icon you can enable it for any given domain. It will display an error via a red icon if something is wrong, and will give some detailled information about what is being sent to the Google Analytics tracking server. That might help you to find the actual error if there is a problem with data collection (it will not help you to find configuration problems).

How to send 'custom variables' parameters in Measurement Protocol(GA)?

I'm develop on a html5 project. The project is an news reading html5 site. It has offline reading feature, now we need to integration the Google analzyer to get the user access report.
But we found the GA js sdk do not support offline function.
Then I try to get more information on the GA help site. I found the Measurement Protocol can help to do this.
It's said we can send the GA request through the API. But I stop again on the develop process, because we need to send custom variables like JS SDK:
_gaq.push(['_setCustomVar', 1, 'user-online', 1, 1]);
I've checked on the GA help site but not any informations about the "Custom Variables".
I think this article should be of help but there are no more detail sample code to explain the parameters.
Universal Analytics (UA) is what the Measurement Protocol drives. They've changed quite a few things. Not sure about the accuracy of the other elements of this article, but it is correct about the fact that Custom Dimensions have replaced Custom Variables in UA https://www.optimizesmart.com/beginners-guide-to-universal-analytics-creating-custom-dimensions-metrics/
Head here to read about Custom Dimensions https://developers.google.com/analytics/devguides/collection/protocol/v1/parameters#cd_
Did you read this? https://developers.google.com/analytics/devguides/collection/gajs/methods/gaJSApiBasicConfiguration#_gat.GA_Tracker_._setCustomVar
It's name, value and scope, identical to the old analytics

Can Google Analytics reports be poisoned?

Are Google Analytics reports vulnerable to having false data injected by malicious users?
Could a malicious user edit the Google Analytics javascript that runs on your page in order to put some false data in your reports to mislead you?
Yes. It is possible.
JavaScript is a user-editable environment, and Google Analytics does not validate the data.
So, you could just inject JavaScript into the page to send any data you like to peoples' Google Analytics accounts, and there's no "validate" which data is valid and which isn't.
I can pop open DevTools Console on my chrome and just enter in Google Analytics data on any site that uses GA:
_gaq.push(["_trackPageview", "/anything-you-want-to-send"]);
This also applies to people "taking" your Google Analytics snippet to put on your site. Luckily, that type of hostile behavior is filterable, since you can configure Google Analytics to exclude data from foreign hostnames.
Good question, even we had implemented this and had never crossed our mind, maybe this will help to fix it. I must try the duplicate profile and understand it more...
https://web.archive.org/web/20120530210930/http://techhacking.com/2011/01/23/google-analytics-referrer-spammers/

Categories

Resources