Feature

Search across every chat, jump to every hit

Substring search across the whole archive: cross-chat hit counts in the sidebar, in-chat match counter with cycling. Same .tarc, instant results.

Cross-chat search from the sidebar

Type a word in the conversation-list search box. Chat Hoarding scans every chat in the open archive and surfaces a hit count per conversation. Click a result to jump straight into that chat with the matches highlighted. Useful when you remember a phrase but not who said it.

In-chat search with a match counter

Inside a conversation, the in-chat search bar shows '3 of 17' and cycles forward/back with the keyboard. The viewport scrolls to each hit. Hits are highlighted in-place so you see the surrounding context, not just a snippet.

How it works (today)

Search runs a case-insensitive substring match (SQLite LIKE) against the decrypted msgstore.db inside the .tarc bundle, scoped to the open archive only. Fast on real archives because the DB is local; no network round-trip. Full-text indexing (FTS5), media filename search, ranking, receipt-state filtering, and date-range jump are on the roadmap.

FAQ

  • Does it search media captions and document filenames?

    Message body text and image captions, yes (they live in the same text_data column). Searching by document filename is on the roadmap.

  • Can I search inside voice notes?

    No. Voice notes are stored as audio, not transcribed text. Transcription is not currently in scope.

  • Does search require an internet connection?

    No. Search runs against the local .tarc bundle. The Mac app does not send any query content to a server.

Used in

Other capabilities

Save your WhatsApp history forever.

$99 one-time. 2 Macs, revocable. 14-day refund.

Search across every chat, jump to every hit · Chat Hoarding