Mixpanel is a GREAT tool and quite easy to understand (compared to GA4 and similar). I have used Mixpanel extensively for one of my React Native apps, but the last invoice was $300, which was way over my budget. I think I was paying for MTU (monthly tracked users), which was around 7000-10k users.
However, a downside of Mixpanel is that it is purely a product analytics tool; you don't get any basic web analytics similar to what GA4 or Plausible offers.
Therefore, I have combined the best features of Mixpanel and Plausible to create what I believe is the ultimate experience in an analytics tool (product and web).
The focus has always been: it should be easy yet also powerful. This has been a challenging balance, but I think I have managed to keep it somewhat simple.
Key Features: - Privacy-first - Visualize your events like Mixpanel - Plausible-like overview - Self-hostable - Better support for React Native than Plausible - Real-time (no delays for events) Ability to access all individual events and sessions
It's currently in beta and completely free during the beta period.
Give it a spin: https://openpanel.dev
The minimum requirements (4GB RAM) are too high because of the need to run two databases:
https://github.com/plausible/community-edition/blob/v2.0.0/d...
4GB RAM costs $24/month on DigitalOcean: https://www.digitalocean.com/pricing/droplets
In comparison Plausible lowest tier is only $9/month.
I think this project is not so different in terms of minimum spec.
Would love to hear how others deal with the cost of self-hosting. Does it get cheaper as you self-host more apps? Do you pool with friends?
There's a 4GB option for 9 Euros.
I recently migrated my personal projects from DO to Hetzner for this reason
You can run docker on a $100 USFF i7 pc and stuff 32G-64G and a big SSD in for cheap. That'll run for years and you could add a second host for redundancy. Depends on your maintenance and failure tolerance.
Or you probably already have some spare hardware, maybe an old laptop kicking around.
I always think these services should basically be like 2x cost of underlying S3 or whatever storage you're using, but they end up being like 100x+
Currently the pricing looks like this: No tiers, you get everything. You only pay for events. So everything except events are unlimited.
5000 events - free
10,000 - $5
100,000 - $10
200,000 - $20
500,000 - $40
1,000,000 - $60
2,000,000 - $80
5,000,000 - $120
10,000,000 - $150
I hope to push the pricing model for things below 1m events. But its so hard for me to set a pricing model before getting to know how much resources I need.
/ edit format
Is it a flag/field in the SDK that tells you I’m from a specific company or is it some black magic?
ie, how many individuals are using this feature or what’s the average usage of this feature for a company.
Having implemented something similar-ish recently, we went the route of requiring callers to ”do the work” of telling us which group the user belongs to. Figuring it out is unnecessarily difficult and prone to issues.
Mixpanel's docs: https://docs.mixpanel.com/docs/data-structure/advanced/group...
Segment's docs: https://segment.com/docs/connections/spec/group/
In B2B SaaS, it's a lot more important to understand which customers are using which features, not which users. One customer can have many users, and one user can belong to multiple companies.
This is pretty much a must have for B2B SaaS even though it's always tucked away in expensive plans with tools like Mixpanel and Amplitude.
We actually immediately cancelled our paid plan and went back to their free tier. To match what they provide in their free tier (20M events), the cost is $2,289 USD / month (no thanks). https://mixpanel.com/pricing/plan-builder/?dcv=growth
So basically we can either pay $2,289 USD / month, or pay nothing, and still get the same number of tracked events. Just bizzare... We've moved on, and I've been on the search for an alternative ever since.
I could never explain (or honestly understand) events, and even though I had raw server data, g analytics data and cloudflare analytics data - I still don't understand what constitutes an event or number of events, or what it may cost.
So we just killed the google and cloudflare stats and never signed up for the free tier in the firs place.
Free stats are fine.
So any major website will have problems with it. I would suggest moving this into a stream (NATS, Kafka) or just having some sort of service that buffers events, then offloads to Clickhouse in batch.
Can extend the current redis queue to batch request or clickhouse batch engine.
Looking forward to have these problems hehe.
Please DM if you want to chat about best approach!
https://clickhouse.com/docs/en/optimize/asynchronous-inserts
How do you create funnels without cookies? In other words, how do you track sessions?
Edit: @lindesvard- Got it, thanks for clarifying!
Before beta is over it’ll be easily self-hosted.
But since it free now there is no need for self-hosting.
Will make it easy to export/import your events between instances
It's awesome that you're offering this for free for now, but I don't think that means there's no need to self-host. There are many reasons people might not want to hand over data to a third party.
Hoping to find good use cases.
Will make a big update when it’s easier to self-host.
And if you really need to prune data you could just use good ol SQL?
My understanding is the plausible, unlike GA, doesn't use cookies.
Does that mean web analytics are IP-only?
[edit: Or does it mean no third party sees your analytics?]
User information - By default we do not store or log any user related information. All information that is stored in our DB is general information. We see this as a important privacy for your visitors.
Data - Your data will never be sold or given to a third party. You'll be able to export, import and delete all data related to your projects.
Cookie - We do not use any cookies or localStorage to keep track of your users
--
Their are some big downsides with privacy first since you wont be able to track users over several days (get retention and what not). So I have decided to give my customers the option to do what they want.
If this is an important metric to them they can decide to pass a profileId to the SDK. Then we'll use this ID and will be able to track that users over several days. This is an opt-in feature and thats also why I say "Privacy first".
On basic level it is just that your data is not used/sold beyond basic, statistical analysis of visitors. That's it. Cookie can be "private" in this context, if they are SameSite and httpOnly with short life.
In terms of law, Privacy is very different thing. In case of GDPR in the EU it is set of rules and laws that you have to comply with.
Just because you don't use cookies or host in EU, doesn't mean you are automatically GDPR compliant.
We built Wide Angle Analytics, and we invested in strict compliance. We hired experienced DPO (one of requeirements), host in EU on EU cloud, not just EU located servers. We document every data processing activity and do not engage in any international data transfer ( in context of GDPR). Plus much more.
Cookieless does not mean privacy. There is lot of snake oil out there.
I'd gladly settle for something simpler like Plausible or this one, perhaps, start with their hosted SaaS version and if need to, we can host it ourselves.
But as others have mentioned. It’s way too complex and advanced for most use cases and that’s where we differ.
Heard that posthog also is very resource heavy when self-hosting it.
Ever since GA4 and the whole cookie banner thing I'm looking for something that is GDPR compliant, has basic functionality and is cheap.
But every time I look it comes down to self hosting.
Plausible relies on Clickhouse and I don't know Clickhouse. Umami relies on Mysql or Postgres with a pretty inefficient data scheme that cripples performance with the scale of my data.
Can't these services be made a lot cheaper (and faster) by doing data sampling like Google Analytics did?
You can always conditionally include the tracker. So, you can include it with a 10% chance, then you will still get stats, but sampled.
Doing this, you might miss some important events/sessions though.
Clickhouse is expensive, compute on scale is expensive, development is expensive etc. Sounds like your best bet is to do self-hosting
Analytics space has many players in all shapes and sizes.
Mixpanel, Amplitude, Google analytics, simpleanalytics, Posthog, usefathom, plausible.
If you include UI tracking then pendo.io, Fullstory, LogRocket.
Many of them VC funded horses.
As an ex-Mixpaneler and Mixpanel customer now, I wish Mixpanel wasn’t this expensive for a few 1000 users. But like any company in an economic market, they’ll charge for what customers will bear.
Competition is wonderful. May the force be with you.
I'm also happy to note that you are from (the wrong part of ;)) Sweden.
Foot note: And to be clear, I live in Stockholm but from Skåne ;)
But either way, we’d never spent enough time setting it up, and this weren’t getting a huge amount of value from it.
We also use plausible, for web facing. But we need something more detailed for analytics within our product.
I like the sound of this. But from using the demo dashboard I didn’t see the value I’d get from it.
It was clear if I could track a user (or segment of users) journeys.
Or see the journey of all users who completed a specific event.
Can I create funnels?
Can I measure performance over time easily?
Can I put events into the timeline? (feature releases)
Implementing a tool like this is a big commitment, so I’d need to be more convinced it’s the right tool for our needs before I took the plunge. I’d also start with the hosted solution, but I’d choose it because we could self host in the future if we felt necessary. An escape hatch.
Here you have some screenshots what you can do: https://imgur.com/a/hxUPsvk
Features: - Create funnels, linear, bar, histogram, map, pie, area charts based on your events (similar to mixpanel reports) - List of all events (filter by any data point you send) - List of all your users (go into a specific users to see what they did) - Retention (if you use this you need to provide a user id) - Realtime dashboard
I have also been building a similar product for a long time (UXWizz), focused more on self-hosting, quantitative data and targeted at low to medium trafficked websites, but it is a paid product.
How do you think monetization will pan out in the long-term with a free self-hosted option? I know PostHog also had a free self-hosted version, but since the self-hosted version competes directly with their main business model, they had to stop support for it.
I also considered open-sourcing mine, but decided to keep it self-hosted only and paid. I feel like if I sell a hosted version, then my business goals won't be aligned with the goal of making the self-hosted version as good as it can be, without feature locks.
I hope you can maintain this awesome pace and improve your product for many years to come!
So I hope this will be feasible. Worst case scenario is to keep some features exclusive for the cloud solution, but fingers crossed I get a good mix of cloud users and self-hosters.
Posthog is a great product and really like it. Just want something more hands on but have the power to visualize data.
So I don't see posthog as a competitor at all. My focus is more about hitting the perfect spot between plausible and mixpanel.
But definitely inspired by thier overview and how the avoid cookies