A customizable, cross-platform tool for parsing WhatsApp chat databases from Android and iOS/iPadOS backups. Supports Android .crypt12, .crypt14, .crypt15, and the latest database formats. Outputs chat history in readable HTML or structured JSON.
As the official security support is ended on 31 Oct 2025, Python 3.9 is no longer supported.
Changes since RC2
New Feature
Added support for reactions (#77, #193).
Added support for additional chat types.
Handled new LID mapping (#144, #168, #188).
Implemented voice message transcription for Android (#159).
Added a --check-update-pre flag to include pre-releases when checking for updates.
Bug
Corrected the definition of action_type 58 on Android.
Fixed a regression affecting multiple new features (broken in 0.13.0rc1).
Fixed a crash occurring on messages that cannot be decoded (#44).
Fixed flawly constructed SQL queries in get_chat_condition().
Fixed a crash when checking for updates on pre-release versions.
Improvement
Improved decryption reliability on Android (#190).
Improved performance (slightly) initializing and sharing timezone settings globally across the export.
Replaced the old progress bar with tqdm.
Decreased the default brute-force workers to 4 and improved overall worker efficiency.
Added an on-the-fly fix of dot-ending files (#185)
General UI/UX enhancements.
Refactored internal functions for better maintainability.
Refacted and improved the logging facility (#168).
[!NOTE]
Please also read the release notes for RC1 and RC2.
Pre-built Binaries Provenance
The attached binaries were generated by workflow run 21313769008. You can verify their integrity and provenance using the GitHub CLI. Detailed instructions are available in the README.
Full Changelog: https://github.com/KnugiHK/WhatsApp-Chat-Exporter/compare/0.12.1...0.13.0