

Ask HN: Is there a good analytics tool for single page web apps? - monvural

I was going to use Google Analytics, but it's driven by page views, and there is only 1 page in my app. Everything else is dynamic.<p>Is there another solution?
======
callmevlad
Using something like Mixpanel, you should be able to track anything that
happens in your JavaScript code. However, it's not just a insert-a-script-and-
sit-back solution; you have to be diligent about the actions you want to track
and actually add code to track them as they happen.

~~~
mvanveen
I find mixpanel to be really good here also. Unfortunately, I quickly
surpassed Mixpanel's 500 user free tier and it's been less useful ever since,
but it still tracks events and has a lot of really helpful views on your data.

Recently, I've started homebrewing my own solution using Firebase
(www.firebase.com). I've found it extremely straightforward and am enjoying
having more control over my analytics data.

------
sunspeck
Google Analytics might meet your needs if you script Events into your app.

[https://developers.google.com/analytics/devguides/collection...](https://developers.google.com/analytics/devguides/collection/gajs/eventTrackerGuide)

~~~
jiaaro
This is what we do with rootbuzz, and it works well.

You'll want to acquaint yourself with custom segments if you take this
approach too.

custom segments (from the google knowledge base):

[http://support.google.com/googleanalytics/bin/answer.py?hl=e...](http://support.google.com/googleanalytics/bin/answer.py?hl=en&answer=108040)

this blog post does a better job of explaining how to use them though imho:

[http://www.searchenginepeople.com/blog/monitor-seo-
projects-...](http://www.searchenginepeople.com/blog/monitor-seo-projects-
with-google-analytics-custom-segments.html)

------
bialecki
This is a hard question to answer in the abstract. What are the top 2-3
questions you want to answer?

If it's about understanding the users of your app and what they look like, GA
probably wouldn't be a good choice even if you didn't have a single page app
because it's tailored for tracking activity across all users, not activity
broken down by user. (For instance, it's good at answering the question,
"Which feature gets the most usage?" not, "Which feature is used by the most
people?" and that's an important difference.)

Many analytical tools claim they can answer the latter question, but look for
example use cases to make sure they're answering the right question. A little
research up front can save you the time of integrating a service only to find
it doesn't answer the questions you want answered.

------
bwang29
"Is there another solution?" You could definitely start building some simple
analytic functions into your product (even writing text files on your backend
when some user behavior happen will work). Be flexible and focus on priority.
It might be helpful to learn some linux commands like awk to quickly analyze
your data. But this question depends much on your exact needs.

