- 📱 Parse WhatsApp exports from Android and iOS (including zip files)
- 🐼 Convert to pandas DataFrames for easy analysis
- 📊 Interactive visualizations powered by Plotly
- 🔧 Command-line tools for quick CSV conversions
- 🌍 Multi-language support for various WhatsApp date formats
- 🚀 Fast and efficient processing of large chat histories
pip install whatstkRequirements: Python 3.11+
Install development version
pip install git+https://github.com/lucasrodes/whatstk.git@developFollow the export instructions for your device.
from whatstk import df_from_whatsapp
# Load chat into a DataFrame
df = df_from_whatsapp("path/to/chat.txt")
# Or directly from iOS zip export
df = df_from_whatsapp("path/to/chat.zip")
# Now use pandas to analyze
print(df.head())whatstk-to-csv input_chat.txt output.csvfrom whatstk.graph import plot_user_message_count
# Interactive message count chart
fig = plot_user_message_count(df)
fig.show()Full documentation available at whatstk.readthedocs.io
We welcome contributions! See our contribution guide to get started.
This project is licensed under the GPL-3.0 License.
If you use whatstk in your research or project, please cite:
@software{whatstk,
author = {Rodés-Guirao, Lucas},
title = {whatstk: WhatsApp analysis and parsing toolkit},
url = {https://github.com/lucasrodes/whatstk},
year = {2025}
}or as
Lucas Rodés-Guirao. "whatstk, WhatsApp analysis and parsing toolkit", https://github.com/lucasrodes/whatstk
- Your WhatsApp Chat History in Cool Graphs by @batmanscode
- WhatsAppening to the news by @enric1994
- Summary Analysis of My WhatsApp Chats by N.M. Danial
- From Chat to Insights: Analyzing WhatsApp Group Conversations by Erland Sada
- Building a Chatbot: Fine-Tune LLMs with WhatsApp Data by Daniel Pleus
Note
If you have created a project using whatstk, I'd love to know that and add it this list! Thanks a lot!
⭐ Star this repo if you find it useful!
Made with ❤️ by Lucas Rodés-Guirao