4 comments

[ 2.9 ms ] story [ 19.8 ms ] thread
It's an interesting idea, but you must understand the limitations of GA. After around 250k events it will start sampling your data. From personal experience, this is very limiting. There's also a not-insignificant delay between the data being sent to GA and extracting it out. From what I could tell, it's also non-deterministic, so you might get some events processed and to show, but others will not show for a while.

To give some context: I created an A/B test framework that (can also) use GA as a backend[0]. However, given this limitation I changed direction and created a backend using AWS Lambda and Redis[1], and also later explored using AWS Lambda with Google BigQuery[2] as a backend.

For small / medium scale, I would still stick to something like Graphite though. You can fit quite a bit of event traffic even on a low-end VPS these days. If you need to scale up, then either a hosted solution like the ones you mentioned, or building something on top of BigQuery (or keen.io) seems like a better approach than relying on GA.

[0] https://github.com/Alephbet/alephbet

[1] https://github.com/Alephbet/gimel

[2] http://blog.gingerlime.com/2016/a-scalable-analytics-backend...

(comment deleted)
This is more an experiment for dealing with smaller sites since I don't really have a lot of events to track at the moment. But I agree that the solution you proposed is a better idea.

Would you be interested in submitting your Lambda app to opsZero? https://www.opszero.com

Even for smaller sites I think you'd be better off setting a $5 VPS and run graphite or something similar. The delay in getting results from GA alone is a good enough reason not to rely on Analytics for metrics.

Even a very small system can easily generate enough events that it becomes a problem.

Had a look at opszero and couldn't work out why I should submit Gimel there. What would my project gain from being there?