How it works
Everything happens inside your browser tab. This page explains how, what it is built on, and how you can verify it.
Conversion on your device
When you add a file, your browser reads it from your device into memory. Code that came with the page decodes the image or PDF, draws it, and encodes the result in the new format. The result is offered as a download straight from memory. At no point are the contents of your file sent to Convert In Place.
How to check that nothing is uploaded
- Open your browser developer tools (F12 on most computers) and choose the Network tab.
- Add a file to any converter and watch the list of requests.
- You will see the page load its own code files, and nothing that carries your file. For the image to text tool, the first run loads the recognition engine and language data from this same site. When a conversion has finished you will also see one small request to /api/hit: it contains only the tool name, the page language and a count, for example heic-to-jpg, en, 1. It is the anonymous usage counter described in the privacy policy, and it carries no file.
Open source libraries used
The converters are built on well known open source libraries, all served from this site rather than from a third party.
Reading and writing the common web formats (JPG, PNG, WebP, AVIF, BMP) is done by the browser itself; the WebP and AVIF libraries below are only a fallback for browsers that cannot do it.
The license texts and copyright notices of all components are in the license notices. The HEIC decoder is licensed under the LGPL 3.0 and used unmodified; it is a separate module, and the table points to its source code.
| Library | License | Used for |
|---|---|---|
| libheif-js (libheif) | LGPL 3.0 | Reads HEIC and HEIF photos; source at github.com/strukturag/libheif |
| UTIF.js | MIT | Reads TIFF images |
| jsPDF | MIT | Builds PDF files from images |
| pdf-lib (Cantoo fork) | MIT | Merges, splits and rotates PDF files without redrawing pages |
| PDF.js | Apache 2.0 | Reads PDF files and draws their pages |
| Tesseract.js with its WebAssembly core and language data | Apache 2.0 (language data MIT) | Recognizes text in images |
| fflate | MIT | Packs several results into a ZIP file |
| jSquash WebP | Apache 2.0 | Creates WebP files in browsers that cannot |
| jSquash AVIF (libavif) | Apache 2.0 (libavif BSD 2-Clause) | Reads AVIF images in browsers that cannot |
Limits you should know about
- Large files use your device memory. Phones manage less than computers, and a very large image or PDF may fail.
- Converting between lossy formats can reduce quality. Each page explains what to expect.
- Metadata such as location tags and camera details is not copied into converted images.
- Image to text recognizes English, Spanish, French and German, and accuracy depends on how clear the image is.
- PDF tools work on files of up to 500 pages each, cannot open PDFs protected by a password, and Compress PDF turns pages into pictures, so their text is no longer selectable.
Last reviewed October 2026.