Quick answer: The Crash Report Client (CRC) is a separate program that starts when a packaged game crashes, shows the player a dialog and uploads the crash. Include it with Project Settings > Packaging > Advanced > Include Crash Reporter, and point it at a server with DataRouterUrl in the [CrashReportClient] section of DefaultEngine.ini. As of UE 5.4, Epic does not receive reports from packaged builds, so without a URL of your own the reports go nowhere you can see.
Many Unreal developers assume that crashes in their shipped game are being collected somewhere because they have seen the crash reporter dialog. Unless you configured it, those reports are not reaching you. Here is how the Crash Report Client works and how to make it useful.
What the Crash Report Client does
When a game built with Unreal crashes, the engine writes crash files to disk and launches CrashReportClient, a separate program, because the game process itself is no longer reliable. CRC shows the player a dialog with an optional comment box, then uploads the crash to the configured endpoint. Players can close it without sending.
Including it in a packaged game
In the editor, open Project Settings > Project > Packaging, expand Advanced and enable Include Crash Reporter. Or set it in Config/DefaultGame.ini:
[/Script/UnrealEd.ProjectPackagingSettings]
IncludeCrashReporter=True
Choosing where reports go
Add your endpoint to Config/DefaultEngine.ini:
[CrashReportClient]
DataRouterUrl="https://your-crash-endpoint.example.com/..."
As of UE 5.4, Epic does not receive reports from packaged builds, development or shipping, so this URL is the only place your players' crashes can go. Crash services that accept Unreal crash reports, such as BugSplat, Backtrace and Sentry, give you a URL to paste here; you can also run your own receiver.
Where crash files are saved
- Editor and development runs: your project's
Saved/Crashesfolder. - Packaged games on Windows:
%LOCALAPPDATA%\<ProjectName>\Saved\Crasheson the player's machine. - Each crash folder holds
CrashContext.runtime-xml(engine version, platform, callstack and more),UEMinidump.dmpand a copy of the game's log.
If a player reports a crash and you have no endpoint, ask them for the newest folder in that location. Open the minidump in Visual Studio or WinDbg with the PDBs from the exact same build.
Symbols
A minidump is only useful if you have the debug symbols for the build that crashed. Archive the PDB files for every build you ship, or upload them to your crash service if it symbolicates for you. Without them, callstacks are addresses.
What CRC does not do
- Non-fatal problems. Ensures, logged errors and gameplay bugs that do not crash never reach CRC.
- Player bug reports. Its comment box only appears after a crash.
- Grouping and workflow. What happens to reports after upload depends entirely on the service behind your URL.
Adding in-process capture and player reports
Bugnet's Unreal SDK is an engine subsystem that hooks Unreal's fatal-error and ensure handlers inside the game process, and files each one with the error message, recent log output, a screenshot and the player's platform, OS, CPU, GPU and RAM; your own UMG menu can call ReportBug() so players can report bugs that do not crash. It does not replace CRC, so you can keep minidumps going to a dump-processing service and send everything else to one tracker with your Steam reviews. Create a free project to try it, and compare options in the best crash reporting tools for Unreal Engine.
Frequently asked questions
How do I enable the crash reporter in a packaged Unreal game?
Enable Include Crash Reporter under Project Settings, Project, Packaging, Advanced, or set IncludeCrashReporter=True in the [/Script/UnrealEd.ProjectPackagingSettings] section of DefaultGame.ini.
Where does Unreal's Crash Report Client send reports?
To the DataRouterUrl set in the [CrashReportClient] section of DefaultEngine.ini. As of UE 5.4, Epic does not receive reports from packaged builds, so you need your own endpoint or a crash service.
Where are Unreal crash files saved on Windows?
For packaged games, in the Saved\Crashes folder inside %LOCALAPPDATA%\ProjectName on the player's machine; in the editor, in the project's Saved/Crashes folder. Each crash folder contains CrashContext.runtime-xml, UEMinidump.dmp and a log.
Do I need debug symbols for Unreal crash reports?
Yes. Keep the PDB files for every build you ship, or upload them to your crash service, so minidump callstacks resolve to function names.
Does the Crash Report Client capture ensures or player bug reports?
No. It only handles crashes. Ensures, logged errors and bugs that do not crash need in-game capture and a report form.
On UE 5.4 and later, without a DataRouterUrl your players are clicking Send for nobody.