Android ProGuard/R8 Mapping Deobfuscator
Deobfuscate Android stack traces instantly using your ProGuard or R8 mapping.txt file. Upload your mapping file, paste the obfuscated stack trace, and get readable output with original class and method names restored. Supports ProGuard, R8, and DexGuard. Free, private, and no signup required.
Android ProGuard/R8 Mapping Deobfuscator
Upload your ProGuard or R8 mapping.txt to deobfuscate obfuscated Android stack traces. Restore a.a() back to meaningful class and method names instantly.
Paste mapping.txt and stack trace
Upload your mapping.txt file or paste it in the left panel, then paste the obfuscated stack trace on the right and click "Deobfuscate Stack Trace".
Powerful Android Stack Trace Deobfuscation
Deobfuscate Android crash reports instantly using your ProGuard or R8 mapping.txt file. Restore readable stack traces for faster debugging.
ProGuard & R8 Compatible
Fully compatible with mapping.txt files generated by both ProGuard and R8 Android obfuscators. Handles class-level and member-level mappings with method signatures and field types.
Accurate Mapping Parser
Robust parser that correctly interprets the ProGuard mapping.txt format, including class hierarchy, method parameters, return types, field declarations, and multi-line member entries within class blocks.
Side-by-Side Comparison
View original obfuscated and deobfuscated stack traces side by side with color-coded highlighting. Green rows indicate successfully mapped lines. Switch to deobfuscated-only view for clean output.
100% Private Browser-Based
All parsing and deobfuscation runs entirely in your browser. Your mapping.txt file and stack traces never leave your device. Perfect for sensitive production crash data.
Common Use Cases
The ProGuard/R8 Mapping Deobfuscator is used by Android developers, QA engineers, support teams, and security researchers worldwide.
Crash Report Analysis
Deobfuscate crash reports from Google Play Console, Firebase Crashlytics, Sentry, or any other crash reporting tool. Turn unreadable stack traces with a.a() names into clear, actionable error reports.
Production Debugging
Quickly identify the root cause of production crashes by mapping obfuscated stack traces back to your source code. Save hours of guesswork when investigating user-reported issues.
CI/CD Pipeline Integration
Store mapping.txt files alongside your release builds. Use this tool to quickly deobfuscate any crash trace during development without needing to set up complex deobfuscation pipelines.
Android App Maintenance
When maintaining legacy Android apps with obfuscation enabled, use mapping files from previous releases to deobfuscate old crash reports and understand historical issues.
Customer Support Triage
Support teams can paste obfuscated crash traces shared by users directly into this tool along with the app mapping file to get readable stack traces for better issue triaging.
Audit & Compliance
Maintain deobfuscated crash logs for compliance and audit purposes. Generate clean, readable stack traces that can be attached to bug reports, tickets, and incident documentation.
About ProGuard/R8 Mapping Deobfuscation
Understand how ProGuard and R8 obfuscation works, how the mapping parser interprets mapping.txt files, and best practices for crash deobfuscation.
What Is ProGuard/R8 Obfuscation?
ProGuard and R8 are tools that shrink, optimize, and obfuscate Android app bytecode during the release build process. Obfuscation renames classes, methods, and fields to short, meaningless names like a, b, c, reducing APK size and making reverse engineering harder. The mapping.txt file records these renames, allowing crash traces to be deobfuscated back to readable form.
How the Mapping Parser Works
The parser reads the mapping.txt format line by line. Class mappings follow the pattern OriginalClass -> ObfuscatedClass: with a trailing colon. Member mappings are indented underneath and follow the pattern typeOrSignature originalName -> obfuscatedName. The parser correctly handles method parameters, return types, and field types, building a complete lookup table from obfuscated names back to originals.
Stack Trace Deobfuscation Strategy
Each line of the stack trace is analyzed for known obfuscated patterns. Standard Java frame lines (at com.example.a.a.a(Source)) are parsed to extract the obfuscated class and method name, then looked up in the mapping. Non-frame lines like "Caused by" and exception messages are scanned for obfuscated class name references and replaced inline. Lines without matches are preserved as-is.
Best Practices for Mapping Files
Always save the mapping.txt file for every release build. Store it in your version control system or artifact repository alongside the APK/AAB. Multiple flavors and build types generate different mapping files — make sure to use the correct one. Google Play automatically deobfuscates stack traces if you upload the mapping file through the Play Console, but this tool gives you instant results without upload delays.
Frequently Asked Questions
Everything you need to know about ProGuard/R8 mapping deobfuscation.
A mapping.txt file is generated by ProGuard or R8 when you build a release version of your Android app. It contains a mapping from original class, method, and field names to their obfuscated (shortened) equivalents. Without this file, obfuscated stack traces from crash reports are nearly impossible to read.
After building a release APK or AAB with ProGuard/R8 enabled, the mapping.txt file is usually located in app/build/outputs/mapping/release/mapping.txt. You can also find it inside the mapping/ directory of your app build. Google Play Console automatically uploads mapping files if you enable Play App Signing and upload the APK with the mapping file.
The tool supports standard Android Java/Kotlin stack traces including those from Logcat, Google Play Console, Firebase Crashlytics, Sentry, and other crash reporting services. It handles multi-line traces, "Caused by" chains, and inline class name references in exception messages.
Yes. R8 is the replacement for ProGuard starting with Android Gradle Plugin 3.4.0. R8 generates mapping.txt files in the same format as ProGuard, so the mapping files are fully compatible with this tool. R8 also supports all the same obfuscation options as ProGuard.
Yes. DexGuard is a commercial extension of ProGuard that provides additional obfuscation features. The mapping.txt format is compatible, though DexGuard adds extra obfuscation layers like string encryption that may not be fully reversed by this tool.
The parser recognizes class-level mappings (OriginalClass -> ObfuscatedClass:) and member-level mappings (type originalName -> obfuscatedName). It correctly handles method signatures with parameters, field declarations, and multi-line member entries within each class block.
Absolutely. All processing runs entirely in your browser. Your mapping.txt file and stack trace are never uploaded to any server, stored, or tracked. Everything stays on your device. No signup required.
Yes. Firebase Crashlytics produces standard Android stack traces that are fully compatible. You can also upload your mapping.txt file to Firebase Console, but this tool provides instant browser-based deobfuscation without any upload or waiting.
Yes, 100% free with no signup, no account, and no usage limits. Deobfuscate as many stack traces and mapping files as you need. All features including file upload, example presets, side-by-side comparison, copy, and download are available without restrictions.