Any website · free · runs in your browser, your picture never leaves your device
Make your website's pictures load fast.
Big pictures are the usual reason a page feels slow — and slow pages lose visitors and rank lower on Google. Drop in a logo or a photo and get it back far smaller, looking the same, ready for your site.
Free · no account · nothing uploaded · also an API and an MCP server for developers · See before and after
The same web page, measured by Google's page-speed test (Lighthouse 13.6.0) · 2026-11-09
66Before
→
100After
Google speed score on a phone · 100 is best
Time until the main picture appears
5.6 s → 1.2 s
Picture size a phone downloads
942 KB → 28 KB
Page jumping while it loads (0 = none)
0.258 → 0.000
Check it yourself on Google PageSpeed Insights: before · after
Why it matters
A slow page costs you visitors. Pictures are usually why.
Visitors leave pages that take more than a few seconds, and Google uses page speed when it ranks results. So we built one shop page two ways — the photo as it came out of the camera, and the file this tool produced — and measured both with Google's page-speed test, Lighthouse: speed score 66 → 100 on a phone, main picture visible after 5.6 s → 1.2 s, picture download 942 KB → 28 KB.
Lighthouse 13.6.0, measured 2026-11-09, same page with the main picture served two ways
On a phone, slow connection
Typical export
With image-optimizer
Google speed score (100 is best)
66
100
Time until the main picture appears
5.6 s
1.2 s
Page jumping while it loads (0 is none)
0.258
0.000
Picture size the phone downloads
942 KB
28 KB
Time to download that picture on a slow connection · share of Google's 2.5 s target
5.0 s · 199 %
293 ms · 12 %
On a desktop computer: score · time to main picture
99 · 1.0 s
100 · 404 ms
Picture size on desktop
942 KB
271 KB
For the technically minded: Lighthouse 13.6.0 on 2026-11-09, mobile emulation with simulated Slow 4G, light scheme; all eight runs (mobile/desktop × light/dark) are tabled on the demo page. Same page, same photo; only the image code differs: before · after. Check it yourself on Google PageSpeed Insights: before · after.
Every "on a slow phone connection" line below uses the same test profile Google uses for phones (1.6 Mbps, 150 ms delay). It is the time for that one picture, not the whole page. Method and caveats: AD_006.
Before and after
Real pictures, shown exactly as the tool returned them.
Left is the original, right is what you get back. Zoom in: logos stay perfectly sharp at any size because they come back as drawings (SVG); photos come back in newer formats (AVIF, with WebP and JPEG as fallbacks) that every modern browser shows.
before · PNG 16 KBafter · SVG 662 B
logo24× smaller
SVG · 1.5 KB raw, 662 B compressed · 1 path · PSNR 30 dB
On a slow phone connection: loads in ≈ 230 ms → 153 ms · saves ≈ 77 ms every time someone views it
simple-icons · CC0
before · PNG 11 KBafter · SVG 558 B
logo20× smaller
SVG · 1.1 KB raw, 558 B compressed · 5 paths · PSNR 29 dB
On a slow phone connection: loads in ≈ 207 ms → 3 ms · saves ≈ 204 ms every time someone views it
On a slow phone connection: loads in ≈ 398 ms → 185 ms · saves ≈ 213 ms every time someone views it
NASA PIA18164 · public domain
Sizes are what a visitor actually downloads (SVG after compression, AVIF and WebP as encoded). "Looks the same" is checked by comparing the result with the original pixel by pixel (PSNR, in decibels — higher is closer). Pictures under 1.5 KB are written straight into the page and need no download at all.
How it works
It tries both ways and keeps the smaller one that still looks right.
Logos and icons
Logos become drawings that stay sharp at any size.
Redrawn as shapes. A logo becomes a handful of shapes (an SVG), usually under 2 KB — 3–8× smaller than the best photo format and crisp on any screen. The tracer is VTracer.
Cleaned up. Needless decimals and editor leftovers are stripped out (SVGO), so nothing is downloaded that nobody sees.
Tiny ones go straight into the page. Under 1.5 KB the drawing is written into the page itself: no separate download at all.
github-mono.png 512×512 15.6 KB colours=2 top16=100 % alpha
→ SVG: 8.5× smaller than AVIF and scales to any DPI
output bytes compressed PSNR SSIM
svg (mono) 1.1 KB 470 B br 31 dB 0.985
avif q45 5.1 KB 51 dB 1.000
webp q75 5.5 KB 46 dB 1.000
Photos
Photos get the newest formats, with a safety net.
It can tell a photo from a logo. A quick look at the colours (how many, how evenly spread) decides which route to take before anything heavy runs.
AVIF first, WebP second, JPEG last. About 97 % of browsers show AVIF at roughly a third of the JPEG size; the rest fall back automatically, so nobody ever sees a broken picture.
Checked against the original. Every result is compared with the original pixel by pixel (PSNR, SSIM). A version that does not look right loses, even when it is smaller.
Copy one snippet: the page stops jumping and the main picture shows up first.
A size on every picture, so the page does not shift around while it loads.
The main picture loads first; everything further down waits until the visitor scrolls to it.
Phone-sized versions, so a phone downloads a 20–30 KB file instead of the 270 KB desktop one — see the measured demo page.
Favicons too. One click builds every icon your site, phones and home screens need, plus the lines to paste into the page head.
Using a site builder such as Squarespace, Wix or WordPress? Just upload the smaller file; the builder writes the code for you.
<!-- flat art: one request, any DPI -->
<img src="logo.svg" width="512" height="512" alt="…"
fetchpriority="high" decoding="async">
<!-- photo: modern first, fallback last -->
<picture>
<source type="image/avif" srcset="hero.avif">
<source type="image/webp" srcset="hero.webp">
<img src="hero.jpg" width="640" height="436" alt="…"
loading="lazy" decoding="async">
</picture>
In your browser
Three steps, nothing uploaded.
01
Drop
Drag a PNG, JPEG, WebP or GIF onto the tool, or paste it. Everything runs on your own device; the picture never leaves your computer.
02
Compare
See the original and the smaller versions side by side, with their sizes and a "looks the same" check. Zoom in as far as you like.
03
Use
Download the smaller file and upload it to your site — or copy the code if you build pages yourself. Developers and AI agents can call the API or the MCP server instead.
For developers and AI agents
The same engine, three ways in.
Everything on this page runs the same code, so what you see in the browser is exactly what your build or your agent gets.
Browser
Private by construction: decoding, tracing and encoding happen in your tab. No size limit beyond your device.
POST /api/v1/vectorize returns the SVG; /optimize returns the whole decision (?format=svg|avif|webp for one file, ?widths=auto for a srcset); /favicons the icon set. Inputs up to 4.5 MB; contract at /api/v1/openapi.json.
MCP server
claude mcp add --transport http \
image-optimizer \
https://imageoptimizer.co/mcp
Agents get the same operations as tools from the keyless MCP server: image_audit, image_analyze, image_vectorize, image_optimize, image_favicons. Skill: SKILL.md.
FAQ
Questions, answered.
What is a Lighthouse score?
Google's free test of how fast and usable a web page is, scored 0 to 100; 90 and above counts as good. It powers PageSpeed Insights and feeds Google's ranking signals. Oversized pictures are the most common reason a page scores badly.
Do I need to be a developer?
No. Drop a picture in, download the smaller one, upload it to your site as you did the original. The code snippets are for people who edit HTML themselves.
Will my picture look worse?
It should not. Every result is compared with the original pixel by pixel; a version that does not look right loses even when it is smaller. You see both side by side, zoomable, before you download.
Is anything uploaded?
Not from the browser tool: the picture never leaves your device. "Check my website" and the developer API are the exceptions by design — you send them an address or a file — and they keep nothing.
What does "Check my website" do with my address?
It fetches the public page you name and its pictures (up to 20), measures them, and shows which ones slow the page and what each would become — an estimate until you press Shrink. Nothing is stored; the address is not logged.
Why do some pictures come back as AVIF instead of SVG?
Drawings (SVG) win for logos, icons and flat art. Photos, gradients and soft shadows do not trace well — a traced photo is 60–80 KB and still looks wrong, a 7 KB AVIF looks right — so those get the photo formats.
Which browsers can show AVIF?
About 97 % (Chrome 85+, Firefox 93+, Safari 16.4+, Edge 121+). The code lists WebP and then JPEG or PNG as fallbacks, so the other 3 % see the picture too.
I already have an SVG of my logo. Should I still use this?
Use yours: a hand-made SVG is about half the size of the best trace. This tool is for when only a PNG or JPEG exists, or the picture was never a drawing.
Can I use this commercially, and is there a paid plan?
Yes. The browser tool is free for any site, commercial included; everything that ships is permissively licensed. The hosted API and MCP endpoint are a free, keyless research service today with a shared fair-use limit and no SLA. A metered plan with API keys is planned, not yet available.
What runs underneath, and where do the numbers come from?
Open-source engines with permissive licences: VTracer, SVGO, the jSquash encoders, sharp. The settings come from a benchmark of over 7,000 conversions on freely licensed logos, flat art and NASA photos, measuring size, time and closeness to the original.
Make your website's pictures load fast.
Drop in a logo or a photo; the smaller version and the code are ready in seconds.