5 ms·
If this associates analytics with personal data, it is a tremendous invasion of privacy, especially in the mobile space where it is not expected that interactin
by flatline3 14y ago
If this associates analytics with personal data, it is a tremendous invasion of privacy, especially in the mobile space where it is not expected that interacting with a local application would send your usage data to a remote server.
- rogerbinns 14y agoOur experience in the mobile space with mixpanel was extremely disappointing. For anyone who wants to try it I strongly recommend you do a non-trivial trial run first, and verify everything. One example of something that bit us was that the mixpanel servers modify the time stamp from a client if it is in the future. It turns out this happens quite regularly with mobile devices (especially Android). Consequently a batch of data coming in would all have the same time stamp destroying the ability to see what happened over time. Another example is that Mixpanel will add country information to incoming data, but refuse to add to regional information so the only thing you know about US users is that they were in the US.
- phil 14y agoWhat are you using now? Do you like it?
- rogerbinns 14y agoWe are still on mixpanel because it is hard to extricate ourselves, but obviously that isn't the long term plan. I can point to mistakes I made such as the higher posting. In our case some extra numbers are sent with each event and the values of those numbers are interesting. (One example is the volume level of the device.) With Google Analytics where they term this custom variables all you get to see is the average value which is spectacularly useless. Mixpanel would show us the distribution, but only for a particular event type. We have about 20 different events, so working it out across all 20 would be too tedious. Today we only use mixpanel as a receiver of events. We export the analytics data from them and then work on that locally. Unfortunately they only provide an export every 24 hours. We do not use any of their other functionality although we did try.
- deleted 14y ago[deleted]
- alexatkeplar 14y agoIf you are hand-rolling your own analytics, it sounds like it might be simpler/cheaper for you to use SnowPlow (https://github.com/snowplow/snowplow https://github.com/snowplow/snowplow) for your use case - especially as you can grab the data hourly from S3 rather than every 24 hours. Unfortunately we don't have mobile clients yet :-( (although we are working on them) - which platforms would you need? Feel free to reach out on alex@snowplowanalytics.com
- rogerbinns 14y agoSnowplow is only about web analytics as far as I can tell. There are a bazillion solutions out there for that. For mobile app analytics you need a client library in Java (Android) and Objective C (iOS). The client library needs to record analytics events into a SQLite database, and then periodically try to upload them to a server (you don't always have connectivity). Attention must also be paid to things like roaming (do you want to burn user's data, it can be expensive in many parts of the world). You also need cleanup (eg if you can't send data for many days then you'll likely want to discard it). You'll want to make sure the client plays nice (eg not creating lots of threads and causing constant wakeups). It should also supply platform information since you'll want to analyze versions, screen sizes etc. There are various other little details that matter on the client. On the server side it needs to correctly cope with data arriving days late, with "incorrect" time stamps from clients. And you'll want to easily do pointy clicky through the data as you'll have some common questions such as what are the most prevalent platform versions and devices and how does that correlate by country.
- alexatkeplar 14y agoThanks Roger, that's helpful input. I'm adding a "client-timestamp" to the SnowPlow querystring instead of just relying on the CloudFront timestamp ;-) Out of interest, is there anything about the MixPanel mobile client libraries (Android/iOS) that you would do differently if you were starting from scratch?
- endlessvoid94 14y agoHave you tried http://www.kontagent.com http://www.kontagent.com?
- rogerbinns 14y agoAll I find is marketing. Another lesson learned the hard way is that I will not touch any analytics SDK code unless it is open source. It needs to have an actual clear license attached. We got bitten with Google Analytics, because it can only report against one ID. That means if a library in the app also uses GA, then you can't have the different parts using different ids. This turned out to be a showstopper and they had no code to examine.
- onur 14y agoYou can take a look at http://count.ly http://count.ly if you are looking for an open source solution. It has a Node.js + MongoDB server and Android & iOS SDKs. (Yes I'm the developer)
- rogerbinns 14y agoIt only matters that the client is open source (note I didn't say free software). This is so you can read the code and be proactive about issues in it. For example the mixpanel client for Android caused one thread to be created whose sole purpose was to fire a timer event every 60 seconds, which was used in a second thread to see if there was any work to do. It is a lot easier to figure out stuff like that is happening from the source than to try and work out who is responsible for extra threads showing up in the debugger. If there is a suitable license then you can at least modify and redistribute the changed code. We do actually do our import and custom processing in MongoDB, so that side is covered.
- endlessvoid94 14y agoThat's because it's not free. In general, you get what you pay for.
- JanezStupar 14y agoAnother dissatisfied Mixpanel lead here (who didn't get past the evaluation phase). I also got bitten by their handling of timestamp. e.g. - scenario: Your users create bookings (which are normally done in the future). How do you approach this? Well you submit a date field in the document you send to Mixpanel. But then you figure out that ONLY time axis supported by Mixpanel is their timestamp. Which could make sense for an off the shelf service, since you probably really don't want to build indexes against random user data. Ok, take 2 - so I only have one X axis available (the Mixpanel Timestamp), however you soon figure out that Mixpanel just silently prunes your future timestamp to @now. The worst part for me was Mixpanel teams total bewilderment as to why anybody would want either additional time axes OR future timestamps. Guys your service really shows promise for building a fast and simple to use analytics. I really don't want to roll my own analytics service just to show simple activity timelines to my customers. I also don't want to maintain and support the infrastructure necesary - at least not at this time. Please realize that there are other cases for real time analytics besides funneling users towards "Buy now!" or "Signup now!" pages. Are there any similar alternatives (I searched quite a bit but found nothing) or on the other hand if there are not - would there be anybody interested in joining up with me to build a service.
- suhail 14y agoPeople's UI actually supports changing the x-axis so this problem is handled. We plan on bringing the same UI to other parts of Mixpanel soon. This problem will be fixed - sorry!
- JanezStupar 14y agoReally nice.