logo
Kurashizu Blogwhere ideas flow
  • Home
  • News
  • Blog
  • About
  • Home
  • News
  • Blog
  • About

© 2026 Kurashizu. All rights reserved.

Admin·New Post·Service Status
Powered by Cloudflare·01.11.26
← Back to news

Rebuilding and analysing 4 years of Wordle stats from WhatsApp chat logs

Original article
blog.omgmog.net|17 points|4 comments|by surprisetalk|Aug 3, 2026

Reconstructing Four Years of Wordle Data via WhatsApp Logs

By Max Glenister | Published: 26 July 2026 #data #wordle #whatsapp #programming

Believe it or not, I am still playing Wordle in the year 2026. According to the official game metrics, my record looks like this:

MetricValue
Total Games Played1,559
Win Percentage99%
Current Streak107 Days
Longest Streak278 Days

Despite these numbers, the official stats offer no insight into whether my skill has actually improved over the last four years. However, I discovered that a simple habit—sharing my daily results to WhatsApp—had inadvertently created a more robust archive than the game itself.

The Flaws in Official Wordle Statistics

Since June 30, 2025, my data has been stored server-side via my NYT account. While this ensures that clearing my cache or switching devices doesn't wipe my progress, it obscures the history. I only know the exact date of this transition because of a "fossil" remaining in my phone's local storage: a key named wordle-legacy-stats-228392857.

Local Storage Snapshot:

{ 
  "wordle-legacy-stats-228392857" : { 
    "gamesPlayed" : 1170, 
    "gamesWon" : 1162, 
    "guesses" : { "1" : 4, "2" : 65, "3" : 323, "4" : 440, "5" : 263, "6" : 67, "fail" : 8 }, 
    "currentStreak" : 234, 
    "maxStreak" : 234, 
    "timestamp" : 1751262931 
  },
  "wordle-stats-cutover-tooltip" : true 
}

The wordle-stats-cutover-tooltip boolean likely flagged the one-time notification about the migration. While the handover to the cloud was seamless (my 278-day streak survived), previous transitions were not. For example:

  • August 2024: Switched from a Pixel 5a to a Pixel 7a; since data was local, my streak vanished.
  • February 2022: The migration from Josh Wardle's site to nytimes.com caused many players to lose their streaks. My earliest surviving share is puzzle #214, meaning my very first weeks of play are gone forever.

Transforming Chat Logs into a Dataset

WhatsApp allows users to export chats as .txt files. Each entry follows a standard format: dd / mm / yyyy , hh : mm - author : message. This provided the perfect raw material: puzzle numbers, dates, and results.

The Extraction Process

I implemented the following workflow to recover my stats:

  • Export chat history to text.
  • Filter for messages sent by "Max Glenister".
  • Use regex to isolate the score line.
  • Convert "X/6" (loss) vs "N/6" (win) into boolean values.

The Python Logic:

# Simplified extraction logic
WORDLE_RE = re.compile(r"Wordle (\d+) (\d/6)") 
# ... logic to parse match ...
won = guess_raw != "X"
guesses = int(guess_raw) if won else None
result = {
    "date": "2022-01-19",
    "puzzle_number": puzzle_number,
    "guesses": guesses,
    "won": won,
}

The resulting CSV looked like this: date,puzzle_number,guesses,won 2022-01-19,214,3,True 2022-01-20,215,5,True

Analyzing the Results

The export captured 1,552 games. This is slightly lower than the 1,559 claimed by Wordle, likely due to days I played but forgot to share.

Performance Metrics

My calculated win rate is: Win Rate=1543 wins1552 games≈99.42%\text{Win Rate} = \frac{1543 \text{ wins}}{1552 \text{ games}} \approx 99.42\%Win Rate=1552 games1543 wins​≈99.42%

Guess Distribution & Highlights:

  • Most Common: 4 guesses (590 games).
  • The "Luckies": I had 4 first-guess wins:
    1. unite
    2. mouse
    3. style
    4. audio (One of my two primary openers, along with adieu).

Interestingly, all four 1-guess wins occurred between November 2022 and August 2023. I haven't had one in nearly three years, suggesting the pool of "easy" common words has dried up.

Streak and Gap Analysis

My longest streak was indeed 278 days (Nov 9, 2024 →\rightarrow→ Aug 13, 2025). By analyzing the gaps, I found:

  • The 2025 Gap: A single missed day in the summer (likely due to kids) ended a 204-day run.
  • The 2022/23 Gaps: More frequent breaks of 3–7 days.
  • The Birthday Break: A 9-day gap in late November 2022, which I've decided to excuse.

Since late 2023, the gaps have vanished, resulting in a "dark green" heatmap of consistency. Because I saved the full grids, I can even analyze whether a "lucky" green square was a fluke or a pattern.

Puzzles Feed JillyLovesLife