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:

How to Make a Christmas Wreath

Yesterday, I made a Christmas wreath. Here's how to make one. First, find an evergreen tree near your house. Clip off a few branches from the tree. Try to have as many leaves or needles on the branches as possible. Next, bring them home. What I usu…

via Anna Wise's Blog Posts December 6, 2025

Live with Linch

A recording from Ozy Brennan and Linch's live video

via Thing of Things December 5, 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

more     (via openring)