Skip to content

SVG to ICO converter

SVG to ICO rasterizes vector art and stores one thumbnail-sized icon entry, so it is not yet a full multi-size favicon generator.

  • Converted with Image engine · nothing stored
  • Free: 5 conversions a day · 5 MB each
  • Higher limits →

From real runs

What you get — and what changes

  • Icon entries Changed

    The 320×180 SVG wrote a 13,874 byte ICO containing one 256×144 RGBA entry, not 16, 32, 48, and 256 sizes.

  • Aspect ratio Kept

    Our image engine thumbnailed the wide SVG to fit within 256 pixels, so the ICO entry stayed 16:9 rather than square.

  • Transparency Kept

    The ICO entry opened as RGBA, so transparent regions from the SVG raster survived the icon save.

  • Vector scalability Lost

    Once inside ICO, the SVG paths are just bitmap pixels at the single stored size.

  • Inline SVG style Kept

    Embedded style rules were applied before the icon was generated, matching the colors from the SVG preview run.

  • Small favicon sizes Lost

    Browsers or Windows cannot choose 16×16 or 32×32 renditions because this output did not include them.

Sample conversions

Wide SVG mark

Input
640 byte transparent SVG at 320×180 with a panel, circle, curve, and text.
Output
13,874 byte ICO with one 256×144 RGBA image. It was not a square favicon and did not include smaller entries.

Missing font SVG

Input
Same SVG with font-family set to a deliberately unavailable brand font.
Output
The text was already fallback-rendered before icon packaging, so fixing the ICO later would require returning to the SVG.

A real SVG → ICO run

We converted our SVG sample (389 B) with Image engine on 2026-10-20. It took 17 ms and produced a 5 KB ICO file, 14× larger than the input. The engine raised 1 warning, listed below.

Input · sample.svg · 389 B

SVG viewBox 0 0 320 200, 0 paths

viewBox
0 0 320 200
Paths
0

Output · sample.ico · 5 KB

256 × 160 px, 1 size: 256×160

Width
256
Height
160
Encoding
1 size: 256×160
  • Image metadata stripped from output.

Options and when to change them

width
Render the SVG to a square width before ICO output when the source viewBox is not already icon-shaped.
height
Set with width to force a square raster before the final max-256 thumbnail step.
fit
Use cover only when cropping wide art is better than a non-square icon entry.

Do it yourself

ImageMagick 7

bash
magick in.svg -background none -define icon:auto-resize=256,48,32,16 favicon.ico

This command creates the multi-size ICO that the current API output did not create in our test.

SVG to ICO by API or MCP

The HTTP API and the MCP server run the exact engine this page uses (Image engine); the response carries the same warnings the web converter shows. Check support first with GET /api/v1/pairs?from=svg&to=ico.

curl
curl -X POST https://filetypeconverters.com/api/v1/convert \
  -H "Authorization: Bearer $FTC_API_KEY" \
  -F "file=@input.svg" -F "from=svg" -F "to=ico" \
  -F 'options={"dpi":96}' \
  --output output.ico

Options this engine accepts for SVG → ICO

KeyApplies toTypeDefault
dpiReading SVGnumber96
widthWriting ICOnumber0
heightWriting ICOnumber0
fitWriting ICOcontain · cover · fillcontain
qualityWriting ICOnumber90
backgroundWriting ICOstring#ffffff
stripMetadataWriting ICObooleantrue
API reference

When this is the wrong conversion

  • Use /convert/svg-to-png and a dedicated favicon build step when you need 16, 32, 48, and 256 pixel entries.
  • Keep the SVG favicon for modern browsers if legacy ICO support is not needed.
  • Use square source art rather than a wide wordmark when the icon must fit browser tabs.

SVG to ICO questions

Does SVG to ICO create all favicon sizes?

No in the tested path. The output contained one 256×144 entry, so make a separate multi-size favicon if browser fallback sizes matter.

Why is my ICO not square?

The writer preserves the rendered aspect ratio while fitting inside 256 pixels. A wide SVG can therefore become a wide ICO entry.

Will transparency survive SVG to ICO?

Yes for the tested SVG. The output entry opened as RGBA, which kept transparent canvas pixels around the artwork.