- Home
- Game Crash Reporting Software
- Crashpad
Crashpad
What it is
Crashpad is a free, open-source crash-reporting system and client-side library for capturing, storing, and transmitting crash reports. A handler takes a snapshot of a registered process after a crash, saves a dump, and can send it to a collection server when the embedding application has configured a server address. Applications can also request process-state dumps for diagnostics and add key/value annotations, application-specific metadata, or custom minidump streams. Reports use the Windows minidump format with Crashpad extensions and generally include loaded modules, thread registers and stack memory, selected operating-system state, and selected memory referenced by registers and stacks. Because reports may contain sensitive process memory, the design says applications must obtain and honor user consent before uploading. The client configures the destination; uploads can use HTTP or HTTPS, with HTTPS recommended for protection in transit. The documented strategy allows one upload per hour and stops failed uploads. Crashpad is a client-side component, while a crash-report processor is planned without a completion timeline. It supports Android, iOS, Linux, macOS, and Windows; the iOS handler runs in-process and cannot catch some crash groups, including out-of-memory crashes.
For and against
For
- Free and open source.
- Captures process-state dumps on demand.
- Supports annotations and custom minidump streams.
- Available for Android, iOS, Linux, macOS, and Windows.
Against
- A crash-report processor has no completion timeline.
- iOS cannot catch some crash groups, including out-of-memory crashes.
- Failed uploads are aborted; retry support may change.
The verdict
Crashpad provides client-side crash capture, configurable uploads, and diagnostic dumps across several platforms. Teams should account for consent, server setup, and platform-specific limits, especially on iOS.
Who it suits
Crashpad suits application developers who need crash reporting, diagnostic dumps, and application-specific crash metadata. It is intended to be embedded in client applications and requires the application to manage upload consent and configure a collection server.
Plans and prices
Crashpad
No pricing or plan limits stated
Read 9 Oct 2026 · chromium.googlesource.com
On the record
- Annotations
- Client applications can add key/value annotations and extend reports with application-specific metadata or custom minidump streams.chromium.googlesource.com · read 4 Oct 2026
- Backend scope
- Crashpad is a client-side component; its status page says a crash-report processor is planned, with no completion timeline set.chromium.googlesource.com · read 4 Oct 2026
- Build and test
- The project provides build instructions and says Crashpad Buildbot performs automated builds and tests.chromium.googlesource.com · read 9 Oct 2026
- Collection server
- The embedding application configures the collection server URL, and Crashpad can upload reports over HTTP or HTTPS.chromium.googlesource.com · read 9 Oct 2026
- Consent and privacy
- The design says the client application must obtain and honor user consent for uploads, because reports may contain sensitive data from process memory.chromium.googlesource.com · read 4 Oct 2026
- Crash metadata
- Applications can add key/value annotations and extend reports with application-specific metadata or custom minidump streams.chromium.googlesource.com · read 9 Oct 2026
- Diagnostics
- It can capture process state on demand for diagnostic purposes.chromium.googlesource.com · read 9 Oct 2026
- Integration
- Crashpad is embedded into client applications; outside Chromium it depends on mini_chromium, while Chromium builds use Chromium's base library.chromium.googlesource.com · read 9 Oct 2026
- iOS limitations
- The iOS handler cannot catch some crash groups, including out-of-memory crashes, and writes intermediate dumps that are converted to minidumps later.chromium.googlesource.com · read 9 Oct 2026
- iOS status
- The project status page says work has begun on an iOS client; iOS uses an in-process handler because its sandbox restricts delegating work to separate processes.chromium.googlesource.com · read 9 Oct 2026
- On-demand dumps
- Crashpad can capture dumps of process state on demand for diagnostic purposes.chromium.googlesource.com · read 4 Oct 2026
- Privacy
- Crashpad's design says the client application must obtain and honor user consent before uploading reports, which may contain arbitrary data from process memory.chromium.googlesource.com · read 9 Oct 2026
- Process architecture
- Crashpad uses a handler that snapshots a client process after a crash, saves a crash dump, and can transmit it to an upstream server if configured.chromium.googlesource.com · read 4 Oct 2026
- Project support
- The README directs users to the issue tracker for bugs and the crashpad-dev mailing list for project discussion.chromium.googlesource.com · read 9 Oct 2026
- Purpose
- Crashpad is a library for capturing, storing, and transmitting postmortem crash reports from an application to a collection server.chromium.googlesource.com · read 9 Oct 2026
- Report contents
- Crash dumps generally include loaded modules, thread registers and stack memory, selected operating-system state, and selected memory referenced by registers and stacks.chromium.googlesource.com · read 4 Oct 2026
- Report format
- Crash reports use the Windows minidump format with extensions for Crashpad additions such as annotations.chromium.googlesource.com · read 4 Oct 2026
- Security
- The handler reads client address spaces through accessors designed to check pointer validity and enforce access bounds.chromium.googlesource.com · read 9 Oct 2026