Reviews
Aptabase Review 2026: Privacy-First, Open-Source Analytics for Mobile, Desktop and Web Apps
Aptabase is an open-source analytics platform for mobile, desktop, web and game apps that collects no personal data, sets no cookies and needs no consent banner. Here is how its privacy model works, what the dashboard shows, what it costs, how self-hosting works, where it falls short and who it suits.

Contents (15)
- Aptabase at a glance
- What is Aptabase?
- How does Aptabase work?
- How does the Aptabase privacy model work?
- What does the Aptabase dashboard show?
- Which SDKs and platforms does Aptabase support?
- How much does Aptabase cost?
- Can you self-host Aptabase?
- What's under the hood?
- What are Aptabase's limitations?
- How does Aptabase compare with Firebase, TelemetryDeck and PostHog?
- Who is Aptabase for?
- How to add Aptabase to your app
- Is Aptabase worth it?
- FAQ
Product details checked against aptabase.com, its about, pricing and documentation pages, its llms.txt and llms-full.txt, and the Aptabase repositories on GitHub on October 19, 2026. Screenshots taken from the live sites in Google Chrome.
Quick answer: Aptabase is open-source analytics for mobile, desktop, web and game apps that collects no personal data. You add one of 17 lightweight SDKs, call a track function for the events you choose, and watch sessions, events, app versions, operating systems, devices and countries arrive on a real-time dashboard. There are no cookies, no device IDs and no consent banner. It's free up to 20,000 events a month, paid plans run from $10 to $450 a month, and you can self-host the AGPL-licensed server with Docker. The trade-off is deliberate: it can't show monthly active users, retention or funnels.
Most analytics tools were built for websites and then stretched to fit apps. If you ship a Tauri or Electron desktop app, a Godot game or a Flutter app, you usually end up with Firebase, a privacy policy that has to mention Google, and a consent prompt your users dismiss without reading. Or you end up with nothing, which is more common than people admit.
That second situation is how Aptabase started. Its founder, Guilherme Oenning, shipped a desktop app called Aptakube and realised months later that he had no idea how anyone used it. He wanted something like Plausible for native apps and couldn't find it, so he built it in early 2023.
This review covers how Aptabase works, how the privacy model holds up, what the dashboard shows, what it costs, how self-hosting works, where it falls short and who should use it.

Aptabase at a glance
- Event and session analytics for apps on 17 platforms: Apple, Android, Flutter, React Native, NativeScript, Electron, Tauri, .NET MAUI, web, React and Next.js, Angular, browser extensions, Unity, Unreal, Godot, Python and C++.
- No personal data, no cookies, no device or advertising IDs and no fingerprinting. Aptabase says this keeps apps compliant with GDPR, CCPA and PECR without a consent banner.
- Nothing is tracked automatically. You decide every event, so you also decide your bill.
- A real-time dashboard with live view, session timelines, dark mode and a layout made for phones.
- Debug and Release data kept apart automatically.
- EU (Germany) or US (Virginia) data residency, or your own server.
- Free up to 20,000 events a month, then $10 to $450 a month with no overage fees.
- Server under AGPL-3.0, every SDK under MIT. The main repository has about 1,800 GitHub stars.
What is Aptabase?
Aptabase is a hosted analytics service with an open-source core. Its own one-line description is "an open-source, privacy-first analytics platform for mobile, desktop and web apps", positioned as an alternative to Google Firebase Analytics.
The pitch is simple, and the product sticks to it. You get counts of sessions and events, sliced by app version, OS, device model, locale and country. You don't get user profiles, cross-device journeys or ad attribution, because Aptabase never knows who anyone is.
Guilherme Oenning is a software engineer based in Dublin who had built two open-source tools before this one. Fider, a feedback board with about 4,600 GitHub stars, and Aptakube, a Kubernetes desktop client built with Tauri. Aptabase came out of Aptakube's blind spot, and it shows in the SDK list: Tauri and .NET MAUI support sit alongside Swift and Kotlin from day one, which is rare.
The legal entity behind it is Technov Solutions SRL, a small company in Bucharest, Romania, which the privacy policy, terms and data processing agreement name as the controller. There's no sign of venture funding. It reads like an indie business that charges money so it doesn't have to sell data, and the pricing FAQ says close to that in plain words.
How does Aptabase work?
Setup takes a few minutes, and the flow is the same on every platform.
- Create an account and pick a region, EU or US.
- Create an app and copy its App Key. Keys start with
A-EU-orA-US-, so the SDK knows where to send data. - Install the SDK and initialize it once with the key.
- Call
trackEventwherever something worth counting happens.
In a web app, that's the whole integration:
import { init, trackEvent } from "@aptabase/web";
init("A-EU-0000000000");
trackEvent("app_started");
trackEvent("export_pdf", { format: "a4", pages: 12 });
In Swift it looks the same:
Aptabase.shared.initialize(appKey: "A-EU-0000000000")
Aptabase.shared.trackEvent("screen_view", with: ["name": "Settings"])
Every event is enriched with the OS name and version, the app version and the locale without you doing anything. Custom properties can be strings or numbers, which is enough for most feature tracking and keeps people from stuffing emails into a property by accident. Tracking calls don't block, and several SDKs batch events in the background. The Unity SDK, for example, flushes every 60 seconds in production and every 2 seconds in development.
The phrase "nothing is tracked automatically" is worth taking seriously. There's no autocapture of clicks or screens. That takes a little more work on day one, but every row in your dashboard is something you chose to measure. You also never get a surprise bill because a library started firing an event in a render loop.

How does the Aptabase privacy model work?
This is the reason to pick Aptabase, so it deserves a careful look.
The SDKs send no identifiers at all. There's no device ID, no advertising ID, no cookie and no persistent user ID on the wire. What the SDK does send is a random session id that it generates and throws away after a short time.
On the server, Aptabase derives a temporary anonymous hash from three things: the client IP, the user agent and a salt that rotates every 24 hours. The hash lets the dashboard count roughly how many distinct clients were active today. Once the salt rotates, tomorrow's hash for the same phone has nothing in common with today's, so nobody can stitch a person's activity together across days or across apps. Not Aptabase, and not you.
The IP address itself is used only for a moment, to look up the country and region and to build that hash. It's never stored.

Here is the full list of what Aptabase collects:
| Collected | Never collected |
|---|---|
| Event name and your custom properties (strings and numbers) | Device IDs, advertising IDs, hardware identifiers |
| App version and build number | Cookies or fingerprints |
| OS name and version | Any persistent user identifier |
| Device model | IP addresses (used briefly, then dropped) |
| Locale and language | Names, emails or other personal data |
| Country and region, derived from the IP | |
| A short-lived random session id and timestamps |
The homepage FAQ makes a point many privacy tools blur. Aptabase doesn't pseudonymise data, it anonymises it. Under GDPR, pseudonymised data can still be re-linked to a person with extra information held somewhere else, so it's still personal data. Anonymised data can't be linked back, so it falls outside the regulation. Aptabase's whole design, from the rotating salt to the dropped IP, exists to stay on the anonymised side of that line.
Two caveats from our side. First, "compliant by design" covers what Aptabase collects. It doesn't cover what you put in custom properties. If you send a user's email as a property, you've created personal data yourself, and the property rules won't stop you. Second, your own legal reading still applies. For most indie apps the honest summary is that Aptabase removes the analytics part of your consent problem.
For App Store submissions, Aptabase publishes a guide to filling out Apple's App Privacy form, which saves a confusing half hour. If you're working through the rest of your obligations, our SaaS compliance checklist for SOC 2, GDPR and the AI Act covers the parts analytics doesn't.

What does the Aptabase dashboard show?
The dashboard is small and quick, which suits what it's for. Across the top you get headline numbers for the selected period: daily users (from that rotating hash), sessions, events and average session duration, each with a change against the previous period. Below that is a chart over time and breakdown tables for countries, operating systems, app versions, device models and locales, plus a table of your events with their properties.

A few parts stand out in daily use:
- Live view shows sessions as they happen, with a geographic view. It's the screen you leave open on launch day.
- Session timeline shows the order of events inside one anonymous session. You can see that someone opened the app, changed a setting and exported a file, without ever knowing who they are.
- Debug and Release modes keep test data out of production numbers. The SDK detects a debug build by itself and files those events separately, so you can fire test events all afternoon without polluting your launch stats.
- CSV export is on every plan, free included, so your data never gets stuck.
- Mobile-first layout with dark mode. You can check yesterday's numbers from your phone without pinching and zooming.

There's no query builder and no custom chart editor. You filter by period, app version, OS and the like, and drill into events and properties. For the questions an indie developer actually asks, such as which features people use, whether the new version is being adopted, or which countries to translate for, it's enough. For anything deeper, it isn't, and Aptabase doesn't pretend otherwise.
Which SDKs and platforms does Aptabase support?
Seventeen, across four groups. All of them are open source under MIT, most are a few hundred lines, and the web packages weigh about 1 kB.
| Group | SDKs |
|---|---|
| Mobile | Swift (iOS, macOS, watchOS, tvOS), Kotlin (Android), Flutter, React Native, NativeScript |
| Desktop | Electron, Tauri, .NET MAUI |
| Web | JavaScript for SPAs, React and Next.js, Angular, browser extensions |
| Games and other | Unity, Unreal Engine, Godot, Python, C++ |
The desktop and game coverage is where Aptabase separates itself from the field. Most privacy-focused analytics tools start with the web, and most app analytics tools start with iOS and Android. Tauri's plugin is the most popular Aptabase SDK on GitHub, with about 150 stars, which tells you who found the product first. Godot and Unreal support are rare in privacy tooling, and the Python SDK covers terminal apps built with Textual, which Aptabase has a full guide for.
If your platform isn't on the list, Aptabase documents how to build your own SDK against its ingestion API. One honest note about the web SDK: it's made for single-page apps, and every page reload starts a new session. That's another sign it isn't meant for multi-page marketing sites.
How much does Aptabase cost?
Pricing is by events per month, billed monthly in USD, with unlimited apps on every plan.

| Events per month | Price per month | Cost per 1,000 events |
|---|---|---|
| Up to 20,000 | Free | $0 |
| 200,000 | $10 | $0.050 |
| 1,000,000 | $20 | $0.020 |
| 2,000,000 | $40 | $0.020 |
| 5,000,000 | $75 | $0.015 |
| 10,000,000 | $140 | $0.014 |
| 20,000,000 | $240 | $0.012 |
| 30,000,000 | $300 | $0.010 |
| 50,000,000 | $450 | $0.009 |
Above 50 million events a month, Aptabase quotes a custom plan by email.
Every plan, the free one included, gets EU or US residency, the dashboard, live view, session timeline, CSV export, every SDK and full data ownership. Paying more buys more events and nothing else, which is refreshingly easy to reason about.
The overage policy is the part to understand before you ship. There are no overage fees. Aptabase emails you as you get close to the limit, and if you go over, it pauses analytics until the next month starts. Your bill can't jump, but your data can stop. If a launch might triple your traffic, move up a plan in advance.
Each call to trackEvent counts as one event. A rough way to size it: an app with 2,000 daily sessions that sends about 8 events per session uses around 480,000 events a month, which lands on the $20 plan. Track only what you'll look at, and the free tier goes further than you'd think.
Why pay at all when Firebase is free? The pricing FAQ answers that directly. Free analytics products tend to make money from user data, through ad networks or data brokers, and Aptabase charges a subscription so it never has to.
Can you self-host Aptabase?
Yes. The server is open source under AGPL-3.0, and the self-hosting repository gets you running with Docker Compose.

The steps are short:
git clone https://github.com/aptabase/self-hosting
cd self-hosting
# edit docker-compose.yml: replace the dummy secrets and set your domain
docker-compose up -d
Aptabase is then available on http://localhost:8000. There's no default login. You register the first account, and because SMTP isn't set up by default, the activation link shows up in the container logs. Add SMTP variables to the compose file if you want real emails.
The stack is PostgreSQL for accounts, apps and settings and ClickHouse for the event data. ClickHouse handles millions of rows easily, but it's one more database to back up and upgrade. If you already run a small box for side projects, this fits nicely next to it. If you have no appetite for running ClickHouse, the $10 and $20 cloud plans cost less than the hour a month you'd spend maintaining it. Our comparison of self-hosting alternatives to Vercel and Supabase goes through that trade-off in more detail.
Keep the license in mind if you plan to modify the server and offer it to others. AGPL-3.0 requires you to share changes you make to a network service you run for users. For internal use, that rarely matters.
What's under the hood?
The main aptabase/aptabase repository is active. It had about 1,800 stars, 141 forks and more than 600 commits when we checked, with commits as recent as last week.

- Backend: ASP.NET Core in C#, now targeting .NET 10, organised by feature.
- Storage: PostgreSQL for metadata, ClickHouse for events, with Tinybird supported as a hosted alternative to ClickHouse.
- Frontend: React 18 and TypeScript with Vite, Tailwind CSS and Jotai.
- Organisation: 19 repositories on GitHub, mostly SDKs, plus the self-hosting setup and buildwith.app, a site that features apps built with Aptabase.
There's also an MCP server in the Aptabase organisation that lets AI agents such as Claude Desktop or Cursor query your analytics. Read its README before you lean on it. It calls itself unofficial, it was written by a contributor, and it notes that Aptabase has no public query API, so it wraps the same undocumented endpoints the dashboard uses. Those can change without notice. It's handy for asking "how did version 2.3 do this week?" from your editor, but don't build a pipeline on it.

What are Aptabase's limitations?
Aptabase is upfront about what it won't do, and its about page has a section headed "Aptabase is not for". Take it at its word.

- No user-level metrics. No monthly active users, no retention curves, no cohorts and no funnels tied to individual people. The daily salt rotation that protects privacy is the same thing that makes these impossible. You can still compare aggregate event counts, for example how many sessions reached
checkout_completeagainstcheckout_started, but that's a ratio of events, not a funnel of people. - No ad attribution. No advertising IDs, no install attribution and no campaign tracking. If you buy app installs, you need a separate attribution tool, and you'll be back to consent prompts.
- Not a website analytics tool. No referrers, UTM reports or page-view focus. The team recommends Plausible here.
- No public query API. You get CSV export and the dashboard. Teams that want to pipe events into a warehouse on a schedule will find that thin.
- Hard caps on cloud plans. Going over pauses your analytics. That's kind to your wallet and unkind to launch-week data if you forget to upgrade.
- Small company. Support comes through email, Discord and GitHub issues, and the core team is small. For most indie developers that's fine, and the open-source server is a real exit if the company ever disappears.
Third-party roundups of mobile analytics tools in 2026 tend to land in the same place: strong on privacy, simplicity, cross-platform SDKs and price, weak on funnels and retention. That's a fair summary, and it's also the trade the product chose on purpose.
How does Aptabase compare with Firebase, TelemetryDeck and PostHog?
| Aptabase | Firebase Analytics | TelemetryDeck | PostHog | |
|---|---|---|---|---|
| Main focus | Apps on mobile, desktop, web and games | Mobile apps and ads | Apple and mobile apps | Web and product analytics suite |
| Personal data | None, fully anonymised | Device and ad IDs | Hashed identifiers | Identifies users by design |
| Consent banner needed | No, by Aptabase's reading of GDPR | Usually yes | Usually no | Usually yes for identified users |
| MAU, retention, funnels | No | Yes | Yes | Yes |
| Desktop and game SDKs | Electron, Tauri, MAUI, Unity, Unreal, Godot | Limited | Fewer | Web-first |
| Open source and self-hostable | Yes (AGPL server, MIT SDKs) | No | No | Yes |
| Starting price | Free to 20k events, then $10/month | Free | Free tier | Free tier |
Pick Firebase if you're on Android and iOS only, need ad attribution and are comfortable with the consent and policy work.
Pick TelemetryDeck if you build mainly for Apple platforms and want privacy-minded analytics with a bit more product insight.
Pick PostHog if you want funnels, cohorts, session replays and feature flags in one place, and you're ready to handle identified users and consent.
Pick Aptabase if you ship desktop apps, games or cross-platform apps, want analytics with no legal homework, and are happy with aggregate numbers. Aptabase and Plausible together also make a neat pair: Plausible on the marketing site, Aptabase in the app, and no cookie banner anywhere.
Who is Aptabase for?
It fits best if one of these sounds like you:
- An indie developer shipping a Tauri, Electron or .NET MAUI desktop app who has no analytics at all right now.
- A game studio on Unity, Unreal or Godot that wants to know which levels people reach and which settings they change, without an ad SDK.
- An open-source maintainer who wants usage numbers but whose community would revolt at Google Analytics in the binary.
- A small SaaS team with a companion mobile app that sells to European customers and wants to skip a consent prompt.
- A developer who wants to own the data, export it any time, and self-host if the price or the company ever stops suiting them.
It's a poor fit for growth teams that live in retention dashboards, for apps that buy installs through ad networks, and for anyone whose main question is "where did this visitor come from?"
If you're about to ship one of these apps, it's worth adding analytics before launch, not after. Our startup launch checklist puts instrumentation in the week before you go live, and our guides to the best directories for developer tools and mobile apps cover where to list it once it's out.
How to add Aptabase to your app
The whole thing takes about 15 minutes.
- Sign up at aptabase.com and pick the EU (Germany) or US (Virginia) region. No card is needed for the free plan.
- Create an app and copy its App Key from the Instructions menu. It starts with
A-EU-orA-US-. - Install the SDK for your platform, for example
npm add @aptabase/web,cargo add tauri-plugin-aptabaseor theaptabase-swiftpackage through Swift Package Manager. - Initialize it once at startup with the App Key. On macOS, turn on "Outgoing Connections (Client)" in the App Sandbox settings, or nothing will send.
- Add
trackEventcalls for the five or ten things you actually want to know, with string or number properties. - Run the app in development and watch the events arrive in Debug mode. Ship the release build, and its events land in Release mode by themselves.
A tip from experience with event-based analytics: write your event names down before you write code. A short list such as app_started, project_created, export_pdf and settings_changed, with consistent snake_case, keeps the dashboard readable a year from now.
Is Aptabase worth it?
For developers shipping desktop apps, games and cross-platform apps who want honest usage numbers without collecting anything personal, yes. It's one of the few analytics tools that treats Tauri, Godot and .NET MAUI as first-class. The privacy model is explained clearly enough that you can repeat it to a customer's legal team. The code is open, the pricing fits on one card, and the free tier covers most side projects.
You give up user-level analytics to get there, and Aptabase is clear about that. If your next decision depends on a retention curve, use something else. If it depends on knowing which features people use, which versions they run and where they are, Aptabase answers those questions and leaves your users alone.
Start with the free plan, track five events, and look at the dashboard after a week. You'll know quickly whether aggregate numbers are enough for you. Find it at aptabase.com.
FAQ
What is Aptabase?
Aptabase is an open-source, privacy-first analytics platform for mobile, desktop and web apps and games. You add one of its 17 SDKs, call a track function for the events you care about, and see sessions, events, app versions, operating systems, devices and countries on a real-time dashboard. It collects no personal data, uses no cookies or device identifiers and needs no consent banner.
Is Aptabase free?
Yes, up to 20,000 events a month, with no credit card. Paid plans start at $10 a month for 200,000 events and go up to $450 a month for 50 million. The server is open source under AGPL-3.0, so you can also self-host it for free with Docker Compose.
Is Aptabase GDPR compliant without a consent banner?
Aptabase says it is GDPR, CCPA and PECR compliant because it collects no personal data. SDKs send no identifiers, the IP address is used only for a moment to derive the country and a daily-rotated anonymous hash, and it is never stored. Your own legal setup still matters, but for most apps this removes the need for an analytics consent prompt.
How does Aptabase count sessions without tracking users?
The SDK makes a random, short-lived session id. On the server, Aptabase also derives a temporary hash from the client IP, user agent and a salt that rotates every 24 hours. That lets it count activity within a day but makes it impossible to link the same person across days or across apps.
Can Aptabase show monthly active users, retention or funnels?
No. Aptabase never identifies users, so it cannot report Monthly Active Users, per-user retention curves or funnels tied to individual people. It shows aggregate sessions, events and breakdowns. If you need user-level product analytics, PostHog, Mixpanel or Amplitude fit better.
Which platforms does Aptabase support?
Seventeen: Swift for Apple platforms, Kotlin for Android, Flutter, React Native, NativeScript, Electron, Tauri, .NET MAUI, JavaScript for web apps, React and Next.js, Angular, browser extensions, Unity, Unreal Engine, Godot, Python and C++. SDKs are MIT-licensed, and you can write your own against the ingestion API.
Can I self-host Aptabase?
Yes. Clone the aptabase/self-hosting repo, edit docker-compose.yml, run docker-compose up -d and open localhost:8000. It runs on PostgreSQL and ClickHouse. You handle updates, backups and SMTP for emails yourself, and the first account's activation link appears in the container logs.
What happens if I go over my Aptabase plan's event limit?
You are not charged overage fees. Aptabase emails you when you are close to the limit, and if you pass it, analytics pause until the start of the next month. Every call to the SDK's track function counts as one event, and nothing is tracked automatically.
Should I use Aptabase for my marketing website?
No. Aptabase is built for apps and does not focus on page views, referrers or UTM campaigns. The Aptabase team recommends Plausible for websites. A common setup is Plausible on the marketing site and Aptabase inside the app.
Where is Aptabase data stored?
You choose when you sign up: the EU region stores data in Germany with the dashboard at eu.aptabase.com, and the US region stores data in Virginia with the dashboard at us.aptabase.com. Analytics data is kept for up to 5 years, and you can export it to CSV at any time.
If you're building an app or any other software yourself, SaaSCity is a free, human-reviewed startup directory with a live city map, where your listing is a permanent page that other founders browse.
Get your SaaS in front of founders
List your product on the SaaSCity live city map - a permanent listing, real discovery, and a backlink from a high-DR directory. Free to start; upgrade for a dofollow link and a building on the map.


