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:
- An "All chats" list grouped by month, newest first, with a jump-to-month menu.
- Click any title to read the whole chat, with code blocks and the edited version you kept.
- Full-text search over every message, shown next to the month list.
- Claude exports too, in the same list, with a ChatGPT / Claude filter.
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
- Export every month or two. Opening a newer export in Chat Archive Viewer updates existing chats and adds new ones.
- Keep the ZIP files. An export cannot bring back a chat you already deleted.
- Chats are dated by when they were created. A chat you continued last week still sits under the month you started it.
Sources
- r/ChatGPT, "Open letter to OpenAI: Search is not a substitute for browsing your chat history", August 8, 2026: reddit.com/r/ChatGPT/comments/1vigwza
- OpenAI Help Center, "Exporting your ChatGPT history and data": help.openai.com/en/articles/7260999