Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.runable.com/llms.txt

Use this file to discover all available pages before exploring further.

Every Runable mobile app comes with analytics wired up from the first build. You see what users tap, where they drop off, how often the app crashes, and how long screens take to load in a dashboard, with no extra setup.

What you get out of the box

Sessions and screens

Active users today, this week, this month. Sessions per user. Time spent in the app. Which screens are most visited and which users get stuck on.

Events

Every meaningful action sign-up, purchase, share, settings change is captured automatically. Custom events go in with one line of prompt.

Crashes

Real-time crash reporting. Stack traces, device info, the last 50 events the user did before the crash. Group by version, device, OS.

Performance

App launch time, screen-load time, slow frames. Spot regressions the moment they ship.

Session replay

Watch a recording of what a user did in the app taps, swipes, screens visited, errors hit. Personal data is masked automatically.

Funnels and retention

Set up funnels (signed up → first action → upgraded) and retention curves with a few clicks. No SQL.

How analytics flows

Events are captured on the phone, batched, and sent in small bundles no measurable battery impact. If the phone is offline, events queue locally and flush on the next connection.

What gets captured automatically

Every Runable mobile app reports these without you having to ask:
EventWhen it fires
app_openedThe user brings the app to the foreground
app_backgroundedThe user leaves the app
screen_viewAny screen change
button_tapThe user taps a tracked button (the agent tags key buttons)
sign_upA new account is created
sign_inAn existing user signs in
purchaseAn in-app purchase succeeds
subscription_startedA subscription’s free trial or paid period starts
subscription_renewedAn auto-renewal fires
subscription_cancelledThe user cancels
notification_receivedA push notification arrives
notification_openedThe user taps a push
crashThe app crashes (with stack trace)
errorA handled error happens
User properties (country, OS version, device model, app version, signed-in / signed-out) are attached to every event automatically.

Add custom events

For anything specific to your app, describe it in chat: Track when a user checks off a habit. Include the habit name and the current streak length as properties. Track when a user completes onboarding. Include how many steps they skipped and total time taken. The agent fires the event everywhere the action happens, including the right properties.

See the data

1

Open the analytics dashboard

From the project dashboard, click Analytics. The home view shows the headline numbers: daily active users, sessions, average session length, crash rate, conversion rate to paid.
2

Filter and segment

Filter by date range, platform (iOS / Android), country, app version, device class, signed-in vs signed-out. Click any chart series to drill into the underlying users or sessions.
3

Build a funnel

Click Funnels → New funnel. Pick the steps for example: app_openedsign_upfirst_habit_addedsubscription_started. The dashboard shows conversion at each step, drop-off, and time between steps.
4

Set an alert

Click any metric and choose Alert me. Pick a threshold: “crash rate above 0.5% over 30 minutes” or “daily active users drops more than 20% week-over-week.” Alerts arrive by email, in the chat, or both.

Crashes

Every crash is captured with the full stack trace, the device model, OS version, app version, and the last 50 events the user did before the crash. Group crashes by:
  • Issue one row per unique crash signature, with the count of occurrences and users affected.
  • Version see if a crash started with a specific release.
  • Device some crashes only happen on iPad mini or older Android phones.
Click an issue to see the stack trace, the breadcrumbs, and a list of affected users. Resolved issues stay archived; if the same crash returns in a later version, it reopens automatically with a flag.

Session replay

For tricky bugs, a video of the actual session beats any stack trace. Session replay records every screen the user saw and every interaction they made (mocked taps and swipes, not raw video). You can scrub through the timeline, see exactly when an error fired, and watch what the user did next.
Replay respects privacy. Text inputs, payment fields, profile fields, and anything tagged sensitive are masked you see that the user typed something but not what. The agent tags sensitive fields automatically based on the screen description.
Replay is rate-limited to a sample of sessions by default to control storage costs. Open Settings → Analytics → Session Replay to change the sample rate.

Retention and cohorts

The dashboard tracks daily, weekly, and monthly active users out of the box. For deeper retention questions, build a cohort:
  • All users who signed up in week of March 9 → daily return rate over the next 30 days.
  • All users who started a free trial → conversion to paid over 7 days.
  • All users on iPhone 12 mini → retention compared to all iPhones.
Cohorts are saved and update live as new users join.

Privacy and tracking permissions

Apple requires apps that use any third-party identifier for tracking to ask the user with the App Tracking Transparency prompt. Most analytics use cases inside your own app do not trigger the prompt the agent stays inside the first-party boundary by default. If you want to use the Identifier for Advertisers (for example, to attribute new installs to a paid ad campaign), the agent generates a tracking prompt with copy you write. Apple is strict about the copy: it has to clearly explain what you are tracking and why.
Lying about tracking in the App Tracking Transparency prompt is a top reason for App Store rejection and removal. The agent generates honest defaults; do not soften them past the truth.
Android does not require an equivalent prompt, but the Play Store data safety form requires the same disclosures. The agent fills it in from a scan of your analytics setup.

A/B testing

Run experiments without a fresh store build. Define the variants in remote config (see Environment Variables), and the analytics dashboard automatically tracks which variant each user saw and how they converted. Common experiments the agent helps set up:
ExperimentWhat to measure
Paywall headline copyTrial start rate, trial-to-paid conversion
Onboarding flow lengthCompletion rate, day-7 retention
Push notification time of dayOpen rate, conversion to app open
Free trial lengthConversion to paid, refund rate

What you can export

  • CSV of any chart with one click for slides, board reports, or further analysis in Excel.
  • Event stream set up a webhook to send a copy of every event to your warehouse, Slack, or anywhere else.
  • Crash reports as a feed pipe into your existing on-call tool.

What you cannot do

  • Track users across other apps and websites without permission. Both stores enforce this; the agent does not pretend otherwise.
  • Capture content from the system keyboard. Out of scope for analytics; the keyboard is a system surface.
  • Replay sessions for users who declined analytics. If a user opts out, no events are captured for them. They still see the app exactly as everyone else.

Next steps

Push Notifications

Use analytics to find the right moment to send a notification.

Payments & Subscriptions

Track trial conversion, churn, and lifetime value in the same dashboard.

Over-the-air Updates

Pair an A/B test with an instant update for faster iteration.

Environment Variables

Configure analytics keys per environment so dev does not pollute real numbers.