Open Analytics is an open-source, privacy-first alternative to Google Analytics, built for humans and AI agents. Track real-time visitors, funnels, and revenue with one lightweight, cookieless script. Connect your analytics to AI tools via MCP. GDPR-friendly with no consent banner, and self-hostable.
Hey Product Hunt π
Weβre the team behind Open Analytics.
We built it because we kept hitting the same wall: every analytics tool made us choose between knowing our numbers and respecting the people behind them.
Google Analytics gave us the numbers, but often came with complexity and consent banners. Many privacy-first tools removed the banner, but stopped at pageview counts. We wanted the best of both worlds.
Open Analytics is cookieless by design. Visitor identity is represented by a salted hash that rotates at midnight, raw IP addresses are never stored, and no cross-site profile is created. The result is useful analytics without persistent tracking.
Hereβs what weβre most proud of:
β’ Privacy thatβs enforced, not just promised. Global Privacy Control is honored by the collector server-side. Even if the snippet is configured to ignore it, those requests are dropped before theyβre counted.
β’ Revenue attribution where the visit happened. Connect Stripe and each payment appears alongside the visit that generated it, showing which pages, channels, and referrers drive revenue.
β’ Analytics you can ask questions about. Use AI Chat inside the dashboard or connect through our MCP server to explore your traffic in plain English.
β’ Custom events without custom JavaScript. Add data-oa-event="signup" to a button and Open Analytics tracks it.
Open Analytics is open source under AGPL and fully self-hostable. If youβd rather not run it yourself, our hosted version starts at $9/month. Every plan includes every featureβyou pay for volume, never for access.
Weβd love your feedback.
@yashekboteΒ thanks, Yash! we believe that analytics data is sensitive and that users should be able to view the source code if they wish. also, users can retain ownership of their data on their own servers.
@uaghazade The identity hash rotating at midnight is the honest way to do it, but it also means someone who comes back tomorrow looks like a brand new person, right? How do you handle funnels that take a few days, like ad click on Monday and purchase on Thursday? That's the report I always get asked for haha.
@yelyzaveta_kibetsΒ yes, that's the trade, and it's deliberate: anonymous ids rotate at UTC midnight, so we never track a cookieless visitor across days.
for your Monday-to-Thursday report: if your users log in, call identify(external_id) from the tracker. that hash is stable (still cookieless), and attribution then uses its full 30 day window, so the ad click and the purchase connect. purchases also get matched through order signals on the payment side, which often stitches the journey even without identify.
Either way the report shows which identity scope it was computed under, so it never claims a journey the data can't support.
@uaghazade The report labeling which identity scope it ran under is the detail that sells it, most tools would just pretend the gap isn't there. And identify() for logged-in users covers exactly my Monday-to-Thursday case, thanks for walking me through it.
@uaghazadeΒ The report labeling which identity scope it ran under is the detail that sells it, most tools would just pretend the gap isn't there. And identify() for logged-in users covers exactly my Monday-to-Thursday case, thanks for walking me through it.
Report
π Pixel perfection
Love that you made analytics both cookieless and MCP-ready, giving me real insights without a consent banner while letting my AI tools actually query the data.
Open Analytics
@uaghazadeΒ awesome!
What pushed you to self-host + AGPL instead of just going full SaaS?
Open Analytics
@yashekboteΒ thanks, Yash! we believe that analytics data is sensitive and that users should be able to view the source code if they wish. also, users can retain ownership of their data on their own servers.
Netlify
Building an open-source, AI-native alternative to Google Analytics is such a great move. Congrats on bringing this to life!
Open Analytics
@thisiskp_Β thank you very much for the name of our team. it's a pleasure to hear this from you!
Softorino π»π²
@uaghazade The identity hash rotating at midnight is the honest way to do it, but it also means someone who comes back tomorrow looks like a brand new person, right? How do you handle funnels that take a few days, like ad click on Monday and purchase on Thursday? That's the report I always get asked for haha.
Open Analytics
@yelyzaveta_kibetsΒ yes, that's the trade, and it's deliberate: anonymous ids rotate at UTC midnight, so we never track a cookieless visitor across days.
for your Monday-to-Thursday report: if your users log in, call identify(external_id) from the tracker. that hash is stable (still cookieless), and attribution then uses its full 30 day window, so the ad click and the purchase connect. purchases also get matched through order signals on the payment side, which often stitches the journey even without identify.
Either way the report shows which identity scope it was computed under, so it never claims a journey the data can't support.
Softorino π»π²
@uaghazade The report labeling which identity scope it ran under is the detail that sells it, most tools would just pretend the gap isn't there. And identify() for logged-in users covers exactly my Monday-to-Thursday case, thanks for walking me through it.
Open Analytics
@yelyzaveta_kibetsΒ Anytime, Lisa! That's exactly the report the 30-day window is for. Come back and tell me how that Monday-to-Thursday report reads.
Softorino π»π²
@uaghazadeΒ The report labeling which identity scope it ran under is the detail that sells it, most tools would just pretend the gap isn't there. And identify() for logged-in users covers exactly my Monday-to-Thursday case, thanks for walking me through it.
Love that you made analytics both cookieless and MCP-ready, giving me real insights without a consent banner while letting my AI tools actually query the data.
Open Analytics
@ilko_kacharovΒ thank you a lot Ilko, for that kind of words!