Home › Blog › Detection benchmark and offline test

AnonymFiles detection benchmark and offline test: method and results

On a fictitious set of 40 documents from law, notarial and accounting firms, AnonymFiles masked 99% of the expected items, in plain text and in real formats: Word, PDF, scans, emails and spreadsheets. Here is the method, the misses that remain, and how to check for yourself that nothing leaves the computer.

Published · 8 min read

The results at a glance

These figures describe a fictitious set, not your case files. They are used to check the engine and track its changes; they do not replace reviewing every document.

The benchmark method

The set has forty fictitious documents in French, written like those of the seven professions AnonymFiles serves: written submissions, writ of summons, judgment, sale agreement, deed of gift, engagement letter, minutes of a general meeting, payroll export, bailiff's report, service of process, insolvency report, list of creditors, draft patent, contract, non-disclosure agreement, emails. Every person, company, address, contact detail and number is invented. The set includes deliberate traps: namesakes, names in tables, names in capitals, companies named by their legal form, dates of birth next to dates of statutes, SIREN and social security numbers.

For each document, a list sets two things:

Forty-five other elements (amounts, docket numbers, land registry references, vehicle registrations) are masked by hand during review: they are not counted. Part of the documents is then produced as Word, text PDF, scanned PDF, email and spreadsheet, and prepared by the application's full pipeline, extraction and OCR included. An item counts as found if its value no longer appears, as a whole word, in the redacted copy; a term to keep counts as an error if it has disappeared. The set, the expected answers and the scripts are published with the code: the benchmark can be re-run identically.

Results by type of information

TypeExpectedFoundRecall
People16015899%
Organizations5757100%
Addresses7171100%
Emails2121100%
Phone numbers2121100%
IBANs1010100%
Private dates1414100%
Identifiers (SIREN, social security…)1212100%
Total36636499%

Results by file format

The same documents, prepared in their real format by the application. For scans, an item that OCR does not read exactly (lost accent, confused letter) is counted as “not read” and is left to check during review.

FormatFilesExpectedFoundRecallTerms masked by mistake
Word (.docx)55757100%1
Email (.eml)3313097%0
Text PDF54848100%0
Scanned PDF (OCR)540 (1 not read)40100%0
Spreadsheet (.xlsx)22222100%1

On a PDF with tight line spacing, a redacted area no longer erases words on the neighbouring line: the defect, found with this set, is fixed (on a scanned page, pixel erasure still covers the full height of the words).

What this benchmark does not tell you

Hence the application's rule: every document is shown side by side with its original, and nothing is exported without approval. The benchmark is repeated at every model or detection-rule change.

What the application does on the network

Here, according to the application's code, is everything that touches the network:

ItemOn MacOn Windows
Document contentNever sentNever sent
Detection models and OCR filesIncluded in the application: no connectionDownloaded once, on first processing, at a pinned revision, SHA-256 fingerprint checked
LicenseSigned key checked on the computer, with no account and no network callSame
Telemetry, statistics, automatic updatesNoneNone
InterfaceEvery web request from the window is blockedSame
Local bridge for AI agentsThe computer's 127.0.0.1 address, protected by a tokenSame

The 127.0.0.1 local bridge is not the internet

The 127.0.0.1 address refers to the computer itself: a connection to it never leaves the machine. AnonymFiles opens a small service there, on a randomly chosen port and protected by a secret token, that only AI agents installed on the same computer (Claude Code, Codex…) can call to read the redacted and approved copies, never the originals. A firewall or monitoring tool may display this address: that is normal, nothing goes outside.

The details are on the security and network scope page.

Checking offline operation yourself

On a Mac

  1. Turn off Wi-Fi (and unplug the network cable) right after installation, before the first launch.
  2. Process a test case file: detection, review, export. Everything works, models included: they ship with the application.
  3. For finer proof, install an outbound firewall: LuLu, free and open source, or Little Snitch. It shows every attempt to connect to the internet, application by application. Only connections to 127.0.0.1 can appear, those of the local bridge.
  4. Without installing anything, Activity Monitor (“Network” tab) shows the bytes sent and received by each process.

On Windows, once the Windows version is released

  1. Let the first processing run download the public models: it is the only planned connection, with no document text.
  2. Then block the application in Windows Defender Firewall, or turn off the network: processing continues.
  3. To observe, Resource Monitor (“Network” tab) lists the processes that communicate, and the netstat -b command, in a command prompt run as administrator, shows their connections.

And on the exported file

Open an exported PDF, select all the text and paste it into an editor: the masked text is no longer there, it has been deleted, not covered. The six checks to run on any redacted PDF are in our guide to checking that a PDF is really anonymized.

Frequently asked questions

What is AnonymFiles' detection rate?

On a fictitious set of 40 documents from French firms (366 expected items), measured on October 14, 2026 with the real engine and the network disabled, AnonymFiles masked 364 items, that is 99%. On real file formats, recall ranges from 97% (emails) to 100% (Word, PDFs, scans and spreadsheets). In light detection, switched on for computers with 8 GB of memory or less, it is 98%. It is an indicator on a fictitious set, not a guarantee on your case files.

Does this benchmark guarantee that no name will slip through?

No. It covers 40 documents written for the purpose, not real case files, and six items out of 366 still slip through: organizations without a legal form (“Clinique du Parc”) and surnames alone in a file heading or an email subject. No automatic detection is perfect: every document is reviewed side by side with its original, and nothing is exported without approval.

How can you check that AnonymFiles works offline?

On a Mac, turn off Wi-Fi right after installation, then process a case file: everything works, models included. To go further, an outbound firewall such as LuLu (free) or Little Snitch shows any attempt to connect to the internet. On Windows, let the first processing run download the public models, then block the application in the firewall: processing continues.

Why might a firewall report a 127.0.0.1 address?

127.0.0.1 refers to the computer itself, not the internet. AnonymFiles opens a local bridge on this address, protected by a token, that only AI agents installed on the same computer can call to read the approved redacted copies. Nothing travels over the network.

What does AnonymFiles download on Windows?

Once only, on first processing: the two public detection models, at a pinned revision, and the French and English language files for Tesseract OCR. Each file is checked against its SHA-256 fingerprint. No document text is included in these requests. On a Mac, everything is included in the application.

Can the benchmark be re-run?

Yes. The fictitious set, the list of expected items and the script that generates the Word, PDF, scan, email and spreadsheet versions are published with the code; the benchmark is re-run with the benchmark script on the local models, in complete or light mode. It is repeated at every model or rule change.