← Back to news

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

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 games99.42%\text{Win Rate} = \frac{1543 \text{ wins}}{1552 \text{ games}} \approx 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