Start typing to search tools…
🛠️ All Tools
💻 Developer Tools
📋 JSON Formatter 🌳 JSON Tree 📄 XML Formatter 🌲 XML Tree 🎨 CSS Generator 🗄️ SQL Builder ⚙️ Programming Tools 📊 ER Diagram 📐 UML Diagram 🔀 Flowchart
🌐 Network & DNS
🔍 DNS Lookup 🌍 DNS Propagation 🔎 WHOIS Lookup 🔒 SSL Checker 📡 Ping Test ⚡ Speed Test ✉️ Email Auth 👤 Username Checker
🔐 Encoding & Security
🔑 Base64 Encode 🖼️ Base64 Image 🔐 MD5 Hash 🔑 Password Gen 🎭 Fake Name Gen
🖼️ Image Tools
📦 Compressor 🔄 Converter ✂️ Cropper 📐 Resizer 🎨 Filters ✨ Effects 💧 Watermark 📸 Social Image ⭐ Favicon Maker 🖼️ Image to Text 📷 EXIF Viewer
🔍 SEO & Web
✅ SEO Checklist 🔍 SERP Preview 🗺️ Sitemap Gen 📱 Social Debugger 🏷️ Hashtag Gen
✍️ Text & Writing
📝 Word Counter ✨ Fancy Text 🎲 Random Generator 🎨 Color Palette 💡 Brainstorm Tool 🚀 SaaS Ideas 🧠 Mind Map
ℹ️ About ✉️ Contact
Home Developer Tools ER Diagram Generator
⚙️ Developer ✅ 100% Free ⚡ Instant

ER Diagram Generator

Describe your database schema in plain text — define entities, fields, types, and relationships — and instantly get a professional, industry-grade entity-relationship diagram. Export as SVG or PNG.

📝 Schema Definition Plain text → diagram
Templates:
⚠️ Parse Error
📖 Syntax Reference
# Define an entity (table) entity EntityName { PK id INT field_name VARCHAR(100) created_at DATETIME FK other_id INT } # Define relationships relation EntityA to EntityB { type: one-to-many label: "has many" } # Supported types: # one-to-one | one-to-many # many-to-many | many-to-one
PK = Primary Key  ·  FK = Foreign Key  ·  UK = Unique Key
Fields without a prefix are regular columns. All field names support spaces if quoted.
100%
🗄️
No diagram yet
Write your schema on the left and click "Generate ER Diagram"

What is an ER Diagram?

An Entity-Relationship (ER) diagram is a visual blueprint of a database. It shows the entities (tables), their attributes (columns), and the relationships between them. ER diagrams are used by database architects, backend developers, and software teams during the design phase to plan and communicate database structure before writing any code.

How to use this tool

  • Define each table using the entity keyword followed by a name and curly braces
  • Inside each entity, list fields with an optional prefix: PK for primary key, FK for foreign key, UK for unique key
  • After the field name, specify the SQL data type (INT, VARCHAR, DATETIME, etc.)
  • Define relationships using the relation keyword with one-to-one, one-to-many, or many-to-many
  • Use the template buttons to load a full working example and customise from there
Yes — use the SVG button to download a scalable vector file (perfect for documentation and presentations), or PNG for a raster image suitable for embedding in reports. Both export options are in the toolbar above the diagram.
The tool supports all four standard crow's foot notation relationship types: one-to-one, one-to-many, many-to-one, and many-to-many. Each is rendered with the correct crow's foot symbols on the relationship lines.
No. The entire tool runs client-side in your browser — nothing is sent to any server. Your schema text stays entirely on your machine.
Any SQL data type works as a label — INT, BIGINT, VARCHAR(n), TEXT, BOOLEAN, DECIMAL, FLOAT, DATE, DATETIME, TIMESTAMP, JSON, UUID, and so on. The tool treats the type as a display string, so you can write any type you use in your actual database.
Done!