Visio to Mermaid

Drop a Visio .vsdx file and get editable Mermaid.js code. Shapes, labels and the connections between them are read straight out of the file, so nothing is guessed.

Drop your Visio file here, or click to browse

.vsdx · instant · no signup required

Only have a screenshot of your diagram?

Convert an image to Mermaid with AI

Frequently asked questions

How do I convert Visio to Mermaid?

Drop your .vsdx file onto the box above. Your shapes become Mermaid nodes and your connectors become the arrows between them. The result is editable text you can copy into a README or export as PNG or SVG. No account needed.

Does it need Visio installed?

No. The .vsdx file is read directly in the browser and on our server — nothing is opened in Visio, and you don't need a licence to convert a file someone sent you.

How accurate is the conversion?

Connections are exact, not inferred. A .vsdx records which connector is glued to which shape, so the resulting arrows match your diagram rather than being guessed from where lines happen to sit on the page. Shape types are mapped from the Visio stencil — a Decision becomes a Mermaid diamond, a Start/End becomes a rounded terminator, and anything unrecognised becomes a rectangle.

What about .vsd files?

The older binary .vsd format isn't supported. It predates the XML-based package that .vsdx uses and can't be read without Visio itself. Open the file in Visio and use Save As to produce a .vsdx, then convert that.

What happens with multi-page Visio files?

Only the first page is converted, because a Mermaid diagram is a single graph. If your diagram is on a later page, move it to page 1 or save that page to its own file first.

What isn't carried over?

Colours, fonts, exact positions, swimlanes and container grouping are dropped — Mermaid lays out diagrams itself from the structure rather than from coordinates. Unlabelled decorative shapes that connect to nothing are also left out, since they'd become anonymous empty boxes.

Is my file uploaded or stored?

Your file is sent to our server, parsed, and returned as Mermaid code. We don't store the file itself. If you're signed in, the resulting Mermaid code is saved to your conversion history so you can find it later; if you're not signed in, nothing is kept.