Why Client-Side File Conversion is the Future of Data Privacy
A privacy claim you can check yourself beats a privacy policy you have to believe. Here is how to verify that a browser converter never sends your file anywhere, and an honest account of what does still leave the page.
Check it before you believe it
Open your browser's developer tools (F12 on Windows, Cmd and Option and I on a Mac), switch to the Network tab, clear whatever is already listed, then convert a file and watch.
You will see requests. What you will not see is your file. A request carrying an 8 MB photo would appear as an 8 MB request, and sorting the list by size makes that obvious in about a second. There is no upload because there is no code that performs one.
Then run the stronger version of the test. Turn off your wifi and convert an image anyway. It still works, because image conversion here is a canvas draw followed by an encode call, and the browser does both locally with no network involved. Some of the heavier tools do fetch a library the first time you use them, and those will fail while you are offline until that file is cached. The distinction is worth stating precisely: code coming down to your machine is not the same as your file going up. Every request has a URL and a direction, and you can read both.
What "never uploaded" means at the level of the code
When you drop a file onto a web page, the browser hands the page a reference to it rather than the contents. Reading it produces a buffer that lives in that tab's memory. Everything the converter does from that point is arithmetic on those bytes.
Nothing in a browser transmits a file on its own. Bytes leave a page only when code explicitly attaches them to a network request or a form submission. So "we do not upload your files" is less a promise about intentions than a description of code that does not exist, and the useful property of absent code is that its absence is observable from outside.
The result comes back the same way. The finished file is held in memory as a Blob, and the browser mints a temporary address for it that only resolves inside that one tab. The download link points at your own memory. Closing the tab is the entire deletion policy: no retention window to read, no promise that files are removed after an hour, and no backup system that might quietly have a different opinion.
Why this matters for the files people actually convert
Think about which documents send someone looking for a converter in the first place. A passport scan for a visa application. Payslips for a mortgage. A letter from a hospital. A signed contract. A photograph of a bank statement. The ordinary case for a file converter is a document you would not email to a stranger.
Uploading one adds a party to it. Even with a careful and honest operator, you have taken on their breach exposure, their subprocessors, their backup retention, their logging, and whatever legal process can reach them in whichever country the file happened to land in. None of that is visible from the outside and none of it can be audited after the fact. The safest data for a service to hold is the data it never received.
What does leave the page
Your files stay put. Other things do not, and a privacy argument that skipped this part would be worth less than nothing.
- Analytics loads on every page. It records that a conversion happened on a particular tool, how many files were in the batch, their combined size in bytes, and how long the work took. It never receives file names or file contents. Your IP address and the usual browser details reach the analytics provider the way they do on most of the web.
- Advertising scripts load as well. That is third-party code with its own tracking, and being straight with you about the file path does not make it disappear.
- Several tools fetch their libraries from a public CDN the first time you use them. The CDN learns your IP address and which library you asked for, which is a fair hint about which tool you opened. It learns nothing about the file.
If that bothers you, block it. Run a content blocker, or open a private window with one enabled. The conversion still works, because none of those scripts sit anywhere in the conversion path. Verifying that claim takes the same minute in the Network tab as everything else here.
What client-side processing does not solve
Running in a tab is not a security guarantee. It is a narrower attack surface. The page is still code delivered over the network, and code delivered over the network can be tampered with. If this site were compromised and served malicious JavaScript, that JavaScript would run with exactly the access to your file that the converter has. No amount of client-side architecture prevents that.
What it changes is who you have to trust, and when. With an upload-based service you trust a policy document describing what happens to a file after it leaves you, and you have no way to check any of it. With a browser-based one you trust the code that is running right now, and you can watch it work while it runs. Trust does not vanish. It moves somewhere you can point a developer tool at.
There are limits that have nothing to do with security, too. The work happens on your device, so an old phone is slow where a laptop is not. A tab has a memory ceiling, so very large files fail here in cases where a server with disk access would cope. And anything needing a licensed engine or a very large model is either a substantial download or simply not possible. Those are real trade-offs, and they are the price of the file never going anywhere.
If you take one thing from this, take the test rather than the argument. The Network tab is right there in the browser you already have open. Any converter claiming your files stay local is making a claim you can falsify in under a minute, on this site or on anyone else's. Run it against whichever tool you were about to trust with something you care about.