SVG to JPG Converter
Drop SVG files, get JPG back — 100% in your browser. No uploads, no accounts, no limits. Batch convert, quality control, background picker.
100% in-browserNo uploadsFree · no accountBatch up to 20 filesQuality + background control
Most converters cap batch SVG conversion at one file or charge for it — this one converts up to 20 SVGs at once and hands them back as a single ZIP. JPG is lossy and has no transparency, so every output is flattened onto the background you pick.
Drop SVG files here
or — multiple files welcome
Up to 25 MB per file · up to 20 files per batch · your file data never leaves the device
No files yet. Your SVGs are sanitized and rendered on your device — scripts are stripped, external references are refused, and your file data never leaves the device. See the privacy panel below for how to verify that.
Privacy proof — verify it yourself
This converter runs entirely in your browser: your SVG is sanitized and rendered on a canvas on your device, then encoded as JPG — your file data never leaves the device. The only third-party requests on this page are the site's own analytics (Google Analytics and a Cloudflare beacon), which load when the page opens and never see your files.
Network requests observed during processing: 0 (0 — as it should be)
How to verify it yourself in DevTools
- Press F12 to open developer tools, then open the Network tab.
- Convert one or more SVG files on this page.
- You will see no new requests while converting — the counter above stays at 0. The only requests the page ever makes are the site's own analytics (Google Analytics and a Cloudflare beacon), which load once when the page opens, before you start converting.
- For the strongest check: load the page, then disconnect your internet (or tick Offline in the Network tab) and convert again — it still works.
What sanitization does to your SVG
Every file is cleaned before it is rendered, and the file card shows exactly what was removed:
- Stripped:
<script>blocks, embedded HTML (<foreignObject>), SMIL animation elements (a JPG is a still frame), event-handler attributes (onclick,onload, …), andDOCTYPEdeclarations (no external DTD or entity expansion). - Refused outright: any file that tries to load something from the network — external images, fonts, stylesheets or links (
http(s)://, protocol-relative//, externalurl()in styles) — and script-like references (javascript:,data:text/html, including entity- and percent-encoded smuggling attempts). - Allowed: same-document references (
url(#gradient),href="#id") and embeddeddata:image/payloads. - Rendering itself goes through the browser's image path, where SVG scripts cannot run and external loads are blocked by the browser — sanitization is the first line, not the only line.
How to convert SVG to JPG without uploading it
SVG is a vector format — infinitely scalable, tiny, and perfect for logos and icons — but plenty of places still need a JPG: an email signature, a marketplace listing, a form that only accepts JPG, a slide deck, a social-media post. The usual converters upload your file to a server, convert it there, and hand it back. That is slow, it leaks your artwork, and for client work it can breach confidentiality. This tool does the whole job in your browser:
- Drop your SVG files (or paste the markup). Up to 20 files per batch, 25 MB each.
- Pick a size. 1x keeps the SVG's own size; 2x doubles it for retina displays; 3x triples it for print. Or type exact pixels — the aspect ratio stays locked unless you unlock it.
- Pick a quality and a background. 85% is a good default. JPG has no transparency, so the image is flattened onto the background colour you choose — white by default.
- Download each JPG, or all of them at once as a ZIP.
Which size should you pick?
- Website logo / icon: 2x the displayed size (a 32 px slot wants a 64 px JPG).
- Social media / slides: custom size — 1080 px wide for a square post, 1920 px for a full slide.
- Print: 3x, or a custom width at 300 dpi (a 2-inch print needs 600 px).
Honest limitations
- JPG is lossy — every conversion discards some detail, and re-saving a JPG again loses more. Keep the original SVG as your master copy.
- JPG has no transparency — transparent areas are flattened onto the background colour you pick. If you need transparency kept, use SVG to PNG instead.
- A JPG is a raster image — unlike the vector it came from, it cannot be re-scaled losslessly later. Pick the size you need now.
- Text in SVGs renders with system fonts if the SVG's fonts are not installed on your device. A webfont the SVG expects is never downloaded (external loads are refused), so text falls back to an installed font. For pixel-perfect text, convert text to outlines before exporting.
- Animations become a still frame. SMIL animation is stripped and the static artwork is rendered.
- Very large outputs are capped at 16 megapixels (for example 4000×4000) and one side at 8000 px, so a 100000×100000 viewBox cannot crash the tab. The file card says when capping happened.
- SVGs without any size (no width, height, or viewBox) render at the browser default of 300×150 — set a size in the file or use custom dimensions.
- SVGs that load external files or run scripts are refused for safety — remove the external reference and try again.
- EXIF/metadata does not apply to SVG — SVGs carry no photo EXIF, and re-encoding a raster image drops metadata; there is nothing to preserve here.
- Compressed .svgz files are not supported — unzip them first.
Frequently asked questions
How can I convert SVG to JPG without uploading it anywhere?
Use a tool that processes files locally in your browser. This converter loads your SVG into your device's memory, sanitizes it, renders it onto a canvas with your browser's built-in SVG support, and encodes the result as JPG — all with JavaScript running on your machine. Your file data never leaves the device; the only third-party requests are the site's own analytics (Google Analytics and a Cloudflare beacon), which load when the page opens and never see your files. You can verify it by watching the Network tab in your browser's developer tools while it works — the live counter on this page shows the same number. The page keeps working with your internet disconnected after it loads.
What scale should I choose — 1x, 2x or 3x?
1x renders the JPG at the SVG's own size (its width/height, or its viewBox if it has no width/height). 2x doubles each side for retina and high-DPI screens — the usual choice for logos and icons on modern displays — and 3x triples it for print or large displays. If you need an exact pixel size, use the custom width/height fields instead; the aspect ratio is locked by default so nothing gets stretched. Outputs are capped at 16 megapixels (for example 4000x4000) so a huge viewBox cannot crash the tab.
Why does JPG need a background colour?
JPG has no transparency, so any see-through part of your SVG has to be filled with something. This converter flattens the image onto the background colour you pick — white by default, or black or any custom colour. If your SVG is fully opaque, the background never shows. If you need transparency kept, convert to PNG instead.
Does converting SVG to JPG lose quality?
Yes — JPG is lossy, so every conversion discards some image detail, and re-saving a JPG again loses more. At 85% quality most logos and illustrations look identical to the original; use 90-100% for images you will edit further, and keep the original SVG as your master copy. A JPG is also a raster image, so unlike the vector it came from it cannot be re-scaled losslessly later — pick the size you need now.
My SVG has no width or height — what size will the JPG be?
If the SVG has a viewBox, that is used as the base size (for example viewBox 0 0 100 50 gives a 100x50 JPG at 1x). If it has neither width, height nor viewBox, the browser default of 300x150 is used and the converter says so on the file card. In either case you can override the size with the custom width/height fields.
Is it safe to convert an SVG I downloaded from the internet?
SVG is XML and can carry scripts and external references, so this converter sanitizes every file before rendering: script blocks, embedded HTML (foreignObject), animation elements and event-handler attributes (onclick and friends) are stripped, and any file that tries to load something from the network — an external image, font, stylesheet or link — is refused outright. Rendering then happens through the browser's image path, where SVG scripts cannot run at all. The file card shows exactly what was removed.
Will the text in my SVG look the same in the JPG?
Text renders with the fonts available on your device. If the SVG names a font you have installed, it will match; if it relies on a webfont that would normally be downloaded, that font is not fetched (external loads are refused) and the browser falls back to a similar installed font. For pixel-perfect text, convert the text to outlines in your vector editor before exporting the SVG.
Is there a file size or daily limit?
There is no daily limit and no account. A 25 MB safety cap applies per file and 20 files per batch, because browsers cannot safely hold larger jobs in memory, and outputs are capped at 16 megapixels. Convert bigger jobs in smaller batches.