Convert ChatGPT / AI-generated images into clean and lean SVGs. Built for web, development and design workflows: optimize and compress SVGs, edit detected colors, assign CSS classes or variables, use currentColor, and batch-convert up to 100 images at once. Everything runs locally in your browser.
What real task does your product handle with GPT-6 Astra?
Maker
GPT-6 Astra helped build and polish VectorizeThis. VectorizeThis is also made to convert ChatGPT images to SVGs.
Report
Maker
📌
Hey Product Hunt
I’m Maxime, the developer behind VectorizeThis.
This started with a very specific problem.
I asked ChatGPT to come up with a new homepage design for me, and it did a pretty good job. It also created a bunch of custom icons that fit the design really well.
The problem: they were raster images.
I asked ChatGPT to recreate them at a higher resolution, but I still couldn’t use them the way I wanted. I wanted real SVGs that I could resize freely, recolor with CSS / use with `currentColor`, and keep lightweight.
So I tried the existing PNG → SVG tools.
Some did a good job on individual images, but the bulk converters I tested often produced poor traces. Others generated unnecessarily large SVGs, introduced strokes I didn’t want, or required a follow-up visit to SVGOMG before they were production ready. None added currentColor for me.
And I had a whole folder of icons to convert.
So I built VectorizeThis.
It runs entirely in your browser and turns PNG, JPG, WebP, and AVIF images into proper SVGs..
A few things I especially wanted for my own workflow:
• Convert up to 100 images at once
• Compare multiple tracing configurations to find the ideal settings for each image automatically
• Optimize/compress the resulting SVG
• Edit detected colors
• Replace a color with `currentColor`, or give colors CSS classes or variables
• Copy clean SVG markup directly into a project
There’s no account required, and the conversion itself happens locally in the browser.
If you try it, I’d especially love to know:
**What kind of image did you throw at it, and where did the result fall short?**
Those difficult examples are probably the most useful feedback I can get.
Thanks for checking it out!