Converters
Change a file’s format or size, or a length’s unit, without anything leaving your device.
All 14 converters
Every one runs in your browser. Nothing is uploaded and nothing is metered.
Image converter
Convert and shrink as many images as you like, without an upload.
Drop your images →
Image compressor
Make a PNG smaller without changing a pixel, and a JPEG smaller than your browser can.
Drop your images →
Image editor
Crop, turn, flip and resize in one pass — with a resampler that keeps the detail.
Drop an image →
Pixel converter
Pixels to inches, cm, pt, rem and em, for CSS, for print, or measured on your screen.
Type a size →
SVG optimiser
Shrink an SVG, and see what each risky setting costs before you use it.
Paste your SVG →
Data URI converter
Inline a file as base64 — and find out whether you should.
Drop a file →
GIF maker
Images into an animated GIF, with the file size shown before you commit.
Add your frames →
Image enlarger
Lanczos resampling, shown beside your browser’s own scaler so you can judge it.
Drop an image →
SVG to PNG
PNG, JPEG or WebP at an exact or print size, after a check for fonts and files that would go missing.
Drop your SVGs →
PNG to SVG
Trace a logo or drawing to SVG, with its size, path count and error measured.
Drop a PNG or JPG →
Code to image
Code as a sharp SVG or PNG, every colour contrast-checked, with alt text written.
Paste your code →
Resize image
Any number of photos to pixels, a long side, a print size or a file size — upright, with true colours.
Choose images →
Social media image sizes
One photo to every platform’s size, each from the platform’s own page, checked against its upload limit.
Choose an image →
Screenshot beautifier
Frame a screenshot on a background, kept pixel for pixel, with private details covered for good.
Choose a screenshot →
What file converters are
Tools that change a file from one format to another. The distinction that matters is where the work happens: an uploading converter sends your file to a machine you do not control and meters what it gives back, while a client-side one runs in your browser and cannot meter anything.
Format conversion that runs on your machine. No upload means no queue, no daily limit, no account, and no copy of your file on someone else’s disk.
The trade is that some conversions genuinely cannot be done this way. Those are named on each page rather than faked.
The limit nobody else removes
"Nothing is uploaded" has stopped being a differentiator for image tools — most of the good ones run locally now. What none of them removed is the file count. Squoosh, the reference implementation of the idea, still handles one image at a time. Caesium caps a session at ten. TinyPNG’s web tool stops at twenty, because behind it is a server somebody pays for.
There is no server in this path, so the cap has no reason to exist. The honest framing is not "no limits" but your device’s limits rather than ours — which is also why images are processed one after another instead of all at once. Decoding several large photographs simultaneously is the fastest way to exhaust a phone’s memory and lose the tab.
What makes these converters different
Batches with no ceiling
There is no server time to ration, so nothing is rationed. Files run one after another rather than in parallel, because that is what stops a phone running out of memory halfway through a folder.
Squoosh has no batch mode at all; Caesium caps a session at ten files and TinyPNG’s web tool at twenty.
Optimising is not the same as re-encoding
Most browser tools decode your file onto a canvas and ask the canvas to write it back out. That is the right trade for changing a format and the wrong one for making a file smaller: a general-purpose encoder in a hurry makes very different choices from one whose entire job is to find the smallest legal encoding of the same pixels.
Measured here: a 21,493-byte flat interface graphic came back out of a canvas PNG encode at 38,905 bytes, 81% larger. The same source through oxipng produced 3,350 bytes with every pixel identical.
A quality number is one encoder’s private dial
Two encoders set to the same quality value have not discarded the same amount of information, so comparing them at the same number compares nothing. What you get instead is the two images at the same size with the real byte figure under each.
On identical pixels, MozJPEG at quality 75 produced 113,935 bytes against Chromium’s 139,476 — 18% smaller — and at quality 92 produced 188,448 against 176,567, 7% larger.
The canvas ceiling is handled rather than hit
Past the browser’s canvas limit there is no error and no warning: you get a file of the right dimensions containing nothing. Every allocation is clamped first, including the intermediate canvases, and the readout states the size you actually got.
Canvas dimensions are capped near 8192 pixels a side and about 16 megapixels in total on iOS before 2024.
How to do it
The order that works, and why each step changes the answer.
Decide whether you want a different format or a smaller file
They are different jobs with different tools. Converting a WebP to PNG makes it bigger; compressing a PNG does not change what it is. Choosing the wrong one is the most common reason a result disappoints.
Do the lossless pass first
PNG, GIF and BMP have a route that changes no pixel values at all. Run it before you consider throwing anything away: it is free, and it tells you how much slack the file had.
Judge a lossy setting by the picture
Look at the two images side by side at the same size and read the bytes underneath. Do not carry a quality number over from another tool — it does not mean the same thing there.
Resize before you re-encode
Halving the width quarters the area, which is almost always a larger saving than any quality setting, and it costs nothing if the image was oversized for its slot to begin with.
Look at the files that came out bigger
Some will: a JPEG already saved at high quality, a PNG already optimised, a small icon where format overhead dominates. Keep the originals for those. A tool that only ever reports savings is not measuring anything.
Worked examples
Real inputs, real numbers. Pick one.
A flat interface graphic, three ways
You give it
A 21,493-byte PNG of a flat interface graphic.
You get
Through a canvas re-encode: 38,905 bytes, 81% larger than the source. Through oxipng: 3,350 bytes — 6.4 times smaller than the source and 91% smaller than the canvas output, with every channel of every pixel unchanged.
The same JPEG through two encoders at the same dial
You give it
One source image, MozJPEG and Chromium’s canvas encoder, at quality 75 and then at 92.
You get
At 75: 113,935 bytes against 139,476, an 18% win. At 92: 188,448 against 176,567, a 7% loss. Same image, same number, opposite verdict.
Inlining a small icon
You give it
A 3,072-byte SVG as a base64 data URI.
You get
Base64 stores three bytes as four characters, so the payload is exactly 4,096 characters — a fixed 33% inflation, plus the loss of caching, srcset and lazy loading. Below about 4 KB that is usually worth one fewer request; above it, it is not.
Which converter do you need?
Start from the job, not the tool name.
You have a folder of images to shrink
Image converter
Unlimited batch with a per-file size delta, including when a conversion made a file larger.
You want a PNG smaller with nothing changed
Image compressor
oxipng rewrites how the file is stored without touching a pixel value, which a canvas round-trip cannot do.
You are shipping an SVG
SVG optimiser
Every setting that can break the file says what it costs, and a side-by-side preview shows whether it did.
You have a logo as a PNG and need it as a vector
PNG to SVG
It traces in your browser, locks the output to exact hex colours, and shows the bytes, path count and per-pixel error of every result, with a warning when the image is a photo.
You need an SVG as a PNG, for a screen or for print
SVG to PNG
It names the web fonts and linked images a browser would drop, embeds them if you drop the files in, and writes the ppi into the PNG.
You are putting code on a slide or in a post
Code to image
An SVG of real, selectable text or a PNG at exact 2× or 3×, with every colour measured against its background, failing ones lifted with the hue kept, and alt text written.
You need many photos at one size, a print size or under a KB limit
Resize image
Pixels, longest side, percent or centimetres at a ppi it writes into the file; portrait phone photos come out upright and in true colour, and each file can be held under a byte limit.
You need one photo at every social platform’s size
Social media image sizes
Each size is taken from the platform’s own page and dated, cropped around one focal point, and checked against the upload limit.
You are posting a screenshot of your product
Screenshot beautifier
A browser or device frame on a gradient, with the screenshot copied pixel for pixel at the density it was taken at, private details covered so they cannot be unblurred, and no metadata in the file.
You need to crop, turn and resize the same picture
Image editor
All four transforms in one pass, so the image is not re-encoded three times on the way through.
You are inlining a small asset
Data URI converter
It gives the encoded size and a verdict on whether inlining is the right call at that size.
You need a size in another unit
Pixel converter
Pixels to inches, centimetres, points, rem and em, and it asks whether the pixels are for CSS, for print or for this screen, because the answer differs.
Where the limits come from
| Aspect | dsyn | An uploading converter |
|---|---|---|
| Files per batch | Unlimited — there is nothing to meter | Typically 10 to 25 |
| File retention | Never received | Commonly deleted after 1–2 hours |
| Account | None | Often required past a daily cap |
| Works offline | Yes — disconnect and it keeps running | No |
| When a file gets bigger | Reported with a plus sign | Not shown |
| Metadata | EXIF and GPS removed by re-encoding | Varies, rarely stated |
The figures behind that
Squoosh, the reference client-side compressor, has no batch mode at all; Caesium caps a session at ten files and TinyPNG’s web tool at twenty.
A 21,493-byte flat graphic came out of a canvas PNG encode at 38,905 bytes — 81% larger — and out of oxipng at 3,350 bytes, losslessly.
No browser can encode AVIF from a canvas, which is why it is not offered here — decode support is widely available and frequently confused with encode.
Tracing a photograph makes it bigger, not smaller: a 39,044-byte WebP render traced to a 228,206-byte SVG, 5.8 times the size, with 636 paths (measured October 2026).
Canvas dimensions are capped near 8192 pixels a side and about 16 megapixels in total on iOS before 2024; exceeding it returns a blank image rather than an error.
Neither Chromium nor WebKit writes a resolution into the PNG it encodes from a canvas (measured October 2026), so a 300 ppi export opens in Photoshop at 72 unless the converter adds the pHYs chunk itself.
Of the 65 syntax themes that ship with the shiki highlighter, 56 set at least one token colour under 4.5:1 on their own background, and 49 fail on the comment colour (measured October 2026).
A Mac writes 144 ppi into a Retina screenshot, so a 1920 × 1200 capture is a 960 × 600 window at 2×; exported at 2×, it needs no scaling at all, yet shots.so’s “1x” export of its default layout was 1920 × 1440 whatever was placed in it (measured October 2026).
Keep exploring
Reference
WebP to PNG
Turn WebP into PNG when something downstream refuses it.
Reference
WebP to JPG
WebP to JPEG, with the transparency question answered.
Reference
JFIF to PNG
JFIF is a JPEG with a different extension. Here is the honest version.
Reference
PNG to JPG
PNG to JPEG for photographs — and when not to.
Reference
PNG to WebP
The conversion that actually makes files smaller.
Reference
Pixels to inches
Pixels to inches and back, for CSS, for print, or as measured on your screen.
Reference
Pixels to centimetres
Pixels to centimetres and millimetres, and back, with A-series paper in whole pixels.
Reference
Pixels to points
Pixels to points and back: move a type size from a design file to a document.
Reference
Pixels to rem
Pixels to rem and back, at your real root size, not just the assumed 16.
Reference
Pixels to em
Pixels to em and back for a given parent size, with the compounding shown.
9 tools
Colour
Check it, fix it, extract it, turn it into a system.
4 tools
CSS
Gradients and surfaces as CSS you paste, measured as they will paint.
3 tools
Typography
Pairing, scale, readability and font identification — measured the same way.
3 tools
Branding
Marks, codes and sheets — the things that carry the brand.
6 tools
Writing
Resumes, cover letters, word counts and interface copy, held to the same standard as the pixels.
15 tools
PDF
Merge, split, protect and convert — none of it uploaded.
3 tools
Video & audio
Trim, extract and convert — decoded by your own browser, not a server.