How to check if a PDF website uploads your file

Open the browser’s developer tools, choose the Network panel and run the tool with a test file: an upload shows as a POST or PUT request that carries the file. Or load the page, switch the network off and run the tool again. If it still gives a result, the work happened on your device.

Updated

What are the quick signs that a site uploads files?

Before any test, the page itself often says so. These signs mean your file goes to a server:

  • A progress bar or a percentage labelled “Uploading”, which slows down on a slow connection.
  • A promise such as “your files are deleted after 2 hours”. A file can only be deleted from a place it was sent to.
  • A file size limit that is lifted when you pay, or a request to sign in before you can download the result.
  • A download link that points to a web address on a server, and still works when opened on another device.

How do I run the offline test?

This is the simplest test and works on a phone too. Use a file with nothing private in it.

A result that appears with no connection was made on your device: there was nowhere to send the file. If the tool fails offline, the site needs its server for something. Usually that is the file itself; sometimes it is only code the page had not loaded yet, which the next test tells apart.

  • Open the tool’s page and wait until it has fully loaded.
  • Turn the network off: airplane mode on a phone, or Wi-Fi off and the cable unplugged on a computer.
  • Choose a PDF and run the tool.
  • See whether you get a result you can open, then turn the network back on.

How do I watch the Network panel in Chrome, Firefox or Safari?

Every desktop browser can list each request a page makes. Open the panel first, then use the tool, so that nothing is missed.

In Chrome: press F12, or open the menu with three dots, then More tools, then Developer tools, and choose the Network tab. In Firefox: press F12, or open the menu, then More tools, then Web Developer Tools, and choose Network. In Safari on a Mac: open Safari, then Settings, then Advanced, and switch on the option that shows features for web developers; then choose Develop, Show Web Inspector, and the Network tab.

Chrome and Firefox also have a menu in this panel, normally set to “No throttling”, with an Offline choice: a way to run the offline test for one tab only.

  • With the Network panel open, clear the list so that it starts empty.
  • Choose a test PDF of a few megabytes and run the tool. A larger file makes an upload easier to spot.
  • Watch for new rows as you choose the file and as you press the button. No new rows, or only small ones for the page’s own scripts and pictures, means nothing was sent.
  • Look at the Method column (right-click the column headings to add it if it is hidden). An upload is a POST or PUT request, sometimes several in a row for one file cut into pieces.
  • Click such a row. In its headers, Content-Length in the request is about the size of your file, and the content type is often multipart/form-data. The row also takes longer the bigger the file is.
  • Check the Domain or address of each row. Requests to other companies’ addresses show who else learns that you were there.

What does this app’s page do when tested?

PDF Case passes both tests, and you are invited to run them. With the Network panel open, choosing a file and running a tool adds no request that carries the file: the PDF is read from your disk into the page’s memory, worked on by code already loaded, and offered back as a download made inside the browser.

Two things in the page make this more than a habit. First, every page carries a content security policy, a set of rules the browser itself enforces. Its rules say that the page may connect only to the address it was loaded from, may load scripts, fonts and pictures only from there, and may not submit a form anywhere. A script on the page that tried to send data to another site would be stopped by the browser. You can read the policy by viewing the page’s source and looking for Content-Security-Policy near the top.

Second, a service worker, a small helper the browser keeps for the site, stores the app’s own files on your device on the first visit. After that the pages and tools open from that copy, which is why they work with the network off. The site behind it serves fixed files only; there is no server program to receive a document.

What can these tests not tell me?

The offline test shows where the work is done, not what a page might send later when the connection is back. That is why the Network panel is worth a look as well: leave it open, go back online, and see whether anything large leaves.

Neither test covers what a site does with a file once it has it. For a site that uploads, you are left with its privacy policy, which you can read but can’t verify.

Tools for this

Files are processed on this device and never uploaded.

Questions

Does HTTPS or a padlock mean my PDF is not uploaded?
No. HTTPS only protects data on its way between your browser and the site. A site with a padlock can upload your file just the same; the padlock means others on the network can’t read it in transit.
Can I check on a phone, where there are no developer tools?
Yes, with the offline test. Load the tool’s page, switch on airplane mode, then choose a file and run the tool. If a result appears, the file was processed on the phone.
If a tool works offline, could it still upload my file later?
In principle a page could keep data and send it when the connection returns. To rule that out, keep the Network panel open after going back online and look for a large POST or PUT request. On PDF Case the browser also blocks connections to any other site.
Does PDF Case upload my PDF?
No. Every tool runs in your browser on your device. The pages carry a policy that lets them connect only to their own address, which serves fixed files, and the tools keep working with the network off once the page has loaded.
Is a site that uploads files unsafe?
Not necessarily. Many handle files carefully and delete them as promised. The difference is that you have to trust that promise, while processing on your own device is something you can check yourself.

Related guides