How file processing works
A local preview and a server upload are different steps. This page explains the browser image tools, Image Converter and queued PDF workflows listed below, including where their files go and what happens to the results. Other services can have different processing paths.
Where these tools process files
The processing location follows the selected tool and, for Image Converter, the formats and browser encoder available.
| Workflow | Tool examples | Processing location | File lifecycle |
|---|---|---|---|
| Browser image tools | Your browser | These image operations generate their outputs locally without uploading the image for processing. Save the result before leaving the page. | |
| Image conversion | Browser or server | Browser-compatible conversions can run locally. Advanced formats or an unavailable browser encoder use a server upload and a temporary conversion workspace. | |
| Queued PDF tools | Server | Uploaded inputs and generated outputs belong to a processing job. Download access is checked against its owner, and expiry depends on guest or account status. |
What stays in the browser
The image tools in the browser row decode your selected image and create the result with browser workers and canvas. Selecting an image for these operations does not send its contents to the image-conversion server.
Previews and generated download objects belong to the open page. Keep the original and download the result before refreshing or closing the page. A browser compressor can return the original file when it is the preferred result; in that case its original metadata remains.
Tool favorites and recent-tool identifiers can be remembered in browser storage. Saved workflows store supported settings, not file contents. These records are separate from server processing jobs and are not removed by the server file-expiry task.
Passing a selected file from the homepage to a tool can temporarily store a copy in this browser using IndexedDB. The handoff expires after five minutes and the destination removes it when reading it. Expired entries are pruned when another handoff is prepared. Expiry makes the handoff unusable; it is not a timed erasure of all browser storage.
When an image conversion uploads a file
Image Converter checks the input format, output format and available browser encoder. Formats such as HEIC, PSD and TIFF use the server conversion path. A browser-compatible format can also use that path if the requested encoder is unavailable.
Server conversion copies the upload into a temporary private workspace, runs the conversion, reads the generated bytes and returns them in the response. It does not create a queued PDF job or an account download-history entry for that conversion.
Conversion cleanup is attempted in both the success and failure paths. An interrupted process or filesystem error can prevent cleanup from completing, so this is not a guarantee that every temporary copy disappears at an exact instant. This request-based cleanup is different from the PDF expiry windows below.
What a queued PDF job stores
The listed PDF tools upload their inputs and generate their finished outputs on the server. Local PDF previews do not mean the finished PDF is generated locally. Jobs can wait in a queue before a worker processes them.
Inputs and outputs use the configured PDF storage disk. Its default private location is outside the public web directory. File records include the original filename, MIME type, byte size and checksum; the job records its owner, selected tool, status, timestamps and processing settings.
Job pages and downloads check for the matching signed-in account or guest identity. A guest cookie is used to recognise the guest owner, so clearing it or switching browsers can prevent access to an earlier guest job. A copied result-page address alone is not sufficient authorisation.
Expiry for queued inputs and outputs
The clock starts when the job is created, during the upload workflow. It is not restarted when processing finishes or when you download the result. The same job expiry applies to its stored inputs and outputs.
- Guest job
- 5 minutes from job creation
- Standard account job
- 2 hours from job creation
The expiry assigned when your job is created stays with that job. Changing account settings later does not extend an existing job's expiry.
The cleanup task is scheduled every minute. It targets expired completed, failed, refunded and cancelled jobs, deleting their job file directory and job record. Queued and running jobs are skipped.
Deletion depends on the scheduler running and storage deletion succeeding. Expiry is therefore not a guarantee of deletion at an exact second. Download finished results promptly, especially for guest jobs whose processing time can consume much of the short window.
Closing the page does not itself prove that a server upload has been deleted. Files already downloaded to your device are your own copies and are not removed by server cleanup.
Processing records and logs
Application errors can be reported to the configured logging system. A queued job can also record a processing error in its metadata. File deletion is separate from account, consent and credit records.
File expiry does not define a retention period for hosting access logs. The cleanup described here targets job files and job records; it is not a promise that all operational records are erased on the same schedule.
Analytics and cookie choices
Built-in optional analytics and advertising integrations are activated according to your cookie consent choices. Necessary session and guest-ownership cookies support access to server jobs. Cookie Settings lets you change optional choices.
The built-in image-tool analytics events accept tool and format identifiers, batch or duration buckets, and result codes. Their allowed payload fields do not include filenames, file contents, or document text.
When an optional provider has already received data while consent was active, changing your choices does not itself erase that earlier data. The privacy and cookie policies explain the wider account and consent rules.