Skip to content

Everything your app does, in one place.

Traffic, downloads, product analytics, errors, logs and bug reports for people who ship a website and a desktop app on their own.

Start free Self-host it

Overview

Last 30 days

Visitors

24,812

+12.4%

Downloads

3,104

+8.1%

Active installs

2,689

last 7 days

Crash-free

99.6%

of sessions

Active installs

daily
web1.2M events
app840k events
errors312 open
logs4.1M lines
feedback27 new

Everything

Six dashboards, one product, one bill.

An indie developer ships a site, an installer and an app, and ends up paying four companies to each hold one slice of the story. This holds all of it, and it is the same dataset underneath.

Downloads

Your installer is a product surface. Almost nothing treats it like one.

Which platform, which architecture, which build people are actually taking away, and how that moved after you shipped on Tuesday. It sits between the website and the app, and most stacks have nowhere to put it.

Downloads

by platform · last 30 days

macOS · arm64

52.9%

1,642

most on 2.7.0

Windows · x64

29.1%

902

most on 2.7.0

macOS · x64

12.5%

388

most on 2.6.4

Linux · AppImage

5.5%

172

most on 2.7.0

Counts, not guesses. Every number here is something that was actually reported , by the download endpoint or by the app itself. Nothing is inferred by matching one against the other.

Errors and feedback

The crash and the complaint about it arrive in the same inbox.

A bug report with no version and no stack trace is a support thread. One that arrives already attached to the exception that caused it is a ticket you can close.

Issues

grouped by fingerprint

TypeError: cannot read length of undefined

new

src/sync/reconcile.ts:184

1,204

events

214

people

SQLITE_BUSY: database is locked

src/db/pool.ts:62

486

events

98

people

FetchError: request to /v1/sync failed

src/net/client.ts:41

203

events

61

people


Coverage

Every tool owns one column. Nobody draws the whole row.

This is not a claim that the tools below are bad. Each is good at its column. It is a claim about what it costs to run six of them and reconcile the answers on a Friday.

What each tool covers, across the six things an app produces
  Web Downloads Product Errors Logs Feedback
Plausible Web analytics, and good at it. It has never heard of your installer, your crash log or your users. Web: covered Downloads: not covered Product: not covered Errors: not covered Logs: not covered Feedback: not covered
PostHog Product analytics with a web tag. Errors are a bolt-on, logs belong to someone else, and there is no release model. Web: covered Downloads: not covered Product: covered Errors: partly covered Logs: not covered Feedback: not covered
Sentry Crashes and traces, done well. Nothing about traffic, downloads, or what people actually did before it broke. Web: not covered Downloads: not covered Product: not covered Errors: covered Logs: partly covered Feedback: not covered
Aptabase App analytics, and only app analytics. Errors, logs and feedback are four other subscriptions. Web: not covered Downloads: not covered Product: covered Errors: not covered Logs: not covered Feedback: not covered
Better Stack Logs and uptime for the backend. It has never heard of your desktop build. Web: not covered Downloads: not covered Product: not covered Errors: partly covered Logs: covered Feedback: not covered
Canny A feedback board that arrives with no version, no platform and no crash attached. Web: not covered Downloads: not covered Product: not covered Errors: not covered Logs: not covered Feedback: covered
firstrun One project, one dashboard, one bill. Six surfaces reporting into the same schema. Web: covered Downloads: covered Product: covered Errors: covered Logs: covered Feedback: covered

Ship it. Then find out what happened.