svg2all

Merge SVG files

Combines several SVGs into one – side by side, stacked or as an icon sprite – in your browser.

Runs in your browser – your file is never uploaded

Loading tool …

Frequently asked questions

Is my file uploaded?

No. The conversion runs entirely in your browser. The file never leaves your device – there is no server that could see it. Once the page has loaded, the tool even works offline.

Side by side, stacked or sprite?

Side by side and stacked produce one picture: each file becomes a nested <svg> at its own size, placed in the order of the queue with the chosen gap, and the new file gets a width, height and viewBox that fit everything. A sprite is not a picture but a library: every file becomes a <symbol> whose id is the file name, and you show one with <svg><use href="sprite.svg#file-name"/></svg> – or paste the sprite once into the page and use href="#file-name".

What happens to IDs?

Two files often use the same ids (“a”, “gradient”, “clip0”). Every id is prefixed with its file name and every reference – url(#…), href="#…", #… selectors in style sheets, aria-labelledby – is rewritten to match, so gradients, clip paths and <use> elements keep working. In a sprite the <defs> of all files are collected into one shared block.

What does each file need?

A viewBox, or an absolute width and height (px, pt, mm, cm, in). Files sized in percent or em cannot be placed – the message names the file; fix it with the viewBox tool or in your editor. Scripts, event handlers and external references are removed from every file first.