Tools / Image / SVG to PNG
Client-side

SVG to PNG

Rasterize SVG files to sharp PNG images at the exact width and height you need, up to 6000 pixels per side, with a transparent or solid background and contain, cover or stretch fit, entirely in your browser.

What it does

  • Any output size up to 6000 x 6000 px
  • Contain, cover or stretch fit modes
  • Transparent or custom hex background
  • Batch convert many SVGs into one ZIP
  • Rendered with resvg, compiled to WebAssembly
  • No upload, runs offline in your browser

Drop files here or click to browse

SVG file

SVG is resolution-independent and ideal for logos, icons and illustrations, but many places only accept raster images: social networks, email clients, app store listings, slide software, document editors and most upload forms. Converting SVG to PNG gives you a fixed-size bitmap that displays the same everywhere. This converter renders the vector paths at the exact pixel size you choose, so a small icon can become a crisp 2000 pixel image without the blur you get from scaling up a small PNG.

How to convert SVG to PNG

  1. Drop one or several .svg files onto the tool.
  2. Width and height are filled in from the SVG's own dimensions (its width and height attributes or viewBox). Change them to the size you need.
  3. Pick a fit mode: Contain, Cover or Stretch.
  4. Set the background: transparent or a hex color like #FFFFFF.
  5. Click Convert to PNG, check the preview, and download the PNG (or a ZIP when you converted several files).

Choosing the output size

Because SVG is a vector format, the output size is a choice, not a limitation. A few practical guides:

  • Retina and high-DPI screens: render at 2x or 3x the display size. An icon shown at 64 px looks sharp on modern phones when exported at 128 or 192 px.
  • Social and Open Graph images: 1200 x 630 is the size most link previews use.
  • Favicon source: export a 512 x 512 PNG, then feed it to the favicon generator to get the ICO and every icon size.
  • Print or presentations: large exports (3000 px and more) keep logos sharp on projectors and in printed documents.

The maximum is 6000 pixels per side and 24 million pixels in total (for example 6000 x 4000). The tool checks this before rendering and tells you if a size is out of range.

Contain, cover or stretch

When the width and height you enter have a different aspect ratio than the SVG, the fit mode decides how the drawing is placed.

  • Contain (default): the whole drawing is scaled to fit and centered. The extra space is filled with the background, or left transparent. Nothing is cut off and nothing is distorted.
  • Cover: the drawing is scaled to fill the full canvas and centered, so parts that overflow are cropped. Useful for backgrounds and patterns that must fill a fixed banner size.
  • Stretch: width and height are scaled independently to fill the canvas exactly. Proportions change, so use it only when the SVG is meant to be distorted, such as simple shapes or bars.

If you keep the original aspect ratio, all three modes give the same result.

Transparent or solid background

By default the PNG keeps the SVG's transparency: anything not drawn stays fully transparent, which is what you want for a logo placed on a colored website or slide. Some destinations do not handle transparency well, for example certain email clients, or a dark-themed chat where a black logo disappears. Enter a six-digit hex color (#RRGGBB) to fill the background with a solid color before the drawing is rendered on top.

Converting many SVGs at once

Select a whole icon set and every file is rendered with the same width, height, fit and background. Each PNG keeps the name of its source file, and the results download together as svg-to-png.zip. If a file is not valid SVG, the others still convert and the failure is listed by name. Because one size applies to the whole batch, icons with different aspect ratios are best converted with Contain so none of them is cropped or distorted.

Rendering engine and known limits

The conversion uses resvg, an SVG renderer written in Rust that handles static vector SVG: paths, shapes, gradients, patterns, clipping, masks, filters, transforms and CSS styling. A few things behave differently from a web browser:

  • Text needs outlined fonts: the renderer runs inside the page without access to the fonts installed on your computer, so <text> elements may not appear. Convert text to outlines (paths) in your design tool before exporting the SVG; most logo files already are.
  • Embedded bitmaps are skipped: the converter renders vector content only. A PNG, JPEG, GIF or WebP placed inside the SVG (linked by URL or embedded as a data URI) does not appear in the output, so use it for true vector files such as logos, icons and illustrations.
  • No animation or scripts: animated SVGs are rendered as a single static frame and JavaScript inside the file is ignored.
  • PNG output only: to get a JPG or WebP, convert the PNG afterwards with the PNG to WebP converter or the general image converter.

Compared with Inkscape, ImageMagick or a browser screenshot

Inkscape's export dialog and command line (inkscape --export-type=png) give the same kind of result and also have access to your system fonts. ImageMagick depends on which SVG delegate it was built with, and output quality varies. Taking a screenshot of an SVG open in a browser ties you to your screen resolution. This tool sits in between: no installation, an exact pixel size, and batch output, with the font caveat above.

Your files are not uploaded

SVG files are text, and they often carry more than shapes: layer names, comments, editor metadata, sometimes the name of the client or project. The conversion runs entirely in your browser tab through Rust compiled to WebAssembly. The SVG is parsed and rendered locally, and no request sends it to a server. You can check this in the Network tab of your developer tools, or disconnect after the page loads and keep converting.

Frequently asked questions

How do I convert SVG to PNG with a transparent background?
Leave the background field set to transparent, which is the default. Areas the SVG does not paint stay transparent in the PNG.
Will the PNG be blurry?
No, as long as you choose a large enough size. The vector paths are rendered directly at the target resolution, so a 4000 px export is as sharp as a 400 px one.
What is the maximum size?
6000 pixels per side and 24 million pixels in total.
Why is the text missing from my PNG?
The renderer has no access to your installed fonts. Convert text to paths (often called "create outlines" or "object to path") in your design software and export the SVG again.
Can I get a JPG instead of a PNG?
Not directly. Convert to PNG here, then convert the PNG to JPG or WebP with the image converter.
Are my SVG files uploaded?
No. Everything runs locally in your browser. Nothing is sent to or stored on a server.