Analytics
Send a signal in one line. We count signals, errors, and enforcements, and break them down by country, OS version, app version, and device. We don't touch personal data unless you tell us to.
Block bad updates, roll out features safely, change config remotely, and see what's happening. No App Store release required.
Send a signal in one line. We count signals, errors, and enforcements, and break them down by country, OS version, app version, and device. We don't touch personal data unless you tell us to.
Add a feedback button to your app. Reports come into the dashboard grouped by topic, tagged bug or request, with a suggested reply.
Block a broken build, set a minimum required version, or force users to update instantly. No App Store review queue. You can see who's on what version in the same dashboard.
Boolean, string, and JSON values you can change without cutting a build. Gate updates behind a flag, and if an experiment goes sideways, flip it off and recover instantly. No App Store review queue.
Send a signal in one line. No device IDs, no profiles, nothing that ties an event back to a person.
No SQL. No data analyst. No trying to piece things together. Just ask our builder in plain english, and we'll build you a brand new chart on the fly. Want to see which countries new users were from this week. Boom, new chart showing new users broken down by country over time.
It can filter data across dimensions like OS version, country, language, app version and more. It can also segment signals by value if you have signals that can hold different values. For example if you send us a signal called "paywall" with the value being the paywall version.
The SideKit builder can even build you funnels to watch flows that matter to you like how many users drop off at each page of the onboarding.
An update never lands all at once. You hit publish and it starts seeping out into the world, a handful of phones the first night, a few thousand by the weekend and over weeks it slowly reaches criticality.
But, the issue is that not all users have automatic updates on or even bother keeping their apps up to date. You always have stragglers stuck on versions that are years old. You get bug reports for bugs you've already fixed and feature requests for features you've already added.
SideKit not only tracks how much usage each of your app versions is getting in the wild but also lets you show users on old versions a gate letting them know that they can update their app. You can even choose to make the gate forced, such that the user has to update to continue to your content for critical releases.
Put a feedback form wherever it fits in your app. Your users tap it, type a sentence, and hit send without ever leaving the app. No email, no support portal, no help desk to set up.
The same request shows up a hundred different ways. “Add dark mode.” “A night theme, please.” “The white background is killing my eyes.” SideKit groups the near-duplicates together for you, so you read it once instead of forty times, with a running count of how many people asked.
Every group gets a status you control. Open, in progress, resolved, won't do. Anyone looking at the dashboard can see exactly where each request stands.
Shipped the fix? Mark the group resolved and reply to everyone who asked, all in one message. It goes out from your app's own name, so it reads like a note from the team instead of a no-reply robot. Your users hear back.
.task {
await SideKit.shared.configure(apiKey: "YOUR-API-KEY")
}View docsAs long as you're under 100,000 signals a month, you don't pay us anything.
SwiftUI, UIKit and React Native.
Five minutes, three lines of code.
We don't collect personal data unless you explicitly send it.