[HN Gopher] Umami: Self-hosted open-source alternative to Google... ___________________________________________________________________ Umami: Self-hosted open-source alternative to Google Analytics Author : bananaoomarang Score : 473 points Date : 2020-08-18 13:35 UTC (9 hours ago) (HTM) web link (umami.is) (TXT) w3m dump (umami.is) | mikece wrote: | Are there any "Google Analytics" alternatives that aren't based | on Python, Node, Go, etc but something with a PHP back-end that | can be deployed to any commodity LAMP hosting provider? | ethor wrote: | Matomo uses php | mikece wrote: | And it's "Wordpress easy" to setup and doesn't require | special access or server config? | tacone wrote: | Yes. On the first run it will take you to a wizard to set | it up. | martin_a wrote: | Totally! Just set an instance up the other day. Done in | five minutes, you'll only need database credentials and a | somewhat "normal" PHP setup. | johnchristopher wrote: | There's even a plugin for wordpress that embeds matomo | itself if memory serves right. | johnchristopher wrote: | It's as easy as setting up GA in WordPress. Just inject the | JavaScript snippet built by your Matomo instance when | creating a new tracker. | moooo99 wrote: | I think the question was if the software itself is | actually simple to set up with a commodity web host. As | easy as upload via ftp and configure in webbrowser easy. | johnchristopher wrote: | Oops, my bad. You are totally right. | wizzwizz4 wrote: | You could check the ReverseEagle list: | https://developers.reverseeagle.org/replace/google-analytics... | | Also, anyone with a Tedomum account? It'd be nice if you could | open an issue about adding umami.is. | https://forge.tedomum.net/ReverseEagle/developers/-/issues | rapnie wrote: | Thanks! PS. there is a typo here (should be 'statisfy'): | https://developers.reverseeagle.org/replace/google- | analytics... | acidburnNSA wrote: | Would awstats meet this criteria? Not PHP but even simpler. I | have data from it going back to 2006 (maybe 2002 if I dig up | backups), which is a lot of fun. | | https://www.awstats.org/ | ibdf wrote: | I remember once at a previous job one of the devs forgot to | setup google analytics which was the go to tool at the time. | Client calls in wanting to get some stats for their site | after 3 months, and we had nothing... thankfully awstats | comes with cpanel without any additional setup, and we had | something to show. Not great, but better than nothing. | XCSme wrote: | I built one: https://usertrack.net | | It has a plain PHP + MySQL backend, so it's really easy to | install (on a LAMP server, as a WordPress plugin or one-click | install on a DigitalOcean droplet). | | When I started building it 8 years ago, the idea was exactly | this, it should run on any basic shared hosting that can run | PHP, so any site can just have its own analytics dashboard, | without relying on 3rd parties. | XCSme wrote: | For userTrack, the LAMP installation process has 3 main | steps: | | 1. Upload the script files. | | 2. Create a MySQL database for the script to use. | | 3. Run the auto-installer (to set up DB connection and create | the tables in DB). | | https://docs.usertrack.net/installation/uploading-the-script | arp242 wrote: | The advantage of Go is that you can compile it to a single | (static) binary, and then it doesn't really matter what the | rest of the backend is running. Unlike Python, Node, PHP, etc. | you don't need to set up an environment. | busymichael wrote: | Congrats on launching -- really impressive. One important issue | that these self hosted analytics solve is ad blocking. Ad | blocking by users really undermines the ability of a site or app | to figure out what is working and not working. When you host your | own analytics, you can get usability information for all of your | users, not just those that don't block. That allows you to make a | better product. | | I have been working on something similar at https://argyle.cc -- | we combine cloud analytics with a self-hosted analytics collector | js. That gives you the best of both worlds: privacy focused, user | respecting analytics, but full featured reporting in the cloud | and ad-blocker resistance. It also allows event tracking to be | done over js/web or in-line/server side. | ethor wrote: | Seemingly no api? :( | anderspitman wrote: | I've been happily paying for GoatCounter for several months. I | don't imagine I'll ever need to self host but it's nice knowing I | can if necessary. | lxe wrote: | I've seen a bunch of these simple self-hosted log dashboards here | on HN, but I don't think they directly compare with google | analytics, which is just a much more powerful and much much more | complicated product. Not to say this isn't a great product, but | it really isn't an alternative to GA. | slg wrote: | I wonder how many users actually use those advance features. As | someone who has only ever used GA to help provide insight into | developmental priorities (i.e. not for marketing), this doesn't | help too much. For example, this tells you the browser but it | doesn't tell you the browser version. It tells you the device | being used, but it doesn't tell you the resolution of that | device. It tells you the country of your visitors, but it | doesn't tell you the user's language. It tells you pages users | visit, but it doesn't tell you the order in which they visit | them. | | This isn't a criticism of Umami. It looks like a nice clean app | that accomplishes what it is trying to do. But if this is all | you needed from Google Analytics than that tool was overkill in | the first place. | mcao wrote: | Agreed, saying it's a one to one alternative to Google | Analytics is probably a misnomer. I think a lot of people, | myself included, used GA because there were no simpler | alternatives and better overkill than nothing. | ggregoire wrote: | Do you know any good resources to learn the intricacies of | Google Analytics and its related marketing concepts? | songzme wrote: | noticed you didn't write any tests: | https://github.com/mikecao/umami | | What was your reasoning? Personally, I write tests for all my | projects, it forces me to really think hard about how to break | down the different components and functionalities and it helps | others feel more confident to contribute. | dzink wrote: | It needs more granularity of OS versions and browser versions. | Knowing which iOS version your users have is important to decide | on what base level version you need for an iOS app, for example. | ln_00 wrote: | to be honest, if you are using nginx, just use / run | https://goaccess.io/ It collects the same information as umami | and is even more lightweight, since it just runs whenever you | tell it to. | | just add the command as a cron job, and you get an auto generated | static dashboard. very neat. | leephillips wrote: | Apache too (and first). | sahnasidol wrote: | Is there any way to create and track custom events like clicks? | mcao wrote: | Yes, event tracking is already in the current build. I just | haven't finished the UI components or documentation yet. But | basically all you have to do is add a CSS class to an element | and it will automatically start tracking. Like this: | <div class="button umami--onclick--signup-button">Signup</div> | vs4vijay wrote: | Looks neat! will explore. | | Also, I did research on alternatives to GA few days back, might | be helpful of someone: | | https://github.com/Open-Web-Analytics/Open-Web-Analytics | | https://matomo.org/ | | https://github.com/matomo-org/matomo | | https://github.com/usefathom/fathom | | https://www.goatcounter.com/ | | https://plausible.io/ | | https://github.com/PostHog/posthog | | https://www.usertrack.net/ | asddubs wrote: | posthog is really unfortunately named | Insanity wrote: | How so? | bartvk wrote: | I don't get it either. Not a native speaker, though. So could | someone explain it? | csmiller wrote: | I believe they are referring to posting a picture of one's | hog | timgl wrote: | PostHog founder here. Only if you split the name ;-) | justinclift wrote: | > https://github.com/usefathom/fathom | | Be careful of this one. It started out as OSS, but switched to | proprietary once they'd achieved traction. | rapnie wrote: | All open source: | | https://count.ly/ | | https://github.com/vesparny/fair-analytics | | https://goaccess.io/ | | https://www.kokoanalytics.com/ | | https://github.com/sheshbabu/freshlytics | | https://github.com/milesmcc/shynet | diafygi wrote: | Of these, do any have a funnel tracking feature that shows what | visitors went through a specific series of pages/events? Seeing | how users moved about the site and seeing how many converted is | a deal breaker for me. | lilfermat wrote: | Not out of the box but snowplow does if you model the data on | your own. | KaoruAoiShiho wrote: | Pretty sure posthog does. | timgl wrote: | (PostHog founder) Yes we do! PostHog gives you full funnel | capabilities + ability to see exactly what users dropped | out where | james_impliu wrote: | Confirmed! (I'm one of the founders) | volument wrote: | https://volument.com might be a good pick since it focuses | strictly on conversion optimization. It attempts to measure | the more general conversion flow, known as the AIDA funnel | (awareness, interest, desire, and action). | tedivm wrote: | Fathom started as open source, but the founders stopped | supporting the open source project. It's basically abandoned at | this point, with no new releases in almost two years and only | updates to the README. | volument wrote: | Here's one we are working on: https://volument.com -- it | focuses on conversion optimization. | kukabynd wrote: | There^s also https://ackee.electerious.com/, quite simple but a | good option. | XCSme wrote: | Thanks for mentioning https://www.userTrack.net, I'm the author | and still working full-time on improving it. Let me know if you | have any questions/remarks about userTrack. | Semaphor wrote: | Wow, that's actually the first one (besides matomo which is | rather enormous) that looks like a decent alternative to me | with more than just bare-bones features. I'll keep it in | mind. And I really like the clear and to-the-point website. | | No, XCSme did not pay me for this comment ;) | XCSme wrote: | Thanks for the kind words! | | To be honest, I did work a lot on it, 6-7 years as a side- | project and one year full-time. I think feature-wise | userTrack is pretty comparable to Matomo (including some of | their premium features that cost 400eur+/year). I also | recently recreated the entire front-end from spaghetti | jQuery to TypeScript+React+MaterialUI and implemented an | auto-updater system. This means that I can now implement | new features, fix bugs and distribute the updates to users | very fast. | | I am really glad that you like the landing page! I probably | changed it like 200 times in the last 2 months (last change | was 2 minutes ago). I still want to improve it (eg. some | hero video actually showcasing the product, so you don't | have to spend time understanding the demo). | | PS: I hope that the BTC transfer was successful and thanks | again for the comment! (jk) | abraae wrote: | > am really glad that you like the landing page! I | probably changed it like 200 times in the last 2 months | (last change was 2 minutes ago). | | Hilarious, I have changed our new home page literally | hundreds of times over the last few days and having | looked at yours, I see inspiration for yet another | change. | poidos wrote: | +1 for matomo. Very easy to set up a self-hosted instance, good | documentation, and works well. NB: My site is pretty low- | traffic. | tiffanyh wrote: | There are a bunch of Github "awesome software" lists. | | One thing I haven't seen is someone categorize open source web | traffic analytics into Client Side Analytics (via javascript) | and Web Server Log analytics. | | Since each approach drastically changes the data collected and | reported. | gen220 wrote: | Are there any all-in-one-ish solutions that attempt to do | both? | | i.e. collects both (or one of either) server logs and client | side analytics, normalize them, etc. | mxuribe wrote: | Matomo does provide an alternative to leverage web server | log files (beyond the usual client side javascript)...using | a python script: https://matomo.org/faq/log-analytics-tool/ | | When i first migrated (my personal sites) away from GA, i | was concerned about performance, so was considering using | server logs, and stumbled upon this feature of matomo. The | javascript approach ended up not being the performance | issue that i thought it would be...so i never ended up | using the python script...So your mileage may vary, but to | your question, this does exist. | hanspagel wrote: | don't forget | | https://simpleanalytics.com/ | robinhood wrote: | It's not open source. | gentleman11 wrote: | True, but it at least respects the privacy of your visitors | by doing very minimal tracking. Basically, all you get is | country, some device stats, and a time stamp. Last time I | used it, it didn't even track return visits and used no | cookies iirc. It felt nice | gentleman11 wrote: | The problem with matomo (not their fault) is that Microsoft | flags your site as distributing malware and you disappear from | search engines. You have to fill out a bunch of forms to fix | it. It's listed in the matomo faq and is basically either from | a bot falsely reporting you, or some other glitch. It's why my | blog is still invisible to bing users: if you visit in edge, | you get huge menacing red warnings. | basilgohar wrote: | This is unfortunate. I've been using them for years and | wasn't aware of this. I wonder how much it's affecting the | sites I use it on... | nickreese wrote: | Here is another to add to that list. They just hit 2.0 this | week. | | https://github.com/electerious/Ackee | Deukhoofd wrote: | Any privacy oriented analytics tools not purely focused on | website analytics? | ponteiro wrote: | https://getinsights.io has event tracking for webapps but is | not open source | ahnick wrote: | +1 for Plausible. | | I've been using it for our name generator product Mashword | (https://mashword.com) and it was really straightforward to | implement. It's reasonably priced, has a clean interface and | graphs, is privacy protecting and supports using your own | domain for pulling in the js include. | kirubakaran wrote: | https://github.com/PostHog/posthog looks great for product | analytics. If you've used it, can you please share your | experience? | Zaheer wrote: | I currently use the self-hosted version on Heroku and | impressed with its functionality. It's quite similar to Heap | Analytics. My favorite feature is auto-tracking. That said, | there are some scaling limitations currently if you have a | high traffic site. We have a couple hundred thousand users | monthly so we are likely on the larger side of PostHog | deployments. The team is cranking out features and | improvements incredibly fast and I'd expect these to be | resolved soon. Feel free to DM - happy to answer any more | questions. | kirubakaran wrote: | Thanks! | woutr_be wrote: | I've been using GoatCounter for a couple of months now, it's | great! Super simple interface with all the data you need. | ASlave2Gravity wrote: | Aye, same here. It's _really_ good! | kmfrk wrote: | Does this use cookies and similar to warrant a GDPR prompt? | mcao wrote: | No, it does not use cookies so no cookie prompt is needed. | eclipsetheworld wrote: | I just checked your tracking code. It looks like you're using | the locale storage to set a session id to track uniqueness. | According to this [0] Stackexchange answer you will still | have to display a cookie banner. | | [0] https://softwareengineering.stackexchange.com/questions/2 | 905... | mcao wrote: | The local storage is mainly for performance. It's to | prevent a round-trip to the database to figure out the | session again. The session id will be the same regardless | and it can function without local storage. But I do see | your point. I may consider removing it just to be safe. | marcus_holmes wrote: | I'd love to use this. But 34 dependencies? | | I know ~10 of them are React, and there's some in there that make | sense. But I haven't got the time to audit them all, and re-audit | it every time any of those dependencies update . | | And escape-string-regexp? Really? it's literally 2 lines of code | [0]. Why have I got to give the maintainer of that project commit | access to this program that will be seeing potentially sensitive | data? | | Why, if the developer couldn't come up with those 2 lines | themselves, isn't this a Stack Overflow copy/paste? | | [0]https://github.com/sindresorhus/escape-string- | regexp/blob/ma... | halfmatthalfcat wrote: | Would you also criticize someone for using Apache Commons | StringUtils? The fetishization of critiquing npm package | choices is hilarious. | dsalzman wrote: | +1 to https://goatcounter.com/ o use it for my personal blog | https://dannysalzman.com . This is a good reminder to donate. | takein wrote: | Good job. Getting 502 error! | gitgud wrote: | Demo is throwing back "502 Bad Gateway" | | Hacker News hug of death? | shattl wrote: | Wow, Piwik is now Matomo, how fast time flies! | malisper wrote: | One of the claims of Umami is that it's GDPR compliant: | | > Umami does not collect any personally identifiable information | so it is GDPR and CCPA compliant. No cookie notices are needed | because Umami does not use cookies. | | From auditing the source code, this doesn't seem to be the case. | First, it claims it doesn't use cookies, but it clearly uses | localStorage to store a "sessionKey"[0]. | | The other claim, that Umami is GDPR and CCPA compliant because it | does not collect any personally identifiable information is only | half true. While the data collected isn't PII (because you can't | use it on it's own to identify a user), it's still "personal | data". This is because the "sessionKey" stored alongside all | events is actually a pseudonymous user identifier. It's really | just a hash of the user's IP along with a few other | properties[1]. Because the data Umami collects, when combined | with some other data, can be attributed back to the user, the | data is still considered "personal data". That means you're still | subject to most of GDPR such as GDPR deletion requests[2]. | | [0] | https://github.com/mikecao/umami/blob/f4ca353b5c68750bf391e5... | | [1] | https://github.com/mikecao/umami/blob/master/lib/session.js#... | | [2] https://gdpr-info.eu/art-17-gdpr/ | mcao wrote: | I am not a lawyer so I cannot say for sure what constitutes PII | and what breaches GDPR. I am using the same techniques as | Fathom Analytics, Plausible.io and other products. Everything | is hashed into a unique session id and none of the actual data | like user agent or IP address is actually stored. It is the | same data that is found in server log files. In the strictest | interpretation of GDPR, I don't think any analytics product can | exist. | | As for the localStorage, it's just for performance so I don't | have to recompute the session hash. The product will work the | same without it. But seeing as it is a cause contention I am | probably going to remove it. | secondcoming wrote: | It doesn't matter if the UA or IP is stored, even using them | to fingerprint a user requires GDPR consent. | matthewheath wrote: | Consent is only one potential basis for processing under | GDPR. There are others such as "legitimate interest" which | the controller and/or processor may rely on. | sleepyhead wrote: | That's true but not relevant for a random user visiting a | website. | latk wrote: | Since this is about cookies and IP addresses, GDPR is not | the most relevant EU law. Instead, we have to look at the | old ePrivacy Directive. | | For cookies or any other access to information stored on | the user's device, that access must either be strictly | necessary for performing the service explicitly requested | by the user, or consent is required (ePD Art 5.3). This | is where those annoying cookie banners come from. | LocalStorage isn't any different and would require the | same consent as cookies. | | For traffic data such as IP addresses, processing is | allowed if it's technically necessary for the | "transmission", if the data has been anonymized, if it's | required for billing purposes, or if the user has | consented (ePD Art 6). There is an argument that security | logs might be necessary, other uses like analytics are | more dubious. The good news is that Umami seems to | properly anonymize the IP address, so this part seems | fine. | | In cases where ePD mandates using consent, we cannot fall | back to another GDPR legal basis such as legitimate | interest. Of course this discrepancy between ePD and GDPR | is a huge problem, and the promised ePD update has yet to | materialize. | y42 wrote: | "In the strictest interpretation of GDPR, I don't think any | analytics product can exist." That's the point. Unless you | aggregate the data. | | Besides, it's not only GDPR you should consider, but also the | latest cookie verdict by the CJEU. You need a consent if you | drop cookies, session storage or any other tracking | technology, no matter if you process personal data or not. | [deleted] | malisper wrote: | Both Fathom and plausible generate a unique salt every day. | By getting rid of the old salts, they've anonymized any data | older than a day. From [0]: | | > We do not attempt to generate a device-persistent | identifier because they are considered personal data under | GDPR. | | > Instead, we generate a daily changing identifier using the | visitor's IP address and User Agent. To anonymize these | datapoints, we run them through a hash function with a | rotating salt. | | [0] https://plausible.io/data-policy | mcao wrote: | I will probably implement the daily salt and remove the | localStorage code as well just to be safe. | | But again, I'm not a lawyer here, where do you draw the | line? Why not hourly salts? 5 minute salts? What is | considered a reasonable effort? At some point you're | storing data that can identify a user for the purpose of | analytics. Still, I'm going try to lean to the safer side | as best I can. | lmkg wrote: | There are two paths to compliance with GDPR. | | Option 1: Accept that you're collecting Personal Data, | and satisfy the obligations GDPR places on that. This | means disclosing the use of analytics in your privacy | policy (what data's being collected & why), listing | retention periods, and figuring out how to satisfy | requests like Access or Deletion (which may include "we | can't identify you in the data we previously collected). | | Option 2 is to "comply" with GDPR by finding a loophole | that it technically doesn't count. | | The Option 2 approach is more common when dealing with | American data privacy laws. It doesn't work out so well | with GDPR. It's _very_ difficult to not be processing | personal data at some point. Even if you fully anonymize | your data before doing any non-trivial processing, the | _anonymization itself_ is still covered by GDPR. Which | means you need to include it your privacy policy and | provide opt-out. | | It's also high-risk. If a court decides that you didn't | quite thread the needle through the loophole in their | country and GDPR therefore applies in full, then you | haven't done any of the compliance groundwork. | | For GDPR compliance, I would be much more inclined to | trust a tool that describes how to opt users out of | tracking than one that claims they're immune from | obligations to opt-out. | | As another commenter mentions, the ePrivacy Directive is | a whole different kettle of fish. Strong consent needed | to read _or_ write any data not strictly necessary to | provide the services requested by the user. That law | _should_ get updated with more sanity soon... it 's been | that way for a few years now. | madeofpalk wrote: | > I am not a lawyer so I cannot say for sure what constitutes | PII and what breaches GDPR | | If you don't feel fit to judge whether something breaches | GDPR, then maybe you shouldn't say "so it is GDPR and CCPA | compliant". | epoch_100 wrote: | This looks great! For what it's worth, I also maintain an open | source (and self hosted) website analytics tool called Shynet [0] | (someone else mentioned it in this thread, but thought I'd share | here as well). Really great to see more options in this area! | | [0] https://github.com/milesmcc/shynet | 1f60c wrote: | From the screenshots, the design looks very slick and I can't | wait to give it a try! | llacb47 wrote: | The whole script is 502... https://stats.umami.is/umami.js | nickthemagicman wrote: | Am I wrong for thinking that Google Analytics has bad UI? | | As a noob at UI it was bizarre and unintuitive for me. | | Just finding the region locations of the traffic was odd and | didn't make immediate sense. | edwinjm wrote: | It's pleasure to work with compared to one or two years ago | quaffapint wrote: | Any suggestions for collecting server side logs via nginx pods in | k8s? | dirtnugget wrote: | Can anyone tell how this holds up against Matomo? | hitekker wrote: | For something this simple, I was hoping to see an option for | SQlite, not just MySQL and PostgresSQL. | mcao wrote: | The app is using prisma.io which does support SQLite. I just | haven't had the time to implement it yet. | [deleted] | dandigangi wrote: | I always like seeing competitors to GA but the website could | really use some more information on why you should use it and the | features it gives you. It's hard to beat top competitors in a | saturated space. | anvarik wrote: | I liked the image on the home page, how can I create such an | image to show case my product? only way is PS? | buraksarica wrote: | I wish to see a line about backend platform on installation | documentation. Yes, it's simple, but IMO no one will find "Umami | requires bla bla platform on bla bla operating system." sentence | useless. | GoblinSlayer wrote: | Ironically how big is web on advertisements, but when the time | actually comes to tell what the product is and does, they | forget words. | sradman wrote: | From a quickscan of the GitHub repo [1], this is a JavaScript | client, like Google Analytics, that sends data to a self-hosted | Node.js backend that stores the data in MySQL or PostgreSQL | using the Prisma database toolkit: | | [1] https://github.com/mikecao/umami | m90 wrote: | Is there a way for me as a user to opt out of this tool other | than relying on third party tools like uBlock? I'm starting to | get annoyed by so many "privacy focused" tools with literally no | consent options at all. | mcao wrote: | I haven't implemented it yet, but I plan to make it read the | user's do not track setting and automatically opt out. | m90 wrote: | While this is much appreciated, keep in mind this does not | work for Safari users. | rockwotj wrote: | Demo website 502's for me :/ | amenod wrote: | Same here. :-/ | gilli wrote: | Same, maybe we already hugged it to death? | mcao wrote: | Should be back up now, give it another try. | chrisblackwell wrote: | I'm very excited to see this space heating up. It seems for years | we defaulted to using Google Analytics and no one wanted in the | market. Now there are plenty alternatives, with many of them open | source. | colechristensen wrote: | Is there a similar product that does this server side (without | injected javascript telemetry) with http logs? | corytheboyd wrote: | Saw this link in another comment, might be what you're looking | for https://goaccess.io/ | Trasmatta wrote: | For Rails, there's Ahoy: https://github.com/ankane/ahoy | GoblinSlayer wrote: | https://goaccess.io/ | | https://www.awstats.org/ | eli wrote: | You end up with a lot of noise from bots and crawlers (using | bogus user agents) if you're just looking at server logs. | justinclift wrote: | Any reasonable server side processing thing will exclude the | obvious bots, which almost always have some kind of "Bot" | wording in their user agent header. | eli wrote: | There are a LOT of bots and crawlers with bogus browser | user agents. | | Some of the bad ones you can select see indirectly in logs | because they pick UAs that almost no one uses any more. Go | search your logs for IE8 or Firefox <= 70.0. Most just pick | a random modern User Agent though and that's awfully hard | to see in server logs. | colechristensen wrote: | Yeah, but so what? There are plenty of blacklists | maintained for all sorts of things, and no metric is | perfect. Some really rudimentary filtering or AI methods | could get you pretty good data. | anderspitman wrote: | Keep in mind if you're using a CDN (ie CloudFlare) your | absolute numbers will be way off. | rayshan wrote: | This. Just got bitten by this by using Vercel's serverless | functions edge caching. More details: | https://twitter.com/rayshan/status/1295521974479798274?s=21 | arielm wrote: | This looks really nice! If... you're only looking for high level | numbers for something like a personal blog or a simple landing | page for a mobile app. | | I wouldn't call this a replacement to Google Analytics. | | The reason to have something like Google Analytics is to track | traffic at a more granular level, and with very specific intent. | | Some of the things I _rely_ on include: | | - custom parameters - segments - goals - A/B testing - specific | views | | And that's just the short list. | | Now, I use Analytics heavily because we spend a lot of effort on | growth, both organic (content, seo) and paid (ads), so knowing | what's going on at that level is essential. | | If you don't, there's not much reason to use something like GA. | thinkmassive wrote: | A comparison of Umami and Matomo (formerly Piwik) would be | helpful since they seem very similar. I looked at both websites | and didn't see any mention of the other project. | mcao wrote: | Hi everyone! | | Author of Umami here. I totally did not expect this response so | it looks like you all hugged my little server to death. The demo | should be back up now. | | A little background. This is a side project I started 30 days ago | because I was tired of how slow and complicated Google Analytics | was. I just wanted something really simple and fast that I could | browse quickly without diving through layers of menus. So I | created Umami to track my own websites and then open sourced it. | The stack is React, Redux, and Next.js with a Postgresql backend. | | Would be happy to answer any questions you have. | sorenbs wrote: | This is a really cool project. I'm happy to see that you are | using Prisma for data access. If you are interested we can set | up a shared slack channel so you can provide feedback and we | can make sure we support everything you need for this project | :-) | mcao wrote: | This is my first time ever using Prisma and I'm a huge fan of | it already. It did run into a few gotchas and would love to | discuss. | sorenbs wrote: | Contact info is in my profile. Please send an email so we | can set something up :-) | imedadel wrote: | This is an awesome project. Is Postgres good enough for high | traffic or would it be better to switch to Redis? | dom96 wrote: | Nice! Question for you, how did you make that nice 3D image on | the front page with various screenshots overlaid over each | other? :) | mcao wrote: | It's all done in Photoshop. Just take screenshots, then | transform, rotate, distort them to look flat. Then add some | drop shadows for a 3d look. | killerpopiller wrote: | Matomo (former Piwik) is an alternative imho. | modoc wrote: | Unsure about Umami's performance, but Piwik was a non-starter | for several higher traffic sites I worked with due to | performance issues (even after throwing big hardware at it). | noahth wrote: | One big difference is that Matomo doesn't support PostgreSQL | and has said they don't plan to. | newusertoday wrote: | what are your thoughts on using ui-frameworks like material/ant | etc. I checked the github and it looks like you have written | all components including css by yourself. | mcao wrote: | For personal projects I tend to write all the CSS and | components myself. I just like being able to control | everything down to the pixel without reading some | documentation. But that's just my workflow. I say just use | whatever gets the job done. The only thing I used was | Bootstrap grid for responsive layouts. Tailwind CSS is pretty | popular. | throwanem wrote: | Can confirm, Tailwind is legit. | blahblah4332 wrote: | This would definitely be really interesting if it had the | ability to create analytics in response to UI interactions. | There are a lot of SPAs out there that use analytics for | feature tracking, and the self-hosted aspect would fit well | with those users. | mcao wrote: | Event tracking is already supported in the build. I just | haven't completed the UI components yet. You simply add a | custom CSS class on an element and it will automatically be | tracked. | blahblah4332 wrote: | Oh OK, I didn't see that when I scanned the documentation. | CSS is an interesting solution for that | adventured wrote: | Great project. I'm going to follow its development and consider | using it in the near future. | anderspitman wrote: | Since it's self-hosted, is there a reason you went postres | rather than something simpler like sqlite or even flat files? | mcao wrote: | It uses prisma.io for the database connections and SQLite is | supported. I just haven't had the time to implement it yet | and make sure all the custom queries are working. I would | welcome a PR. | mescalito wrote: | Looks really neat! It might be really interesting if the live | demo is the actual live stats of your umami.is :) | mcao wrote: | I will switch it over at some point. I've been running it on | my own sites for a month so I just wanted to provide an | example with more data to play with. | dylan604 wrote: | How useful are the metrics from non-GA sources trusted when | validated traffic to various groups like investors, advertisers, | etc? | mxuribe wrote: | Quite intriguing! I have no experience pitching to investors or | advertisers, (but i do have web analytics exp.) and never would | have thought that this would even be a question! Curious, is | this something that you encountered, or is this hypothetical? | dylan604 wrote: | I had heard in the past that if your numbers were not GA, | then they did not put much weight into them. Since you can | grant access to other people directly into GA, they can | validate the data. Using awstats or other metrics were deemed | less trustworthy since they required someone gathering the | data (which allows for potential manipulation). Before the | days of 3rd party advertising, people tried to sell local ads | just like a news paper. The website with more visitors could | charge more for the ad banner space. Some "little" blog would | have to prove they received the amount of traffic. | [deleted] | hugey010 wrote: | I've used https://count.ly/ instead of Google Analytics to gather | exception data and business analytics from mobile and web apps. | Relatively cheap for decent scale and they're very nice and | helpful. | gramakri wrote: | Demo gives a 502 | mcao wrote: | Should be back up now. | andrewzah wrote: | I have been using goatcounter [0] and love the simplicity. I used | to use Matomo, but they want a lot of money to see the referrals | from google search/etc. And it's a heavier dependency. | Goatcounter is a drop-in golang binary. | | [0]: https://github.com/zgoat/goatcounter | bambam24 wrote: | Clicked on love demo and get 505 bad gateway. I hope they | analyzed it ___________________________________________________________________ (page generated 2020-08-18 23:00 UTC)