PRIVATEYour X archive is read in this tab — never uploaded

Your X archive, readable again.

Open the ZIP you downloaded from X (Twitter) right in your browser. TweetArchive rebuilds your timeline and threads, groups your DMs by conversation with search, puts every photo next to its real post date, and exports an offline HTML copy plus CSV/JSON.

  • The ZIP never leaves your device
  • No X login needed
  • No “Extract All” required
  • $19 once · free preview
Reads
  • tweets.js
  • direct-messages.js
  • account.js
  • note-tweet.js
  • tweets_media/
0 bytes

of your archive are sent to our servers. Parsing happens in your browser tab.

Why that matters
24 h+

is how long X may take to prepare your archive, according to 2022 reporting. Request it early.

How to request it
100 posts

free in the preview, with sample exports. No account needed.

Free vs Pro
$19

once for the full timeline, every DM, the whole gallery, and full exports.

Pricing

The problem

You downloaded your archive. You still can’t read it.

X gives you a ZIP with a viewer page and a data/ folder of .js files. For anyone who isn’t a developer, that is where it stops.

tweets.js isn’t readable

The data files start with window.YTD.tweets.part0 =. They are JSON wrapped in JavaScript, so most people end up scrolling them in Notepad.

Your archive.html can stall

The bundled viewer loads a lot at once from a local page. With a big archive it can stay blank or keep loading. Why.

Photos lose their dates

Files in tweets_media carry the download date. The real post date sits in tweets.js, matched only by the post ID in each filename.

How it works

Three steps. No install.

  1. Step 1

    Request your archive at X

    Settings → Your account → “Download an archive of your data”. X emails you when it is ready. Step-by-step.

  2. Step 2

    Choose the ZIP here

    TweetArchive reads the ZIP directly — parts, folders, and multi-GB files — and finds the data files by name, without uploading anything.

  3. Step 3

    Browse, search, export

    Timeline with threads, DMs by conversation, a gallery dated to each post. Export an offline HTML copy, CSV/JSON, or dated photos.

The app

Open your X archive

Choose the ZIP (or the unzipped folder). TweetArchive parses it in this tab with visible progress — nothing is uploaded. No archive handy? Try the sample: it builds a realistic fake archive in memory.

Drop your X (Twitter) archive ZIP here

Choose the .zip you downloaded from X — or the folder you unzipped it into. It is read in this browser tab and never uploaded. If X split it into several ZIPs, add them all.

Free preview: the 100 most recent posts, a sample of every DM conversation and the gallery, plus sample exports. Free plan

Under the hood

Built for the real archive format

There is no public spec from X that we could read, so TweetArchive follows what independent parsers document — and discovers file names instead of assuming them.

  • Random-access ZIP readingReads the ZIP’s central directory (Zip64 included) and inflates only the entries it needs.
  • No evalStrips the window.YTD.*.partN = prefix with an anchored match and parses the rest as JSON.
  • IDs as stringsPost IDs exceed JavaScript’s safe integer range, so id_str is kept as text everywhere.
  • Discovery, not assumptionstweet.js or tweets.js, -partN files in numeric order, direct-message(s)(-group).js, manifest.js when present.
data/tweets.js (sample)
window.YTD.tweets.part0 = [
  { "tweet": {
    "id_str": "1150482938112290816",
    "created_at": "Sun Jul 14 19:42:05 +0000 2019",
    "full_text": "Sunsets never get old https://t.co/…",
    "in_reply_to_status_id_str": "1150482401…"
  } }
]
data/tweets_media/
1150482938112290816-D_aB3xYUcAA9kQe.jpg
# post ID ─┘ → created_at 2019-07-14T19:42:05Z
→ photos-by-date/2019/2019-07-14_194205_….jpg

What you get

Everything in your archive, organized

Built for people leaving X, people whose account is gone, researchers, and anyone who needs one DM or one photo back.

Timeline with threads

Your posts in order, with self-reply threads grouped and expandable. Filter by type and date; search by words or post ID.

DMs by conversation

direct-messages.js and group DMs become readable chats with dates, attachments, and search across every conversation.

Media with real dates

Every photo and video matched to its post and shown with the date you posted it — then exported named and dated that way.

Offline HTML copy

A self-contained folder you can open in ten years without an account. Print any view to PDF from the browser.

CSV and JSON

Clean files for Excel, Google Sheets, or scripts. IDs stay as text, t.co links expanded where the archive has them.

Private by design

No upload, no X login, no account. Analytics count page views only — never your archive’s contents.

Compared

How TweetArchive compares

Based on each project’s own pages as of November 2026. Free tools are great if you’re comfortable with a terminal or a server.

FeatureTweetArchiveYour archive.html (bundled)twitter-archive-parser (Python)Self-hosted apps (TweetNook, Birdclaw)
What you installNothing — a browser tabNothing (unzip first)Python, then run a scriptA self-hosted install (Python, npm, or Homebrew)
Reads the ZIP without unzippingYesNoNoImports the archive
Archive stays on your deviceYesYesYesYes (your machine or server)
DMs grouped by conversation + searchYesIncludes DMs and searchDMs to Markdown filesVaries by app
Photos dated to the post dateYes (filename, ZIP date, JPEG EXIF)NoNot documentedNot documented
Windows without a terminalYesYesNoTweetNook: native Windows not supported (per its README)
Price$19 one-time · free previewFreeFree on GitHubFree on GitHub

Pricing

Free preview. $19 once for everything.

Free

Preview

$0

See that your archive was understood before you pay.

Open my archive ZIP
  • Open any size archive, nothing uploaded
  • Account, post, DM, and media counts
  • The 100 most recent posts + search
  • 50 recent messages per conversation
  • 24 media tiles · sample exports

ONE-TIME

TweetArchive Pro

$19 USD

Unlimited in this browser. Restore anywhere with your checkout email.

Unlock Pro, $19
  • Every post, thread, and search result
  • Every DM conversation, full history + search
  • The complete media gallery
  • Offline HTML copy with all media
  • Full CSV/JSON + all photos dated by post
  • One payment, no subscription

FAQ

Questions people actually ask

Short answers. Each guide below goes deeper.

How to open your X archive
Is my archive uploaded anywhere?

No. TweetArchive reads the ZIP with JavaScript in your browser tab. Your posts, DMs, and media never leave your device. The only server calls are for loading this site and, if you buy Pro, confirming the Stripe payment.

Why won’t Your archive.html load?

The bundled viewer loads a lot of data at once from a local page, and it can stall on big archives. TweetArchive reads the data files directly and doesn’t depend on it. More.

Which archives does it read?

Current archives with data/*.js files in the window.YTD format: tweets.js or tweet.js (including -partN files), account.js, direct-messages.js and group DMs, note-tweet.js for long posts when present, plus tweets_media and direct_messages_media. Older “Grailbird” archives open as a text timeline.

Why do some DM partners show as numbers?

DM records store numeric user IDs, and the archive often doesn’t include other people’s @usernames. TweetArchive fills in names it finds elsewhere in your archive and otherwise shows the ID.

How are photo dates fixed?

Each file in tweets_media is matched to its post by the post ID in the filename, and gets that post’s created_at date in the filename and ZIP timestamp. JPEGs without EXIF also get DateTimeOriginal. More.

Can I make a PDF?

Yes, by exporting the offline HTML copy and using your browser’s Print → Save as PDF. One-click batch PDF is not available yet.

What do I get for $19?

A one-time license for this browser: the full timeline and search, every DM conversation, the complete media gallery, and full exports (offline HTML with media, CSV, JSON, and dated photos). No subscription. Pro can be restored with your checkout email.

Is this an official X product?

No. TweetArchive is an independent tool by Cedano Labs LLC, not affiliated with X Corp. It reads the archive file X gives you and never logs in to X.

Your archive deserves better than Notepad.

Open it in your browser. Nothing is uploaded. Free preview, $19 once for everything.