Importing draw.io files

Bring draw.io diagrams across as canvases, a tab per page.

Import from draw.io brings diagrams made in draw.io (diagrams.net, the desktop app, or its Confluence and VS Code plugins) across as livediagram canvases. Pick as many files as you like, or a whole folder: each diagram becomes its own canvas, and each of its pages becomes a diagram tab in that canvas.

To import one diagram into the tab you are working on instead, use Import in the tab menu. Everything is read in your browser: no draw.io account is needed, and nothing is sent to draw.io.

What you can pick

The import reads each file by what is inside it, never by its name, so all of these work:

  • .drawio and .xml files, compressed or not.
  • Files saved to Google Drive. draw.io saves to Drive without an extension; download them and pick them as they are.
  • PNG and SVG exports made with Include a copy of my diagram ticked. A PNG without the diagram inside is left out, and the report says how to export it so it works; an SVG without it is left out as not a draw.io file.
  • JSON exports (draw.io's Export as JSON). When the export includes the full diagram, it imports exactly like the .drawio file. When it holds only the shapes and connections, without their positions, livediagram lays the diagram out for you, and the import says so.

Anything else in a folder, such as notes or pictures, is left out and named in the report, never treated as an error.

draw.io libraries (the shape sets draw.io keeps in a scratchpad, saved as a library file) become shape libraries of your own, one per file, named after it. Their shapes appear in the palette's My shapes category, ready to place on any tab; see Shape libraries. Libraries can only be imported here, not through the tab menu's Import.

Importing

On the Explorer page, Import from at the top right shows a button for each tool you can import from: Microsoft Whiteboard, Excalidraw and draw.io, in that order. Press the draw.io button (hover it to see its name). On a phone the "Import from" label hides and only the three buttons show.

The group shows wherever New Canvas files a canvas in your own space (My Work and its folders, Recent, Favourites and search results), on Home the first time you visit, and on Shape Libraries, where only draw.io (which brings libraries) is offered. A team's library has none. A button opens the import page for that tool; from inside a folder, the new canvases go into that folder, and elsewhere they land at the root of My Work. You come back to where you were when the import is done.

In the Import from draw.io dialog, press Choose files or Choose a folder, or drop files or a folder onto the panel. A single diagram with nothing left out imports straight away. Otherwise the panel lists what it found, each under the name its canvas will get, with the date it was last edited and how many pages it has (a library shows how many shapes it holds). Every row starts ticked; untick the ones you don't want, or use Select all, then press the import button, which counts what you chose (for example Import 2 files). Back returns you to the picker.

Every diagram and library starts ticked; the button counts what will be imported.

Names and dates

  • A canvas is named after its file. When the file has draw.io's default name (such as "Untitled Diagram"), it takes the name saved inside the file, else its first page's name (unless it is draw.io's default, such as "Page-1"), else "draw.io diagram" with the date.
  • A canvas is dated as the diagram: draw.io records when a file was last saved, and the canvas shows that date (falling back to the file's own date), so your library keeps its history.

What comes across

Shapes, text, connections, containers, swimlanes, tables, layers, colours and pictures come across as they do in the tab import. Pictures embedded in the diagram are saved to your image gallery; pictures linked from the web, or from draw.io's own icon sets, are never fetched and come in as placeholders.

When the import finishes, it lists the new canvases (and any new shape libraries) so you can open them, says what changed on the way (for example shapes that came in as the nearest livediagram shape) and names any files it left out, with the reason. Nothing in your other canvases changes.

Limits

  • A file over 50 MB is left out.
  • A file with more than 100 pages imports its first 100, and the report counts the rest.
  • A page with more than 10,000 elements imports its first 10,000.
  • A JSON export without positions lays out at most 500 shapes and 1,000 connections per page; the rest are counted in the report.
  • Each page must fit in one tab (just under 2 MB of stored data). A page too large to store is left out of its canvas and named in the report; the file's other pages still arrive.

Moving a whole draw.io folder across? Use Choose a folder and pick the top folder: every diagram inside becomes its own canvas and every library its own shape library, in one go.

Was this article helpful?