●  New: build your backend and app together with AI. Point Claude or Cursor at AppAmbit over MCP.

On mobile?

Email yourself the setup link so you can finish when you're at your computer.

Logs & Crashes

A crash shouldn't earn you a bad store rating.

Crashes come from anywhere: a new feature, a refactor, a fix that broke something else, an edge case you never hit in testing. AppAmbit catches every iOS and Android crash and handled error in production, with its full stack trace and real user impact, so you fix it fast, and can roll a bad release back before the one-star reviews land. See it in your dashboard, or ask your AI Agent over MCP.

See the dashboard

iOS & Android · Crashes and handled errors · Impact in one view

Crashing in production
9:41
Now Playing New
Playing

Midnight Drive

Neon Fields

1:243:47
Spatial Audio · new
Try Spatial Audio

Wavora keeps stopping

android.media.AudioManager

App info Close app

A new feature is crashing for real users.

Spiking on a release? Pair crashes with remote config and the broken feature flips off automatically, no app update and no store review, so a bad build never costs you your rating.

Remote config
One crash, in full

Stop reproducing. Start reading.

iOS or Android, open any crash and you get the full record: the exact stack trace, the versions and devices it hit, and a link to the breadcrumbs and events from that session.

Android crash

android.media.AudioManager

Users

3

Versions

3.4.0 (28)

Occurrences

10

Last seen

1 week ago

Stack trace

at AudioManager.playSoundEffect(AudioManager.java:3703)

at AudioManager.playSoundEffect(AudioManager.java:3683)

at SpatialAudioController.enable(SpatialAudio.kt:88)

at PlayerFragment.onToggle(PlayerFragment.kt:214)

Seen on Live data
DeviceZTE Z2353
OSAndroid 13
App version3.4.0 (28)

Attached crash file

Download

Session timeline

View

The whole run, one click away. Every crash links back to its full session timeline: the breadcrumbs, events and logs from that exact device.

Your dashboard

Grouped, ranked, and impact scored.

Handled errors and hard crashes each get their own trend, and similar ones are grouped automatically. Every group shows how often it fires, how many real users it hits, and which app version it started in. You always know what to fix first.

Errors (37) handled with logError
Crashes (11) live
Diagnostics · Wavora Live data
DescriptionPlatformTypeApp Versions OccurrencesUsersLast Seen

NSInvalidArgumentException

AVAudioEngine startAndReturnError

iOS crash 2.9.1 (41) 24 9 3 days ago

IllegalStateException

MediaPlayer.start() in state 8

Android crash 3.4.0 (28) 14 6 5 days ago

android.media.AudioManager

SpatialAudioController.enable

Android crash 3.4.0 (28) 10 3 1 week ago

Fatal error: Index out of range

PlaylistView.swift:142

iOS crash 2.9.1 (41) 6 4 3 weeks ago
Showing 1 to 4 of 4 results Per page 10

Prefer to just ask? Read your crashes from the dashboard, or let your AI Agent query them over the MCP server, no context switching.

you › Which crash hit the most users in 3.4.0?
Log in
Not only crashes

Log the errors you catch, too.

Not every problem should take the app down. One dependency, one line to start, and a single call logs the errors you catch with full context, right next to your crashes. Same setup on every platform you ship, so pick yours.

1 Install the library

// build.gradle.kts
implementation("com.appambit:appambit:1.0.0")

2 Start the SDK, once

AppAmbit.start(context, "APP_KEY")

3 Capture the errors you catch

try {
    player.enableSpatial()
} catch (e: AudioError) {
    AppAmbit.logError(e, mapOf(
        "feature" to "spatial_audio"
    ))
}

1 Install the library

// Podfile
pod 'AppAmbit'

2 Start the SDK, once

AppAmbit.start("APP_KEY")

3 Capture the errors you catch

do {
    try player.enableSpatial()
} catch {
    AppAmbit.logError(error, properties: [
        "feature": "spatial_audio"
    ])
}

1 Install the library

# pubspec.yaml
flutter pub add appambit

2 Start the SDK, once

AppAmbitSdk.start("APP_KEY");

3 Capture the errors you catch

try {
    player.enableSpatial();
} catch (e) {
    AppAmbitSdk.logError(e, {
        "feature": "spatial_audio"
    });
}

1 Install the library

// terminal
npm install appambit

2 Start the SDK, once

AppAmbit.start("APP_KEY");

3 Capture the errors you catch

try {
    player.enableSpatial();
} catch (e) {
    AppAmbit.logError(e, {
        feature: "spatial_audio"
    });
}

1 Install the library

// terminal
dotnet add package AppAmbit

2 Start the SDK, once

AppAmbit.Start("APP_KEY");

3 Capture the errors you catch

try {
    player.EnableSpatial();
} catch (AudioException e) {
    AppAmbit.LogError(e, new() {
        ["feature"] = "spatial_audio"
    });
}

1 Install the library

// terminal
dotnet add package AppAmbit

2 Start the SDK, once

AppAmbit.Start("APP_KEY");

3 Capture the errors you catch

try {
    player.EnableSpatial();
} catch (AudioException e) {
    AppAmbit.LogError(e, new() {
        ["feature"] = "spatial_audio"
    });
}

Same timeline, same context. A logged error carries its message, properties and the session it happened in, exactly like a crash. Watch the Errors trend and fix the small things before they become the big ones.

Read the docs
Get started

Catching crashes in four steps.

Create a free account, add your app, drop in the SDK, and crashes and errors start landing with their full context. See the full setup in the docs. No credit card to begin.

STEP 01

Create your account

Sign up free in seconds. No credit card.

STEP 02

Add your app

Register your app and grab its key from the dashboard.

STEP 03

Drop in the SDK

One line on iOS, Android, React Native, .NET MAUI or Flutter. Crashes are captured automatically.

STEP 04

Watch and roll back

Crashes land with context, and remote config can revert a bad release on its own.

Already have an account? Log in
Everything you get

Full visibility into production, no guesswork.

Crashes and errors

Native crashes and the errors you catch in code, in one place.

Automatic grouping

Similar crashes are grouped together so you fix the root cause once.

Impact visibility

See exactly which issues hit the most real users, and prioritise by it.

Audience

Auto rollback

Spike on a release? Remote config reverts the feature before ratings drop.

Remote config

Full stack traces

Every crash carries its stack, device, occurrences and first-seen version.

Release health

Ask your AI Agent

Query your crashes in plain language from the dashboard or over MCP.

AI Agent
Fix with context

Ship fast. Recover faster.

Catch every iOS and Android crash and handled error with full context, know who it hit, and roll a bad release back automatically. Read it in your dashboard, or ask your AI Agent over MCP.

Log in

Crashes and errors

Native crashes and handled errors, one timeline.

Grouped by root cause

Fix the cause once, not a thousand events.

Auto rollback

Revert a bad release before ratings drop.