Exporting Hangouts History

September 2nd, 2022
tech
Yesterday I received a worrying email:

From: The Google Apps Team
Subject: Important information about the upgrade from Google Hangouts to Google Chat

Earlier this year, we announced that all Hangouts users would be upgraded to Google Chat. As the last step of the upgrade, starting November 1, 2022, Hangouts on the web will be upgraded to Chat on the web. We are emailing you because some of your conversations or portions of conversations won't automatically migrate from Hangouts to Chat.

If you wish to keep your Hangouts conversations, we strongly encourage you to use Google Takeout and download your data before January 1, 2023 when Hangouts data will be deleted.

...

(Emphasis mine)

I followed the instructions and exported the data:

$ wc -l Takeout/Hangouts/Hangouts.json
1041592 Takeout/Hangouts/Hangouts.json

A million lines of data? What does this look like?

$ head -n 25 Takeout/Hangouts/Hangouts.json
{
  "conversations": [
    {
      "conversation": {
        "conversation_id": {
          "id": "Ugx..."
        },
        "conversation": {
          "id": {
            "id": "Ugx..."
          },
          "type": "STICKY_ONE_TO_ONE",
          "self_conversation_state": {
            "self_read_state": {
              "participant_id": {
                "gaia_id": "103...",
                "chat_id": "103..."
              },
              "latest_read_timestamp": "136..."
            },
            "status": "ACTIVE",
            "notification_level": "QUIET",
            "view": [
              "INBOX_VIEW"
            ],

Oh dear. Very far from human-readable.

I've now written a script to convert it to something readable (code):

$ python3 process-hangouts-json.py Takeout/Hangouts/Hangouts.json
...
Jonah Sidman (2013-05-31 11:48 AM):
    I feel like I had a public transit question for
    you but now I don't remember what it was

Jeff Kaufman (2013-05-31 11:48 AM):
    well, let me know
...

Spot checking, I don't see anything in my script that's missing in the online Chat interface, but it's hard to be sure.

I hope this script can be useful to others trying to read what Hangouts exports!

Comment via: facebook, lesswrong, substack

Recent posts on blogs I like:

Linkpost for September

Regular announcements: did you know you can hire me for life coaching and general consulting? You can also buy my novella Her Voice Is A Backwards Record wherever fine books are sold (except Google Books).

via Thing of Things September 8, 2025

Against the Teapot Hold in Contra Dancing

The teapot hold is the most dangerous common contra dancing figure, so I’ve been avoiding it. The teapot hold, sometimes called a "courtesy turn hold,” requires one dancer to connect with their hand behind their back. When I realized I could avoid put…

via Emma Azelborn August 25, 2025

Little Puppy

She's very little and she likes to do stuff with me. She also likes to bark around and run around and jump around. She also likes to go to places with me and that's all I have.

via Nora Wise's Blog Posts August 23, 2025

more     (via openring)