Best ER Diagram Tools in 2026: Free and Paid Comparison

For the developer or architect picking an ER diagram tool, who needs the diagram to still be useful a month after the first screenshot.

On this page

An ER diagram tool gets asked to do three different jobs: draw a schema before it exists, read a database somebody left behind, and hand that shape to people who never open a database client. DbSchema is the pick because it does all three out of one model file. It reverse-engineers a live schema into a diagram you edit, splits a large schema across several diagrams in one project, compares the model against the database before you deploy, and exports the result as interactive HTML5.

DBeaver, MySQL Workbench, pgModeler and dbdiagram.io each take on part of that path, and the table below is arranged so you can see which part.

Best ER diagram tools at a glance

ToolLive reverse engineeringEngines supportedFree vs paidOffline desktopLarge schema layoutsExport and docsTeam and Git sync
DbSchemaYes, SQL and NoSQL100+ enginesFree Community, paid ProYes: Windows, Mac, LinuxMultiple diagrams per projectInteractive HTML5 and PDFXML model file in Git
DBeaverYes100+ enginesFree Community, paid editionsYesBasic auto-layoutImage exportGit sync in Enterprise, Ultimate, Team
MySQL WorkbenchYesMySQL onlyFreeYesSingle canvasPDF and imageManual file sharing
pgModelerYesPostgreSQL onlyPaid, or build from sourceYesSingle canvasSQL and HTMLManual file sharing
dbdiagram.ioNo, SQL script import onlyPostgreSQL, MySQL, SQL ServerFree and paidNo, browser onlyBasic groupingPDF, PNG, SQLPaid team sharing

Two columns decide most shortlists. Live reverse engineering is what separates a tool you point at an existing database from one you retype the schema into, and dbdiagram.io is on the far side of that line: it imports a SQL script rather than reading a server. Large schema layouts is the column nobody weighs until a hundred tables land on one canvas at once.

Engine coverage only counts against your own estate. A tool that reaches a hundred engines and a tool that reaches one are the same tool to a team that runs MySQL and nothing else. The number matters the moment a second engine appears, because a single-engine tool then becomes a second license, a second diagram, and a second thing to keep in step with the first.

Two diagram tabs in one DbSchema model: the whole schema on the first, and a second diagram holding only the task tables

How to choose an ER diagram tool

Start from where the schema is. If the database already exists, live reverse engineering is the feature that matters, because without it you copy the structure across by hand and it is wrong the first time someone deploys. If the database does not exist yet, offline design is the one, since a browser tool that wants a connection cannot help you draw what nothing has created.

Engine coverage is the second filter, and it changes the shortlist more than any other. A MySQL-only team can pick a MySQL-only tool and lose nothing. A team running PostgreSQL on one side and MongoDB on the other cannot, and that is the point at which the cross-engine tools separate from the single-engine ones.

Free tiers cover the drawing. dbdiagram.io, and the Community editions of DBeaver and DbSchema, all produce a schema diagram without a license, so the free-versus-paid question is not about whether you get a picture. What the paid tiers add is everything after the picture: an offline model file, schema synchronization, interactive HTML documentation, and a design that Git can version. In DbSchema those are the Pro edition, and the diagrams themselves stay free.

DbSchema

DbSchema treats the ER diagram as a model it keeps rather than a picture it exported once. Connect to a database and it reads the schema into a diagram with the foreign key lines already drawn; connecting, reverse-engineering and the diagrams are in the free Community Edition.

The diagram is editable in place. Right-click the canvas and choose New Table, double-click a table header to open the Table Dialog and manage columns, indexes and foreign keys, and drag from a column in the child table to the matching column in the parent to draw a foreign key. Where the database enforces no foreign keys, the same drag creates a virtual foreign key that is stored in the project file and never sent to the database, and both the Query Builder and the Relational Data Editor follow it as though it were real.

Large schemas get two answers. Diagram → Auto Arrange lays out overlapping tables with a graph algorithm, and one project holds many diagrams, added from the Diagram menu or the "+" tab, each with its own layout and its own set of visible tables. A hundred-table database becomes four diagrams a colleague will actually read. File → Export writes any of them as PNG, SVG, PDF, Markdown or HTML5, and the HTML5 output is searchable, zoomable and carries column descriptions as tooltips.

It is worth being precise about what changes where. Editing a table on the diagram changes the .dbs model file and nothing else. The database changes only when you open Schema → Synchronize Model with Database and execute the SQL it generates from the difference. Saving that model file, the documentation export and schema synchronization are Pro; logical and conceptual design is Architect. The product page is Database Design Tool.

Other tools worth comparing

DBeaver draws its ER diagram from the connection you have open, in the same window you run queries in, and reaches any database with a JDBC driver. MySQL Workbench is Oracle's own tool for MySQL and covers EER diagrams with forward and reverse engineering on a single canvas. pgModeler goes deep into PostgreSQL-specific objects and no others; its Community edition is source code you compile, and the pre-built binaries belong to the paid edition. dbdiagram.io needs no install at all: you type DBML or import a SQL script in the browser and share the diagram by URL, without a connection to a running database.

Each of those answers a narrower question than the one this page opened with, whether that is one engine, one canvas, or a diagram with nothing to install. DbSchema answers all three of the reasons at the top out of the same model file, which is what the last three columns of the table measure. For the wider field, see Best Database Schema Design Tools in 2026 and DBeaver Alternative, DbSchema.

Reverse engineering an ER diagram from an existing database

Inheriting an undocumented database is one reason to go looking for an ER diagram tool. Reverse engineering means connecting to the live database, reading its metadata, and drawing the tables, columns and foreign keys without typing any of it in.

In DbSchema that happens as soon as the connection opens: the schema arrives as a diagram with the foreign key lines in place, and it lands in the .dbs project file rather than in the database, which the read leaves exactly as it was. Diagram → Auto Arrange untangles the overlap, and you split the result across several diagrams so that each covers one subject area instead of the whole estate.

The relations a database never declared are the gap that reverse engineering alone cannot close. MongoDB does not enforce foreign keys, MySQL on MyISAM does not, and legacy schemas frequently carry none. Drag a column onto the column it references and DbSchema asks whether to create a real foreign key or a virtual one; the virtual one is kept in the project file, drawn on the diagram like any other line, and used for joins by the Query Builder and the Relational Data Editor.

Database-specific ER diagram guides

Engine-specific tutorials show these steps against a real schema. On SQLite, DbSchema opens the local file and draws its tables, views and declared foreign keys; where the file declares no relation between two tables, you drag one column onto the other and DbSchema keeps the result in the project file as a virtual foreign key. The same pattern repeats on the other engines below.

ER diagram DbSchema reverse-engineered from a SQLite file, showing 13 tables and 2 views with foreign keys drawn

Drawing a diagram stops being the whole job as soon as the schema needs review, documentation and a way to reach the database, and a single model file is what carries all three. Download DbSchema at https://dbschema.com/download.html, connect to the database nobody has drawn yet, and split what comes back across as many diagrams as it takes to keep each one readable. The diagrams are free in Community Edition. The model file you save afterwards, the HTML5 and PDF export and schema synchronization belong to Pro.

Create ER diagrams in minutes

DbSchema reverse-engineers your database into an editable diagram, splits a large schema across several diagrams, and exports interactive HTML5 documentation. The diagrams are in the free Community Edition; documentation export and schema synchronization are Pro.