In software engineering, ER diagram design is an essential process during the project planning phase.

ER diagram design helps you analyze data requirements systematically to produce a well-designed database. A decent tool guarantees you to produce high-quality database design to use in database creation, management, and maintenance. An ER diagram also provides a means for communication with team members or clients.

ER diagram example from dbdiagram.io

Quite many ER diagram design software has been released. But most of them are quite complicated, and some can be pricey.

In this article, we curated the top 5 tools that are cheap (they're free!) and easy to use that will help you conceptualize your database design quickly.

dbdiagram.io

dbdiagram.io is a simple yet powerful ER diagram tool.

Released 2 years ago, but it has amassed more than 150,000 users. Designed for developers, its key selling point are its own DSL language, the clean interface, and the import/export function.

Key features

  • DBML: the core power of dbdiagram.io comes from DBML—an open-source DSL language designed to define and document database schemas and structures
  • Convert SQL to DBML and vice versa
  • Export functionality with handy options: PDF, PNG, MySQL, PostgreSQL, Rails (schema.rb)
  • The most useful features are free

Drawbacks

A relatively new tool, dbdiagram.io lacks some important features such as version control, or some privacy protection for the sharing functionality. But according to the information on their homepage, they plan to release those features soon.

Lucidchart

A popular name, Lucidchart enable you to model ER diagram efficiently and collaboratively.

Key features

  • Integrate with G Suite
  • A simple, straightforward, and attractive interface keeps Lucidchart accessible to every non-designer who needs to create diagrams
  • Any type of importing file (VISIO, BPMN or even images) can be pushed into the system
  • Comes with templates so you can start your diagram quickly

Drawbacks

  • Scaling a large flow chart could be challenging
  • The free version does not include storage so you have to download your work to save it
  • Although Lucidchart is quite easy to use, we must admit that the onboarding process is a bit overwhelming

draw.io

A handy tool if you only occasionally need to make diagrams. If you are making diagrams extensively, a paid service will offer you better functionalities.

Key features

  • Allows different types of charts like flowcharts, org charts, UML, ER and network diagrams.
  • Allows saving your diagrams to cloud storage services like GDrive, Dropbox and OneDrive, or to your own computer
  • Excellent real-time collaboration support included when connected to a Google account
  • There is also a Desktop version if you don't want to open your browser everytime to design a graph

Drawbacks

  • The lack of template can be inconvenient sometimes
  • For certain diagram types, the app can behaves quite strangely

MySQL Workbench

A robust software, MySQL Workbench is for anyone who needs to administer MySQL databases, from simple schema creation to more complex tasks such as model validation.

Key features

  • There is a community edition available that is free and open source
  • Multiple MySQL connections
  • Scripting and plugins supported
  • Forward and Reverse Engineering

Drawbacks

  • Only supports MySQL and MariaDB
  • For small projects or simple tasks, this tool may be an overkill
  • Resource intensive
  • More often than not, it crashes without a reason

ERDPlus

ERDPlus is a web-based database modeling tool for creating Entity Relationship Diagrams, Relational Schemas, Star Schemas, and SQL DDL statements.

Key features

  • Crow foot notation
  • Optional and mandatory relationship
  • Simple drag and drop interface
  • A decent export function

Drawbacks

  • Relationship between more than two entities can be quite tiresome to make.
  • Sometimes the constraint need to be applied manually in the relational schema after we have used the forward engineering feature to obtain the relational schema of the diagram.

Conclusion

Each tool has its own strengths. Some are full-featured but a bit complicated, others could be not as robust yet intuitive with a drag-and-drop interface.

If you want speed and flexibility for prototyping, as well as communicating your ER diagram design, go with dbdiagram.io. The tool is fast and intuitive; its DSL language is easy to learn, yet very powerful. After using it for a while, we find dbdiagram.io to be particularly helpful for developers. It's a webtool, so if you want to give it a try, just go to dbdiagram.io and see the benefits for yourself 😊