Canvas · Free Tool

Excalidraw to PNG & SVG Converter

Drop in .excalidraw files — or .excalidraw.png, .excalidraw.svg and Obsidian .excalidraw.md — and get crisp PNGs or SVGs back, one at a time or as a zip.

Loading tool…

You have a drawing in a file and you need it as an image — for a slide, a README, a ticket or a doc. Drop the .excalidraw file here and it renders straight away as a PNG or SVG preview; pick a scale, a background and a padding, then download. Drop in twenty files and you get twenty images in one zip.

It also reads the containers Excalidraw drawings tend to end up in: PNGs and SVGs exported with “Embed scene” turned on, and the .excalidraw.md files the Obsidian Excalidraw plugin writes into your vault. Nothing is uploaded — the files are decoded and rendered by your own browser, with the same renderer Excalidraw itself uses.

Keep the drawing editable, not just the picture

An exported PNG is a dead end — the next change means finding the source file again. OmniCanvas keeps your Excalidraw drawings editable on an infinite canvas, next to the notes that explain them, synced across devices. Free to start.

Sign up free

No credit card · 30 days free

How to convert an .excalidraw file to PNG

Drop the file onto the converter above (or click Choose files). The preview shows exactly what the download will look like, including the pixel size. Choose a scale — 1x matches the drawing’s on-canvas size, 2x is the right default for slides and anything viewed on a high-density screen, and 3x is for print or for zooming into a dense diagram. Then click PNG.

Padding is the empty margin around the outermost element, in canvas pixels before scaling. Excalidraw’s own default is 10; raise it if the image is going onto a coloured slide and needs breathing room, or drop it to 0 when you intend to crop or place it tightly yourself.

For a whole folder, add all the files at once and use Download all. You get one .zip with a PNG (or SVG, or both) per drawing, named after the original file. Browsers tend to block a page that fires off a dozen separate downloads, which is why the batch comes as a single archive.

PNG or SVG: which export to choose

PNG is a fixed grid of pixels. It pastes into anything — Slack, Jira, Google Docs, PowerPoint, email — and looks identical everywhere, but it blurs if it is enlarged past the size you exported. That is what the scale setting is for: export at the largest size it will ever be shown.

SVG is vector: shapes and text stay as geometry, so it is sharp at any zoom and usually smaller for diagrams that are mostly lines. It is the better choice for docs sites, READMEs and design tools, where it can be restyled later. Excalidraw embeds the hand-drawn fonts it needs into the SVG so the text renders the same on machines that don’t have them installed. The catch is that a few places — some chat apps, some slide tools — still don’t accept SVG uploads, so keep a PNG for those.

If the drawing contains pasted photos or screenshots, both formats carry them, but those images stay raster inside an SVG; only the Excalidraw shapes become vector.

Transparent backgrounds and dark mode

Turn the background off to get a PNG with a transparent background, which is what you want on a coloured slide or a page with its own theme. The preview shows transparency as a checkerboard. Leave it on to keep the drawing’s own canvas colour, or set a colour explicitly — useful when every image in a deck should share the same off-white.

The dark mode switch renders the drawing the way Excalidraw’s dark theme does: it inverts the colours and rotates the hues back, so black strokes become light and white fills become dark while reds stay reddish. It is a filter, not a second palette, so exact brand colours will shift slightly. For a documentation site with a theme toggle, the usual approach is to export both a light and a dark SVG and switch between them with a `prefers-color-scheme` picture source.

Excalidraw PNGs that are still editable (“Embed scene”)

Excalidraw can hide the whole editable scene inside an exported image: a PNG gets it in a metadata chunk, an SVG in a comment block. Those files are usually named .excalidraw.png or .excalidraw.svg, and dropping one back into Excalidraw reopens the drawing rather than a flat picture. This converter reads them the same way, so you can re-export an old embedded PNG at a higher scale or as SVG without hunting for the source file.

Tick “Embed scene” before downloading if you want the images you make here to carry their source too. The trade-off is file size — the embedded scene is compressed, but a drawing with pasted images roughly doubles — and the fact that the data is visible to anyone who has the file. Many upload pipelines (chat apps, image optimisers, CMS resizers) strip metadata, so treat an embedded PNG as a convenience, not a backup.

Exporting Obsidian Excalidraw drawings

The Obsidian Excalidraw plugin stores each drawing as a markdown file ending .excalidraw.md. The drawing itself sits near the bottom under a “Drawing” heading, usually as a compressed-json block — a compressed string that looks like noise if you open the file in a text editor. Drop the .md file here and it is decompressed and rendered like any other drawing, which is handy when you want a PNG of a vault sketch without opening Obsidian, or want to batch-convert a folder of them.

One honest limitation: images you embedded in an Obsidian drawing live in your vault as separate files, and the markdown only holds a link to them. This page never sees your vault, so those images render as empty frames and the tool tells you how many are missing. Shapes, text, arrows and freehand strokes all convert fully. If you need the images included, use the plugin’s own export inside Obsidian, or its auto-export setting that writes a PNG or SVG next to every drawing on save.

Frequently asked questions

How do I convert Excalidraw to PNG?

Drop the .excalidraw file onto this page, choose a scale (2x is a good default), background and padding, and click PNG. It renders in your browser with Excalidraw’s own renderer — no account, no watermark and no upload.

Can I export an Excalidraw drawing with a transparent background?

Yes. Switch the background to Transparent before downloading. The preview shows a checkerboard where the image will be see-through. SVG exports follow the same setting.

Can I convert several .excalidraw files at once?

Yes. Add as many files as you like and use Download all to get a single .zip with a PNG, an SVG, or both for every drawing, all using the same export settings.

Does it work with Obsidian .excalidraw.md files?

Yes, including the compressed-json format the plugin uses by default. Shapes, text and strokes convert fully. Images embedded from your vault are stored as links rather than data, so they can’t be included and show as empty frames.

Are my drawings uploaded?

No. Files are read, decoded and rendered on your device, and nothing is sent to a server. The only exception is the optional “Edit in OmniCanvas” button, which sends that one drawing to the app because that is what it is for.

How is this different from the Excalidraw File Viewer?

The viewer is for opening and editing drawings. This page is for turning them into images: export settings up front, a live preview at the exact output size, batch zip downloads, and support for embedded-scene PNG/SVG and Obsidian markdown files.

More free tools