When will the update come out?
Closed this issue · 13 comments
Thank you for the current solution. According to the readme, there will be a "more robust solution". I'm really looking forward to it. May I ask is there an estimated arrival time?
Hello Frederic!
Thank you for your interest! It is almost ready on our end, however, it is blocked by issues with third-party services. Let me provide an example.
We have Google Tag Manager set up with a lot of stuff connected to it. While almost all 3rd-parties work well while proxying analytics, one of them doesn't properly submit the geolocation based on the redefined IP address in terms of Google Measurement Protocol. Hence, the data that appears in Google BigQuery is not valid.
The second point that we haven't confirmed yet is rate-limiting: whether Google Analytics or 3rd parties have any rate limits, because we have a pretty decent number of users and just a couple of IP addresses (yet).
Despite of these issues I surely can publish a solution, but people will just get the same pain as we have.
What are you building then and how much users do you expect?
Hi Nikita!
I just switched to Google Analytics for my personal project, which has around 2k users per day. I found your article on Medium because my GA code is blocked by my own ad-blocker. Then I went to this repository and found there are going to be an even more robust solution. (So I came to ask the ETA because it would be great if I don't have to do the thing twice)
GA seems more powerful than my former choice of analytics product. However, I didn't get too deep into those powerful features yet, nor do I have knowledge in Google Tag Manager. So I guess there isn't much I can help with.
That's nice!
Google Tag Manager is basically a javascript that loads once and then hotloads all the analytics stuff that you set up in a Google Tag Manager Panel: Google Analytics, Google *, 3rd-party services and trackers, etc.
All right, I see people looking for this more and more so I will think of open-sourcing the solution somewhen in the next couple of weeks. Basically, it's the more robust proxy, which a) does proxying via URLs instead of servers/IPs b) masks URL paths that appear in ad-blocker bases and demasks them when proxying and c) has a custom logic for IP redefining for such services as Google Analytics.
Problems to consider:
a) Rate limiting (possibility - I didn't face it yet) if you have many users and a single analytics proxy server
b) Possible problems with location detection in some 3rd-parties (apart from that Google Analytics works perfectly fine)
However, I have to say that at some point, I was considering selling this program solution, because many startups like mine are looking for it, and, moreover, there are multiple solutions over the internet which are trying to build a business on top of this. Sounds pretty possible? This is still in my head... I can predict that someone will copy and upgrade my code, making some kind of complete "superproxy" service which will solve all the issues (rate limiting and bad 3rd parties) - which is a nice business nowadays. Adblockers can't go deeper to dynamically analyze javascript because they'll simply slow down the whole thing. Let me sleep on it.
@fr0der1c, would you have paid, say, $50 (depending on the superproxy load) to get this solution if it had existed? What do you think?
Thanks for the explanation on Google Tag Manager.
As for me, I'm a student and my project is an open-source & hobby one so I don't change my end-user at the moment. Since there is no income, I think I will use the current one if the new solution is a paid one. The startups might be interested, though.
By the way, I'm not familiar with Javascript but the server.js
seems single-threaded and blocking. Is this okay in production?
Thanks for the feedback. The server.js
isn't blocking while it's single-threaded, as well as many of the things in NodeJS. It's up to the library of course, but express.js processes requests in parallel.
@fr0der1c GTM doesn’t collect geo location on its own, as far as I know. Google Analytics does. So there’s no need to redefine any parameters for GTM scripts.
Thanks. Your information is helpful. I forked a dockerized Nginx proxy and added support of gtag.js and gtm.js.Now my sites with GA and Tag Manager (just started trying) is no longer be blocked!
You're welcome @fr0der1c, glad to hear that! I'll keep you posted about the code updates here.
Hi, also interested in this. Did you decide if you'll release an open source version of the updated proxy?
@laviniug, thanks for expressing your interest! I really appreciate this.
I am super busy this week, however, I've decided to open-source the solution - expect the updates to arrive in (hopefully) 4-5 days!
Alright, now I've uploaded this "more robust" solution - you are very welcome to test it and please give some feedback! Thanks!