How to browse all your old ChatGPT chats by month

Short answer: ChatGPT itself gives you Recents and Search. To see every chat in date order, export your data and open it in a tool that lists chats by month, or run the short script below to print a month-by-month index.

What changed

In August 2026 a Plus subscriber posted an open letter on r/ChatGPT, "Search is not a substitute for browsing your chat history". Their sidebar showed a short Recents list, older chats were reachable only through search, and OpenAI's support bot told them there was no way to browse a complete chronological list. A few commenters could still scroll their whole history, so it may not have reached every account at the same time.

Search and browsing are different jobs. Search works when you remember a word that was in the chat. Browsing works when you remember roughly when it happened, or want to see everything from one stretch of time. Commenters in that thread also said search failed them: one could not bring up some old chats even with exact key phrases, and another said search did not work across chats.

Option 1: Search inside ChatGPT

Quick, and fine when you remember a distinctive word. It does not help when you only remember the month, and it will not show you the chats around the one you find.

Option 2: Export and print a month index (free)

Request your export (Settings, Data controls, Export data). OpenAI says it can take up to 7 days and the download link expires 24 hours after it arrives. Unzip it and run this script on conversations.json (download):

import collections, datetime, json, sys

with open(sys.argv[1], encoding="utf-8") as f:
    data = json.load(f)
if isinstance(data, dict):
    data = data.get("conversations", [])

months = collections.defaultdict(list)
for conv in data:
    when = datetime.datetime.fromtimestamp(conv.get("create_time") or 0)
    months[when.strftime("%Y-%m")].append((when, (conv.get("title") or "").strip() or "Untitled chat"))

for month in sorted(months, reverse=True):
    chats = sorted(months[month], reverse=True)
    print(f"## {datetime.datetime.strptime(month, '%Y-%m').strftime('%B %Y')} ({len(chats)})")
    for when, title in chats:
        print(f"- {when:%Y-%m-%d} {title}")
    print()

Run python month_index.py conversations.json > index.md and open index.md. You get every title under a month heading, newest first. It is a list of titles only: to read a chat you still have to dig it out of the JSON, or convert everything with the Markdown guide.

Option 3: Open the export in Chat Archive Viewer

Chat Archive Viewer is a Chrome extension built for exactly this. Open the export ZIP and you get:

Free covers your newest 100 chats; Pro ($12 once) opens all of them. It has no access to any website, so it never touches your ChatGPT account. Your archive stays in your browser.

Keep it current

Sources