By·

How to Add Mermaid.js Diagrams to Confluence

Learn how to embed Mermaid.js diagrams in Confluence using macros and third-party apps. Step-by-step instructions and real-world examples for technical teams.

Rendered Mermaid diagram example for How to Add Mermaid.js Diagrams to Confluence
Rendered Mermaid diagram example from this tutorial.

Why Use Mermaid.js in Confluence?

Confluence is one of the most widely used documentation platforms in enterprise teams. Its built-in diagramming tools (Gliffy, Draw.io) create binary files that are hard to version-control, diff, or update without reopening a visual editor.

Mermaid.js changes that. Write plain text, get a rendered diagram. Updates take seconds, not minutes. And because the source is text, you can copy-paste it anywhere — GitHub, Notion, VS Code, your docs site.

This guide covers every method to add Mermaid diagrams to Confluence.

Method 1: Marketplace App (Confluence Cloud — Easiest)

For Confluence Cloud, the fastest path is a marketplace app. Search for "Mermaid" in the Atlassian Marketplace — several free and paid options are available.

Installation:

  1. Go to Confluence Settings → Find new apps
  2. Search for "Mermaid Diagrams" or "Markdown Macro"
  3. Install your chosen app
  4. On any page, insert /mermaid or {mermaid} macro
  5. Paste your Mermaid syntax
  6. Save — the diagram renders inline

Method 2: HTML Macro (Data Center / Server)

For Confluence Data Center or Server, use the HTML Macro (if your admin has enabled it). This loads Mermaid.js via CDN client-side.

<script src="https://cdn.jsdelivr.net/npm/mermaid/dist/mermaid.min.js"></script>
<div class="mermaid">
graph TD
    A[Product Backlog] --> B[Sprint Planning]
    B --> C[Sprint Execution]
    C --> D[Sprint Review]
    D --> E[Retrospective]
    E --> B
</div>
<script>mermaid.initialize({ startOnLoad: true });</script>

> The HTML macro must be enabled by a Confluence administrator.

Method 3: Export as Image (Universal Fallback)

Works in every Confluence version, no admin permission needed:

  1. Build your diagram at MermaidEditor.lol
  2. Export as PNG or SVG
  3. Upload the image to Confluence
  4. Add a collapsible code block with the raw Mermaid source for future edits

This gives you a visual diagram now, with the source preserved for later.

Real-World Examples

System Architecture

graph TB
    subgraph Cloud
        LB[Load Balancer]
        subgraph App Tier
            A1[API Server 1]
            A2[API Server 2]
        end
        subgraph Data Tier
            DB[(Primary DB)]
            CACHE[Redis]
        end
    end
    USERS[Users] --> LB
    LB --> A1 & A2
    A1 & A2 --> DB & CACHE
Try in Editor →

Incident Response Flow

graph TD
    ALERT[Alert Triggered] --> SEV{Severity?}
    SEV -- P1/P2 --> PAGE[Page On-Call]
    SEV -- P3/P4 --> TICKET[Create Ticket]
    PAGE --> ACK[Acknowledge 15min]
    ACK --> INV[Investigate]
    INV --> RES{Resolved?}
    RES -- Yes --> PIR[Post-Incident Review]
    RES -- No --> ESC[Escalate to Lead]
    ESC --> INV
    PIR --> RUNBOOK[Update Runbook]
Try in Editor →

Agile Sprint States

stateDiagram-v2
    [*] --> Backlog
    Backlog --> InProgress : Sprint Start
    InProgress --> InReview : Dev Complete
    InReview --> Done : Approved
    InReview --> InProgress : Changes Requested
    Done --> [*]
Try in Editor →

Tips for Teams

  • Create a Confluence template with placeholder Mermaid diagrams for common doc types (architecture, runbook, RFC)
  • Always include source — even when using screenshots, add the Mermaid code in a collapsed section
  • Name pages clearly — "Architecture: Payment Service v2" beats "Payment Diagram"
  • Update diagrams in the same session as the system changes they describe

Conclusion

Mermaid.js brings diagrams-as-code to Confluence. Whether you use a marketplace macro, the HTML macro, or the screenshot workflow, your team can have clean, maintainable technical diagrams in the knowledge base.

The real win: diagrams become living documentation that evolves with your codebase.

Create and export Mermaid diagrams for free →