The AppTelemetry Mascot, Sondrine

Note: I tried to make all images on this page reasonably high-resolution. You're free to use them and remix or republish them in order to talk about AppTelemetry. To download an image, drag it to your desktop.

What is AppTelemetry?

A typical view of AppTelemetry on Mac

AppTelemetry is a service that lets you track events, called Signals, in your applications. Through statistical analysis, developers who use AppTelemetry can see live user numbers, know what features are used most, get retention statistics, all the things that a good analytics package should provide. This is all done in a way that

  • protects users' privacy
  • is app-centric
  • and is very friendly to newcomers.

AppTelemetry's management and viewer apps are available for macOS and iOS. There are signal sending libraries for Swift and JavaScript; but even without them any app that can send a HTTP request can send Signals to AppTelemetry.

Walking Through the App

After logging in, users can see the apps they are managing in AppTelemetry, and select one to view its Insights.
Immediately, users will see their Insights, categorized into groups. These insights are calculated live, so every new user is immediately visible.
Tapping an Insight or creating a new one brings up the editor. Here, users can directly change how an Insight queries AppTelemetry's Signal database and see live results.

AppTelemetry shows Insights

A typical view of AppTelemetry on Mac

Insights are incredibly versatile: They can count either Signals or Users (or, soon, sessions). They can be restricted to specific signal types, such as "the app launched" or "the user did x". They can be filtered by their metadata, e.g. only show signals from iOS, or a specific app version.

They can show a breakdown of all available values for a given metadata key; this makes it easy to e.g. show what percentage of an app's users have a feature enabled or which platform the app is used on the most.

Time-wise, insights can group their signals by hour, day, week or month, allowing for either fine-grained view or a good overview.

Finally, all insights can display their data as a table, as bar or line chart, or as a donut or pie chart. All this configuration can be changed and experimented with on the fly and allows developers who use AppTelemetry to deep dive into their data quickly and easily.

The Icon for the AppTelemetry Mac App

Why?

There are other analytics packages for apps out there, but none that protect the app users' privacy. Most of them are well-known to gobble up all the data they can find about users of apps they are embedded in. By contrast, AppTelemetry is anonymized in such a way that developers won't even have to throw up one of these annoying consent dialogs, because the collected data is not connectable to privately identifiable information.

Privacy is cool, and there are other analytics packages who have privacy as their goal. Only they are either not aimed at apps but at websites, or are very hard to use efficiently. As someone who is both and app developer and a server developer with lots of experience in privacy-first design and Big Data, I'm ideally positioned to bring something new to the table here.

The AppTelemetry Logotype

Who is this for?

The target audience for AppTelemetry is small-ish developers who work in Apple's ecosystem. Right now you need a Mac or an iPhone to retrieve the Insights calculated from your app's Signal data, even though Signals can be sent from any platform.

Really big companies who already have their own custom-built analytics are not going to be as interested, but I'm hoping to delight indie developers and small and medium firms looking for a light-weight and quality solution with something that is specifically tailored for them.

Who is Creating AppTelemetry?

Daniel's Memoji goofing around Daniel's Memoji goofing around Daniel's Memoji goofing around

Hi, I'm Daniel Jilg, born 1984, from Augsburg, Germany. I've been an iOS Developer for over 10 years, with my first app being one of the first 100 or so apps in the iOS App Store. At the same time, I've been a server developer for even longer, with over 15 years of experience with Vapor, Django, Rails, PHP, and other server stacks.

Iā€™m super into space. If you are too, check out my talks about computers in space and calculating orbits of planetary bodies using Swift šŸš€

The two most notable privacy-related products whose development I've lead are Keepsafe Browser and Cliqz Mobile, which now lives on as Ghostery for iOS. During development of the latter, I've learned a lot about how to do proper analytics with completely anonymized data. This, combined with a previous open source project of mine, a service to manage A/B testing for apps, lead to the development of AppTelemetry. Development started around August 2020 and continues to this day.

Daniel pretending to be an astronaut Daniel all serious

Data Security and Privacy

AppTelemetry neither receives nor stores any personal data about the users of apps that include the AppTelemetry client. Developers can include a hashed custom user identifier or hashed identifierForVendor to detect recurring users, or they can just use a random session identifier to recognize sessions without distinguishing returning users.

Pricing

While in Beta, AppTelemetry is completely free of charge. In return, I'm hoping for many comments, feedback and discussion in the Slack that will shape the service's future.

Once the service is launched publicly, there will be usage tiers based on the number of Signals received by AppTelemetry. Among these will be a free tier to try out AppTelemetry and for small businesses, a tier for medium-sized apps, and a tier for large-scale apps. Paid plans can be paid monthly or yearly.

There will also be a special tier for organisations that joined AppTelemetry during the beta period. This is a free tier, not publicly available, that grants a lot more free signals.

If the number of received Signals exceeds your organization's plan, you will be notified. No Signals will be lost. I'll try to make this as fair-use as possible with this rule: If you exceed the signals per month twice in a row, you'll be upgraded to a higher plan.

How does the Beta Period work?

The beta period will work in three phases:

  1. In Phase 1, interested developers need to submit their email address to request a beta invite and will be manually approved. This allows me to control the number of people using the service while I'm still tuning the server performance. Everyone who applies (except, say, Parler) will eventually get a beta invite though, usually a few hours to a day after requesting it.

  2. Phase 2 will be an open beta, sometime in the spring of 2021. In this phase, everyone who is interested is free to register and try out AppTelemetry for free of charge, regardless of the amount of Signals they send. This will make sure I find all remaining issues and kinks in the system, and ensure things run smoothly.

  3. Phase 3 is the public launch, which I expect to be around mid- to late-2021. Way ahead of the launch, existing beta developers will be notified of the payment plans and if they fall within the bounds of the very generous plans for grandfathered-in early users.

I'll do my very best to ensure users are migrated smoothly between the phases, and to communicate clearly what will happen ahead of time, so developers won't be surprised by any changes.