Interesting article, but the choice isn't truly a binary one between a SaaS solution and hand-rolling everything from scratch... Snowplow is a pre-rolled opensource analytics stack which runs on AWS, so it's pretty minimal in terms of developer effort and maintenance, <i>and you get to own all your data</i>.<p><a href="https://github.com/snowplow/snowplow" rel="nofollow">https://github.com/snowplow/snowplow</a> | <a href="http://snowplowanalytics.com/analytics/index.html" rel="nofollow">http://snowplowanalytics.com/analytics/index.html</a><p>(And it's easy to build Chartio dashboards on top of Snowplow data - we're big fans of Chartio.)
I started building a custom analytics solution like this, you basically passed all the data you wanted to it (from however disparate sources you like), and you could write custom Lua scripts to process them in whatever way you wanted. It had a pretty simple widget/graph API that allowed you to basically return JSON to be turned into a full dashboard.<p>I didn't manage to get anyone to want to try it out in the year I was looking for potential customers, so I shut it down in the end.