PAPERDEDUP / RESEARCH TOOLKIT
One paper.
Not five copies.
Find exact duplicate PDFs. Make a clearer reading folder.
Keep every original untouched.
Local file reads only. No uploads, PDF rendering, text extraction, tracking, saved history, or file changes. This app compares bytes—not how papers look or what they say.
01 / CHOOSE A SMALL BATCH
Start with your PDFs
Choose up to 50 files · 100 MB total.
A flat selection only; folders are not scanned.
Choosing a new batch replaces this report. Canceling the file chooser leaves it unchanged. 100 MB = 100,000,000 bytes.
No files handy? The sample includes two copies, a revision, an empty file, and a fake PDF.
Choose PDFs or try the synthetic sample.
A little less repetition.
Your duplicate groups will appear here. No PDF is opened or displayed.
03 / REVIEW, THEN DECIDE
Your local review
Potential duplicate bytes are a review estimate, not disk space already recovered. Exported recommendations never delete files. Identical filenames are distinguished by selection number.
No exact-byte duplicates found in the files that could be checked.
Unique files
Not analyzed
Limits, privacy, and browser support
PDF 1.0–1.7 and 2.0 headers must begin at byte zero. Empty files, renamed non-PDFs, unsupported headers, and unreadable files are reported, not silently treated as unique. Header checks do not prove a PDF is valid or safe.
Revisions, metadata changes, or different encodings remain separate even if the pages look identical. One keep recommendation defaults to the first filename in deterministic, case-sensitive Unicode order. Change it with the radio buttons.
Processing is sequential, with one complete file in memory for SHA-256 and 1 MiB chunks for byte confirmation. A browser may temporarily keep an additional internal hash copy. Cancel takes effect after the current file read, hash, or chunk; a newer scan waits rather than overlapping. Partial results are discarded.
Use a current browser with File API and WebCrypto in a secure context, such as HTTPS. Direct local file opening varies by browser. This build's native browser file picker, WebCrypto, downloads, and responsive rendering have not been verified here.
Closing or refreshing clears selections and choices. The downloaded CSV contains filenames and hashes; keep it private. Formula-like filenames are prefixed with an apostrophe for safer spreadsheet review.
Free beta: scope, privacy and limits
No account. No charge. Exact-byte PDF comparison, not visual or semantic similarity. The app never deletes, changes, moves or renames original files. Removal candidates are recommendations for your manual review only.
Technical limits: 50 selected files and 100,000,000 total bytes (100 MB decimal); flat selection only. WebCrypto requires a supported secure browser context, such as HTTPS; actual browser performance remains unverified. These are local reliability bounds, not paid quotas.
Local processing: your selected file contents stay in this tab’s memory and are not uploaded by this app. Closing or reloading loses work. No app analytics or persistent browser storage. When hosted, the hosting provider receives normal access logs for page and asset requests.
Keep exports private: CSV reports, which expose filenames and content hashes are unencrypted copies. Clearing the app does not delete downloaded files. Check that downloads saved before closing. Native browser downloads, keyboard behavior and mobile layouts still need release QA.