Flutter SDK

Flutter crash reporting your app-store reviews won't give you

One AllStak.runApp wrapper captures Flutter framework errors, uncaught zone errors, and native crashes on iOS and Android — with handled-exception capture and automatic HTTP instrumentation, on the same platform as your backend errors and logs.

Why Flutter apps need real crash reporting

A mobile crash is the worst kind of bug: the app vanishes from the user's hand, there is no console to inspect, and the only feedback channel left is a one-star review three days later. A Dart exception on a low-end Android device or a native crash on a specific iOS version can ship through testing untouched — and once the build is in the stores, you can't hotfix what you can't see.

AllStak's Flutter SDK closes that gap with one wrapper. AllStak.runApp installs error and native crash handling automatically: framework errors and uncaught zone errors are captured, native crash capture is on by default, handled exceptions report with stack trace and context, and HTTP calls are auto-instrumented through HttpOverrides. Every crash lands on the same platform as your backend errors, logs, traces, and uptime — one dashboard, in English or Arabic, for the whole stack.

Full Flutter error tracking

From a Dart exception in a widget to the native crash beneath it and the API call behind it, AllStak covers your Flutter app across every layer.

Crash & error capture

Once AllStak.runApp wraps your app, Flutter framework errors and uncaught zone errors are captured automatically — no per-screen handlers to maintain.

Native crash reporting

Native crash capture on iOS and Android is on by default, so crashes that never reach Dart still reach your dashboard.

Handled exceptions with context

Report handled exceptions via captureException with a stack trace and a context map — like the screen the user was on — so triage starts with answers.

Automatic HTTP tracking

With enableHttpOverrides (default true) the SDK installs a process-wide HttpOverrides so HttpClient calls are auto-instrumented — or use an explicit instrumented client.

Releases & crash-free sessions

Set release in AllStakConfig to track crash-free sessions per version — and see immediately whether the new build made things better or worse.

Alerts & notification rules

Route new crashes and error spikes to Slack, email, and more with notification rules — your team hears about it before the reviews do.

Add AllStak in minutes

Add the package from pub.dev and wrap your app with AllStak.runApp — error and native crash handling are installed automatically from there.

main.dart
flutter pub add allstak

import 'package:allstak/allstak.dart';
import 'package:flutter/material.dart';

void main() {
  AllStak.runApp(
    const AllStakConfig(
      apiKey: String.fromEnvironment('ALLSTAK_API_KEY'),
      environment: 'production',
      release: String.fromEnvironment('ALLSTAK_RELEASE'),
      service: 'mobile',
    ),
    () => runApp(const MyApp()),
  );
}

Provide the API key at build time via String.fromEnvironment, not hardcoded — and set release so crash-free sessions are tracked per version. full setup guide · SDK reference.

What you see in AllStak

Crash detail with full context

Open any crash to the stack trace, the context you attached, the environment, and the release it shipped in — reproduction without the guesswork.

Crash-free sessions per release

Track how each version behaves in the wild — and catch the release that regressed before most of your users update to it.

HTTP calls behind the failure

Auto-instrumented HttpClient calls show which API requests surrounded the crash — so a mobile bug that's really a backend bug gets routed to the right team.

Unified real-time dashboard

Mobile crashes next to the backend errors, logs, and uptime of the APIs behind them — one dashboard, in English or Arabic, for the whole team.

Why teams pick AllStak for Flutter

  • Mobile and backend on one platform — crashes, errors, logs, traces, and uptime with one bill.
  • One AllStak.runApp wrapper — framework errors, zone errors, and native crashes captured from there.
  • Not tied to Firebase — crash reporting without adopting a whole second vendor ecosystem.
  • HTTP calls auto-instrumented through HttpOverrides — no per-request wrapping.
  • Predictable SAR pricing with a genuine free tier — start without a credit card.
  • Data stays in Saudi Arabia, with an English and Arabic dashboard for the whole team.

Flutter crash reporting FAQ

How do I add crash reporting to a Flutter app?

Run flutter pub add allstak, then wrap your app with AllStak.runApp, passing an AllStakConfig and your runApp call. That installs error and native crash handling automatically — framework errors and uncaught zone errors are captured from there, and the setup guide covers handled exceptions and HTTP tracking.

Is AllStak an alternative to Firebase Crashlytics for Flutter?

Yes. You get crash reporting and error tracking without tying your app to Firebase — and unlike Crashlytics, the same platform also monitors your backend errors, logs, traces, and uptime. Add a bilingual English/Arabic dashboard, SAR pricing, and data stored in Saudi Arabia, and the whole stack lives in one place.

Does AllStak capture native crashes in Flutter?

Yes. AllStak.runApp installs native crash handling on iOS and Android automatically, and native crash capture is on by default — so crashes that happen below the Dart layer still reach your dashboard.

Is AllStak free for Flutter?

Yes. AllStak has a free tier you can start on without a credit card, and predictable SAR pricing as you grow. The Flutter SDK itself is free to use.

Will the SDK slow down my Flutter app?

The SDK is built for production apps: capture hooks are lightweight and telemetry ships in the background, so your users' experience isn't meaningfully affected. You stay in control of what's instrumented — HTTP auto-instrumentation, for example, can be turned off via enableHttpOverrides.

Start tracking Flutter crashes today

Wrap your app, ship the build, and watch crashes, errors, and HTTP calls arrive in one dashboard. Start free — no credit card required.