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.
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.
"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.