Format guide
Which image formats can a browser watermark remover open?
JPEG, PNG, WebP, and AVIF open reliably. BMP opens on Chromium browsers. HEIC and HEIF are the formats that fail: in a test on Chrome 153 and Edge 153 for Windows, a valid HEIC file was rejected at the decode step, and the browser-support data behind caniuse.com records no version of Chrome, Edge, or Firefox that supports HEIC at all. Safari is the exception, and it only began rendering HEIC in version 17.
The reason is structural rather than a gap in any particular tool. A browser-based remover has no server to fall back on, so the file opens only if your own browser ships a decoder for it. That single fact explains every row in the matrix below, including the awkward one: a file picker that happily lets you select a HEIC photo that the page then cannot open.
What each tool on this site says it accepts
There are two separate engines here, and their file inputs are not identical.
- Home page and text removal page. These share one script,
app.js. Its file input declaresimage/jpeg, image/png, image/webp, image/heic, image/heifplus the extensions.jpg .jpeg .png .webp .heic .heif. - Logo removal page. This uses
logo-removal.js, whose input addsimage/bmpandimage/avifplus the.bmpand.avifextensions.
So BMP and AVIF are advertised only on the logo removal page. The home page and the text removal page do not list them, and the home page copy says JPG, JPEG, PNG, WEBP, or HEIC.
An accept attribute filters the file dialog; it is not a security check, and you can switch the dialog to all files and pick anything. What actually decides is one test in each script. app.js rejects a file only when its MIME type does not start with image/ and its name does not match /\.(jpe?g|png|webp|heic|heif)$/i; logo-removal.js runs the same test with bmp and avif added. A BMP or AVIF file normally arrives as image/bmp or image/avif, so it passes that test even on a page whose dialog did not list it. The accept list shapes the dialog; the browser decoder decides the outcome.
One separate limit is worth knowing while you read the matrix, because phone photos in these formats are usually large. Each engine scales an oversized image before editing: app.js caps the editing canvas at 1800 px on the longest side, and logo-removal.js caps it at 2400 px. That is a size behaviour, not a format one.
Measured: what actually opened
Each file below was served over local HTTP with its real MIME type and loaded twice, once through an <img> element and once through createImageBitmap().
| Format | Test file | MIME | <img> | createImageBitmap |
|---|---|---|---|---|
| JPEG | 640 x 480, 39 KB | image/jpeg | Opened | Opened |
| PNG | 640 x 480, 3 KB | image/png | Opened | Opened |
| WEBP | 640 x 480, 5 KB | image/webp | Opened | Opened |
| BMP | 640 x 480, 922 KB | image/bmp | Opened | Opened |
| AVIF | 722 x 1024, 85 KB | image/avif | Opened | Opened |
| HEIC | 718 KB | image/heic | Rejected | Rejected |
When a file reaches that rejected state, each script reports it in its own words. app.js shows "This image could not be opened in this browser. Try JPG, PNG, or WEBP." The logo script is more specific: "This browser cannot open that image locally. Try JPG, PNG, WEBP, BMP, or AVIF; HEIC and HEIF depend on browser support."
Two honest limits on that table. It is one file per format, not a suite. And HEIC is a container rather than a single codec, so a different file that carries a different codec inside the same container can behave differently even on a browser that supports HEIC in general.
Why the picker accepts a file the page cannot open
Opening an image in a browser tool happens in two independent stages, and they fail in different ways.
- The dialog stage. The
acceptattribute decides what the picker shows first. HEIC is listed on both pages here, so it appears as a selectable file. - The gate stage. The script checks the MIME type or the extension. A HEIC file reported as
image/heicpasses this check easily, and so does a HEIC file with no MIME type at all, because the name matches the extension pattern. - The decode stage. Only now does the browser try to turn bytes into pixels. This is the stage that fails on HEIC in Chrome, Edge, and Firefox, and it is the stage that produces the error text above.
That ordering is the whole explanation. Nothing in the first two stages proves the third will succeed, and no site can change the third stage, because the decoder belongs to the browser.
Support in browsers we could not test here
The measured table covers two Chromium builds. For everything else, the figures below come from caniuse-lite 1.0.30001810, the dataset behind caniuse.com, read on 22 September 2026. Each value is the earliest version marked as fully supported.
| Browser | AVIF | HEIC / HEIF | WebP |
|---|---|---|---|
| Chrome | 85 and later | Not supported | 32 and later |
| Edge | 121 and later | Not supported | 18 and later |
| Firefox | 93 and later | Not supported | 65 and later |
| Safari on macOS | 16.4 and later (partial in 16.1 to 16.3) | 17.0 and later | 14 and later |
| Safari on iOS | 16 and later | 17.0 and later | 14 and later |
The asymmetry with HEIC is worth pausing on. Apple's own format reached Safari's image rendering later than AVIF did on macOS, in version 17 rather than 16.4. The operating system has been able to open HEIC files for years; the browser engine caught up separately, because a browser does not automatically inherit every decoder the OS has. That is also why you cannot fix a HEIC failure by installing a codec and expecting the browser to notice.
BMP is not tracked as a browser-support feature, so there is no dataset to quote. It decoded in both Chromium builds tested here. Firefox and Safari were not tested, so treat those two as untested rather than confirmed.
Decoding and encoding are different capabilities
A browser that opens a format cannot necessarily write it. Requesting an AVIF blob from a canvas in Chrome 153 did not fail and did not produce an error: it returned a blob typed image/png, 283 bytes, exactly the same size as the PNG produced from the same canvas. The request was silently answered with a PNG instead.
That distinction is why output choice is narrower than input choice. The home page and the text page always write PNG. The logo page offers PNG, JPEG, and WebP, the three formats a Chromium canvas actually produced in the test above.
What to do when a file will not open
- Read the message once. "Could not be opened in this browser" is a decode failure, not a size or permission problem. Retrying will not change it.
- Convert HEIC or HEIF once, outside the browser. Open the photo in your system viewer and export a copy as JPEG or PNG. On Windows that is the Photos app, which opens HEIC when the system has the HEIF Image Extensions installed. On macOS, use Preview and export.
- Use PNG if the image has flat colour or text. PNG is lossless, so converting does not add compression artefacts around the area you are about to repair. JPEG is fine for photographs and much smaller.
- Check the pixel size if the image is from a phone camera. Anything larger than the cap for the page you are on is scaled before editing: 1800 px on the longest side on the home and text pages, 2400 px on the logo page.
- Switch browsers only for AVIF on older Safari. Safari 16.1 to 16.3 had partial AVIF support. Every other gap in the matrix above is a decoder that is simply absent, which no browser setting turns on.
None of these formats require an upload. Converting on your own machine keeps the file local, which is the property the upload verification guide describes how to test.
Frequently asked questions
Does the home page accept BMP or AVIF?
Not in the file dialog. Those two types are listed only on the logo removal page. A BMP or AVIF file you force-select still passes the script's MIME check and, based on the test above, opens in Chrome and Edge.
Why does HEIC work on my iPhone but not on my Windows PC?
Safari on iOS has rendered HEIC since version 17. Chrome, Edge, and Firefox have no HEIC support in any version, according to the caniuse dataset. Same file, two different decoders.
Is AVIF safe to use everywhere?
Chrome 85 and later, Edge 121 and later, Firefox 93 and later, Safari 16.4 and later, and iOS Safari 16 and later. Safari 16.1 to 16.3 is marked partial, so a file may fail or render incorrectly on those three versions.
Can the site convert the file for me?
No. Processing happens in your browser, which is why no image is uploaded, and it also means there is no server-side decoder to fall back on when your browser lacks one.
What about GIF, TIFF, or camera RAW?
None of them appear in either accept list. Chromium decodes GIF but not TIFF, and it does not decode camera RAW formats. Convert to PNG or JPEG first.
Does the input format affect the download format?
No. The home page and the text page always produce a PNG. The logo page lets you choose PNG, JPEG, or WebP regardless of what you opened.
Will a huge AVIF or HEIC photo be edited at full size?
No. The home and text pages scale to 1800 px on the longest side, and the logo page scales to 2400 px. The scale happens before editing, so the download is smaller than the original.