How to Create Flowcharts in Dia (Step-by-Step Guide)

Dia Tutorials · Flowcharts · Updated October 2026

About this guide: This is an independent community resource for Dia users. We are not affiliated with the GNOME project or the Dia developers. Dia is free, open-source software released under the GNU GPL.

Flowcharts are one of the most common things people draw in Dia — and Dia’s dedicated Flowchart sheet makes it genuinely quick. It includes all the standard symbols (terminators, processes, decisions, input/output, and more), connectors that stay glued to your shapes, and clean export options for documents and slides. This tutorial walks you through building a complete flowchart from a blank canvas to a shareable image.

New to Dia? Grab it from our download page first. Mac users should also read the Mac setup guide (Dia on macOS needs XQuartz).

Step 1: Open Dia and Select the Flowchart Sheet

  1. Launch Dia. You will see the Toolbox window and a blank canvas.
  2. In the Toolbox, click the sheet drop-down at the top and choose Flowchart.
  3. The Toolbox now shows flowchart symbols: Terminator, Process, Decision, Input/Output, Document, Predefined Process, Connector, and others.

Step 2: Know Your Symbols

Symbol Name Use it for
Rounded rectangle Terminator Start and End of the process
Rectangle Process An action or operation step
Diamond Decision A yes/no or branching question
Parallelogram Input / Output Reading input or producing output
Rectangle with double sides Predefined process A named sub-process defined elsewhere
Wavy-bottom rectangle Document A produced document or report

Step 3: Place the Start Symbol

  1. Select the Terminator tool and click near the top of the canvas.
  2. Double-click the shape and type Start in the text field. Click OK.
  3. Every flowchart begins with exactly one Start and ends with one End — this keeps the diagram unambiguous.

Step 4: Add Process Steps

  1. Select the Process tool and click below the Start symbol.
  2. Double-click it and label it with a verb phrase, e.g. Read user input.
  3. Repeat for each step of your process, working top-to-bottom. Keep labels short — one action per box.
Tip: Enable View > Show Grid and View > Snap to Grid so your boxes line up neatly without fiddly manual alignment.

Step 5: Connect Shapes with Flow Lines

  1. Select the Line tool (or the dedicated connector tool) from the Toolbox.
  2. Click the first shape — small crosses appear. These are connection points.
  3. Click a connection point on the first shape, then a connection point on the second shape. The line snaps into place and stays attached when you move shapes later.
  4. To add arrowheads, double-click the line to open its Properties and set the end arrow style.
Green means glued, red means floating. When dragging a connector endpoint, a green cross means it is attached to the object; red means it is just sitting on the canvas. Always connect to green crosses, or your arrows will detach the moment you rearrange the diagram.

Step 6: Add a Decision (Branching)

  1. Place a Decision (diamond) where the flow branches.
  2. Double-click it and type the question, e.g. Input valid?.
  3. Connect one outgoing line from the right or bottom connection point for the “Yes” path and another for the “No” path.
  4. Label each branch: double-click the line (not the shape) and enter Yes / No as the line text.
  5. Route the “No” path back to an earlier step or to an error-handling process box.

Step 7: Style Your Diagram

  • Colors: select one or more shapes, open Properties (double-click or right-click > Properties), and set fill and line colors. A common convention: green tint for Start/End, light blue for processes, light yellow for decisions.
  • Fonts: set a clean sans-serif font (Arial, DejaVu Sans) in the shape properties for readability at any size.
  • Consistency: keep all boxes the same width where possible — it makes the chart dramatically easier to scan.

Step 8: Set Up the Page for Printing

  1. Go to File > Page Setup to choose paper size and orientation.
  2. Dia can span a large flowchart across multiple printed pages — check the page grid in the background to see page boundaries.
  3. For a one-page handout, shrink shapes or split the chart into a main flow plus sub-processes (use the Predefined Process symbol to reference them).

Step 9: Save and Export

  1. Always save the editable version first: File > Save as .dia.
  2. Then File > Export: choose PNG for slides and documents, SVG for infinite zoom without quality loss, or PDF for printing.

Full details in our export quality guide.

Worked Example: Login Validation Flowchart

Let’s build a realistic flowchart together — a user login process:

  1. Start: place a Terminator at the top, label it Start.
  2. Input: below it, place an Input/Output parallelogram labeled Enter username & password.
  3. Process: add a Process box: Look up user in database.
  4. Decision: add a Decision diamond: User found? Connect No to a Process box Show "invalid credentials" error, then loop that back to the input step.
  5. Decision: on the Yes branch, add another diamond: Password correct? — No goes to Increment failed attempts, then a third diamond Attempts > 3? whose Yes branch leads to Lock account for 15 min and End.
  6. End: the Yes branch of “Password correct?” goes to Create session, then a Terminator labeled End.

Label every branch line (Yes/No) by double-clicking the line. Color the two Terminators green, decisions yellow, and you have a flowchart ready for a code review or onboarding doc.

Plan Before You Draw

  • List the steps on paper first. Flowcharts drawn “live” accumulate spaghetti; a 2-minute bullet list of steps and decisions saves 20 minutes of rearranging.
  • One decision per diamond. “User found AND password correct?” is two questions — split them. Single-condition diamonds keep branches readable.
  • Keep the happy path straight. Convention: the main success flow runs top-to-bottom; exceptions and errors branch to the sides. Readers scan the center line first.
  • Number complex charts. For flowcharts with 15+ symbols, add small step numbers in a corner of each box (via the Text tool) so colleagues can reference “step 7” in discussions.

Speed Tips: Keyboard Shortcuts Worth Memorizing

  • Ctrl + mouse wheel: zoom in/out around the cursor.
  • Space + drag (or middle mouse button): pan the canvas.
  • Ctrl + C / Ctrl + V: copy-paste shapes — works between two open Dia windows, so keep a “parts bin” diagram open for reusable sub-flows.
  • Delete: removes selected objects; Ctrl + Z undoes.
  • Arrow keys: nudge selected shapes pixel by pixel (hold Shift for bigger steps).
  • Ctrl + A: select all — then change font or color for the whole diagram in one Properties edit.
  • F3: open the Layers dialog without hunting through menus.

Ten minutes of practice with these and you’ll draw flowcharts roughly twice as fast — the mouse-heavy alternative really does add up over a 30-symbol chart.

When Flowcharts Are the Wrong Tool

Flowcharts are great for sequential logic, but reach for a different diagram when:

  • Showing system structure → draw a network diagram or block diagram instead.
  • Showing data relationships → an ER diagram communicates schema far better than boxes and arrows.
  • Showing class design → a UML class diagram is the right notation.
  • Showing a timeline → a Gantt-style bar layout (drawn with plain rectangles) beats a flowchart with 40 sequential boxes.

The classic failure mode is the 60-symbol mega-flowchart that nobody can follow. If your chart needs a map to navigate, split it: one overview flowchart of major phases, with each phase detailed on its own page using Predefined Process symbols as cross-references.

Frequently Asked Questions

Does Dia support swimlanes (e.g. for business processes)?

Not as a built-in symbol — the Flowchart sheet has no swimlane object. The honest workaround is to draw large labeled rectangles as lane backgrounds on a lower layer (View > Layers), then place your flowchart on top. It works fine for simple cases; for heavy BPMN work, a dedicated BPMN tool is a better fit.

How do I keep connector lines from crossing messily?

Plan the layout before connecting: keep the main flow vertical, branch decisions to the sides, and leave generous spacing. If lines must cross, right-click a line, open Properties, and adjust its routing — Dia connectors can be reshaped by dragging their middle handles.

Can I make a flowchart span multiple pages?

Yes. File > Page Setup controls paper size and orientation, and the canvas background shows page boundaries. Dia will print/export across as many pages as the diagram covers.

Why does my exported flowchart look blurry in Word?

You probably exported PNG at the default low resolution. Re-export at a higher DPI, or export as SVG/PDF for razor-sharp lines at any size. See our export guide for the exact settings.

Can I reuse symbols or templates across diagrams?

Yes — save a .dia file as a template starter, or install extra shape libraries (see installing custom shapes). Copy-paste between open Dia windows also works.

Where do I ask other Dia questions?

Our general Dia FAQ covers installation, HiDPI display fixes, and Mac/XQuartz issues.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *