LEGAL

Privacy Policy

ZeroWrite is a security product. Trust is the product, so this policy is written to be read, not to be survived.

LAST UPDATED — 8 OCTOBER 2026

The short version

Your files never leave your computer.ZeroWrite analyses executables locally. It does not upload file contents, documents, or anything it scans. What can be sent is limited to cryptographic hashes, URLs, and — for a file ZeroWrite has blocked — that file’s own name, never the folder it came from. All of it only when you have turned the relevant setting on yourself.

We collect the minimum needed to run an account and a licence: your name and email if you create one, and standard technical data such as IP address. We do not sell data, and we do not run advertising or cross-site tracking.

Who we are

ZeroWrite.ai provides the ZeroWrite desktop application and this website. For privacy questions, contact us at [email protected].

The desktop application

What stays on your machine, always

Behavioural analysis, intent scoring and rule matching all run on your computer. Protection does not depend on a network connection.

What may be sent, and when

Three switches, shown to you during setup and changeable at any time in Settings. They do not all start in the same position, and the reason is worth stating plainly rather than burying.

The first two are on unless you turn them off. Neither contains anything that identifies you: the first carries no file data at all, and the second carries a cryptographic fingerprint, which names the file and not its owner and cannot be turned back into the file. We rely on our legitimate interest in keeping the product working and its detections accurate, and your switch is the means of objecting.

The third is different and starts off. A file name can carry your name, your employer, a client, a case number or a diagnosis. Our detection engine never needs it, so we ask rather than assume, and we rely on your consent. A pre-ticked box is not consent, which is why that one is never pre-ticked.

CategoryDefaultWhat it contains
Anonymous usage dataOnApplication version, rule-pack version, detection counts by severity only, verdict latency, update success or failure. Never a file name, path, hash, or byte of content.
Threat data on blocked filesOnFor blocked items only, and this is the whole list: the SHA-256 hash, the extension, the size in bytes, the names of the rules that matched, the risk score, the 21 numbers our analysis produced about the file’s structure, and one word saying whether Windows recorded it as coming from the internet. This category never carries the file itself — that is the separate row below — and never the folder it was in.
The blocked file’s nameOffAdds the file’s own name to the row above, and nothing else. Still never the folder it was in.
A copy of the blocked fileOn, for programs onlyA copy of a file ZeroWrite blocked, so we can confirm the block was correct. Sent without asking only when the file is a compiled Windows program. Anything else — a document, a spreadsheet, an archive, a script, or a format we do not recognise — is shown to you first, named, and is never sent unless you say yes to that individual file.

Both are tied to a random install identifier generated on first run. It is not linked to your name, email, or licence unless you tell support about it.

Turning a category off deletes whatever it had queued and not yet sent, rather than holding it back. Anything already received is kept for at most 90 days and then deleted.

A file name can be personal. It can name a person, an employer, a case, or a diagnosis, which is why sharing them is a separate switch you have to reach for, is limited to files ZeroWrite actually blocked, and never carries the folder that would say whose file it was. We use them to tell a real detection from a false alarm. If a name of yours has been shared and you want it removed, email [email protected] with the SHA-256 shown beside the item in your History, and we will delete it.

Why a program can be sent without asking.The question we ask of a blocked file is not how dangerous it is — it is already quarantined, so that is settled — but whether it could contain something you wrote. A compiled Windows program is the output of a build toolchain: compiler output, linker output and resources. Nobody types it. A document, an archive or a script is the opposite, and a malicious script is indistinguishable from an administrator’s own from the outside, which is why those are always asked about.

That decision is made by reading the file’s own header, not its name. A file called invoice.pdf.exe is a program and is treated as one; a file called setup.exe that is really an archive is not, and you will be asked. A file we cannot read, or a format we cannot identify, is asked about — not knowing what is inside something is a reason to ask, not a reason to take it.

You get a day to disagree first.When ZeroWrite blocks something it waits for you to choose Allow, Keep or Delete, and Allow means we were wrong and the file is yours. Nothing is sent automatically until that decision has been open for 24 hours, and allowing a file cancels the send outright — so a false alarm you notice is a file we never receive.

Declining is final: we do not ask about that file again. Turning the whole category off in Settings stops both halves and discards anything still waiting to be asked about. Copies we hold are deleted after 180 days, are stored encrypted and access-controlled, and are used only to check and improve detection — never to build a profile of you, and never shared or sold. If a file of yours has been sent and you want it deleted, email [email protected] with the SHA-256 shown beside the item in your History.

If you handle other people’s confidential material — legal, medical, financial or journalistic work — consider turning sample submission off entirely. The split above is designed so the automatic half cannot carry a document, but a switch you control is a stronger guarantee than a rule we wrote, and it is yours to use.

About those 21 numbers. To decide whether a file is dangerous, ZeroWrite measures it: how random its bytes are, how many sections and imports it has, whether it can download, whether it can run code it fetched, how much of it looks deliberately hidden. The verdict is arithmetic on that list, and the list is what we send.

It is measurements abouta file rather than any part of the file. “Entropy 7.1, 43 imports, no packer, download capability present” describes millions of programs and cannot be turned back into any of them — not into the contents, not into the name, not into the folder, and not into you. We send it because the detection model is currently trained on public malware collections, which look nothing like what people actually run into, and that gap is the difference between a product that flags your build tools and one that does not.

And the one word about origin. Windows tags files that arrive from outside the machine with the zone they came from. We send that tag — one of internet, intranet, trusted, restricted or local-machine — because the same bytes downloaded from a web page and the same bytes produced by a compiler are very different stories. Stored next to that tag is the URL the file came from. We do not read it. Download URLs routinely carry session tokens, one-time links and account identifiers, and none of that would tell us anything about whether a file is malware.

What we have chosen not to collect. The most useful thing an endpoint product can gather is the command line of every process that runs. We do not gather it. Command lines contain passwords, database connection strings and API keys as a matter of routine, and no amount of care in handling them afterwards undoes having asked for them. If that ever changes it will be its own switch, off by default, described here before it ships — not folded quietly into a tier you already agreed to.

Machine identifiers

Licence seats are counted using a random identifier created once per installation. It is deliberately not derived from your hardware — no motherboard IDs, disk serials, or MAC addresses are read or hashed. Reinstalling produces a new identifier.

Accounts on this website

If you create an account, we store:

When you choose a password we check it against known breach corpora using k-anonymity: only the first five characters of its hash are sent, which is not enough to identify the password or you.

Quote requests

When you ask pentest4u.com, our security services site, for a quote, we collect your name, work email, company, role (if given) and what you tell us about your needs. It is sent by email to our sales team, through Resend, and used only to reply to your request and prepare a proposal. We do not add you to a mailing list. Ask us at any time to delete it.

Payments

Payments are handled entirely by Paddle, which acts as the merchant of record for every ZeroWrite purchase. Paddle — not us — is the seller on your receipt, and it collects and remits any sales tax or VAT due in your country. Card numbers never reach our servers. We receive confirmation of a subscription, its status, and the billing email address, which is what we use to send your licence key.

Who else processes your data

ProviderPurpose
VercelWebsite hosting
SupabaseAccount database
PaddlePayments and billing (merchant of record)
ResendTransactional email
CloudflareProxy and protection for our API
GitHubRelease and update distribution
SentryCrash reporting

How long we keep things

Your rights

Depending on where you live, you may have the right to access, correct, export, or delete your personal data, to object to processing, and to complain to a supervisory authority. Contact [email protected] and we will respond within the period the applicable law requires.

Deleting your website account does not disable ZeroWrite on your computer — the application keeps protecting you using the licence already installed.

Children

ZeroWrite is not directed at children and we do not knowingly collect data from anyone under 16. Creating an account requires you to confirm that you are 16 or older; we do not ask for or store your date of birth.

Changes

If we change this policy in a way that materially affects you, we will say so on this page and, where the change is significant, by email.

Related: Security & vulnerability disclosure · Terms of Service