SVG is the right format for icons, logos, and any vector art that needs to scale infinitely. Browsers love SVG — small file size, perfect crispness at any zoom, CSS-themable. But not every platform accepts SVG. Instagram, X/Twitter, LinkedIn, and TikTok all reject SVG uploads. Most email clients won’t render embedded SVG. App store icon submissions require PNG. The standard fallback is to convert SVG to PNG at the right resolution before upload.
Our SVG to PNG converter handles single SVGs and batch conversions, with custom dimension control and retina export modes. The conversion happens via the browser’s canvas API; your SVG never uploads. This guide explains the right output dimensions for common use cases, the transparency handling, and the gotchas with embedded fonts and external references in SVG files.
Standard PNG export sizes for common use cases
| Use case | Recommended PNG size |
|---|---|
| Favicon | 32×32, 192×192, 512×512 (multiple sizes for different contexts) |
| App icon (iOS/Android) | 1024×1024 master, downsampled to platform requirements |
| Social media profile picture | 400×400 (universally supported) |
| Logo on website (retina) | 2× the display size (e.g., 600×200 PNG for a 300×100 logo slot) |
| Email signature | 300×100 max (kept under 100 KB to avoid clipping) |
| Print materials | 300 DPI at intended print dimensions (4 in × 4 in = 1200×1200) |
How to use the browser SVG to PNG converter
- Open the SVG to PNG converter
- Drop your .svg file or paste SVG markup directly
- Set the output width and height (preserves aspect ratio by default)
- Choose background: transparent (default), white, or custom colour
- Optional: tick 1x / 2x / 3x to export multiple retina variants in one go
- Click Download. Single file or ZIP for multi-variant exports
SVG features that may not survive conversion
- External font references. If your SVG uses
font-family: "Custom Font"and the font isn’t available, the browser substitutes a default. Either embed font data in the SVG or use<text>as outlined paths. - External image references. SVGs that reference external images via
<image href="...">may produce CORS errors during canvas rasterisation. Embed images as Base64 data URIs instead. - Filter effects. Some SVG filters (Gaussian blur, displacement maps) render slightly differently across browsers. The PNG result captures whatever the current browser produces.
- SVG animations. SMIL or CSS animations are captured at the current frame. To export a specific animation state, pause the animation before triggering export.
Converting in code
// Browser (canvas)
const img = new Image();
img.src = "data:image/svg+xml;utf8," + encodeURIComponent(svgString);
img.onload = () => {
const canvas = document.createElement("canvas");
canvas.width = 512; canvas.height = 512;
canvas.getContext("2d").drawImage(img, 0, 0, 512, 512);
canvas.toBlob(blob => downloadBlob(blob, "out.png"));
};
// Node.js (sharp — best quality)
import sharp from "sharp";
await sharp("logo.svg").resize(512, 512).png().toFile("logo.png");
// Python (cairosvg)
import cairosvg
cairosvg.svg2png(url="logo.svg", write_to="logo.png",
output_width=512, output_height=512)
// CLI (rsvg-convert)
rsvg-convert -w 512 -h 512 logo.svg -o logo.png
Common conversion mistakes
- Exporting at 1x for retina displays. A 300×100 logo at 1x looks blurry on retina. Always export at 2x or 3x and scale down via HTML width/height attributes.
- Forgetting transparency. Default canvas backgrounds are white in some libraries. Verify the PNG has the transparent background you expect.
- Tiny dimensions for app icons. Always start from a high-res master (1024×1024) and downsample to platform requirements. Upscaling small PNGs produces blurry icons.
- Skipping background colour for printing. Print processes don’t handle transparency well; export with explicit white background for print PNGs.
Frequently asked questions
Why convert SVG to PNG at all?
Many platforms reject SVG uploads — Instagram, X/Twitter, TikTok, LinkedIn for posts, most email clients, app stores. PNG is universally accepted. Convert when you need to upload your vector logo or icon to one of these platforms.
Will the PNG be as crisp as the SVG?
At the export resolution, yes. Below the export resolution, the browser interpolates which causes slight blur. Above, the PNG can’t add detail. Always export PNGs at 1x-3x the intended display size.
Does the converter preserve transparency?
Yes — by default the PNG has a transparent background. Toggle to add a solid colour (white is most common for print) when needed.
Can I batch convert multiple SVGs?
Yes — drop multiple SVG files. Each converts to PNG at your chosen dimensions. Result downloads as a ZIP of all PNGs.
Is my SVG uploaded?
No. The browser reads the SVG locally, rasterises on canvas, and offers PNG download. No network requests during conversion.
What’s the maximum SVG complexity the converter handles?
Limited by browser memory. Very complex SVGs (thousands of paths, large embedded images) may take 5-15 seconds to render. For production logos and icons, conversion is instant.
Related tools and guides
- SVG to PNG Converter
- Image Resizer
- Image Cropper
- Image to Base64 Converter
- SVG Blob Generator
- All image tools
