Does self-hosted draw.io cost less than Microsoft Visio?
draw.io has no license fee, so the cost question turns on what you pay for instead of Visio: a Visio Plan 1 or Plan 2 subscription, or a one-time Visio LTSC 2024 license, against the hosting, migration, training and support work that a self-hosted draw.io deployment needs. The jgraph/drawio source code is licensed under the Apache License 2.0, so the software itself adds no per-seat cost. Before a renewal, pull your current Visio invoices and your count of active users, then price the infrastructure and staff time that the self-hosted option will consume. Ask your Microsoft licensing partner to confirm which Visio edition your agreement covers and whether any licenses are tied to Microsoft 365 plans you already pay for.
Self-hosting tends to cost more when the estate is small. A handful of users rarely justifies a dedicated container host, a reverse proxy, TLS certificates, backups and patching, and those tasks are recurring whether you have five editors or five hundred. The cost also rises if your diagrams depend on Visio-only behavior. draw.io warns that Visio imports may look different, may lose interactive behavior and do not import embedded EMF images, so budget time for rework on complex files. Self-hosting tends to cost less when seat counts are high or when your team already runs container platforms and internal tooling. In that case the marginal cost of one more hosted application is small, and each avoided seat is a recurring saving. The Docker image has no export server, so if you need PDF export with embedded diagrams, you must either use the browser print path or configure a separate export service, and that service has its own hosting and maintenance cost.
Which cost components change between Visio and self-hosted draw.io
This table sets each cost component of a Visio estate against its counterpart in a self-hosted draw.io deployment, and marks whether the cost is one-time or recurring. Read the commercial column as what you pay to Microsoft or a partner, and the self-hosted column as what your own staff or a partner must do. The main takeaway is that the license line disappears, while hosting, conversion and training remain as effort you must scope and budget.
| Cost component | Microsoft Visio (Plan 1, Plan 2 or LTSC 2024) | Self-hosted draw.io | One-time or recurring |
|---|---|---|---|
| License or subscription | Per-user Plan 1 or Plan 2 subscription, or a one-time LTSC 2024 license. Confirm current terms with your Microsoft agreement or reseller. | No license fee. The jgraph/drawio source code is Apache License 2.0. | Plan 1 and Plan 2 recur. LTSC 2024 is one-time, with mainstream support listed until October 2029. |
| Hosting | Desktop installs on managed devices, plus any SharePoint or OneDrive storage you already pay for. | Docker image run on your servers or cloud account, or draw.io Desktop on each device. You pay for compute, TLS and backups. | Recurring infrastructure, plus one-time setup. |
| Implementation | Installation and deployment through your existing desktop management tooling. | Planning the Docker deployment, storage integration, authentication and access rules. Staff or a partner performs this. | One-time, scoped in writing before work starts. |
| File conversion | Native .vsdx and .vsd files need no conversion inside Visio. | draw.io imports .vsdx and converts .vsd and .vst in the browser. Old .vdx and EMF images need checking or rework. | One-time for the existing library. Ongoing for new imports. |
| Stencils and libraries | Stencils ship with Visio and custom stencils stay in your file share. | Stencils (.vssx, .vss) import as shape libraries. Check licensing terms for any third-party stencil library before reuse. | One-time for migration, then maintained by your team. |
| Training | Staff already know the Visio interface, so retraining is usually limited to new features. | Staff must learn the draw.io interface and differences in rendering and interactivity after import. | One-time, with onboarding for new hires. |
| PDF export server (if needed) | Visio exports PDF from the desktop application at no extra license cost. | The Docker image has no export server, so PDF export uses the browser print dialog unless you configure one. A separate server adds hosting and upkeep. | Recurring if you run an export server. |
| Support and upgrades | Covered by your Microsoft subscription or lifecycle policy for the product version. | Your team or a partner tracks draw.io releases, applies upgrades and tests them. The project does not accept pull requests, so fixes come from maintainers. | Recurring. Ask any partner for the support scope in writing. |
| Internal skills | Visio administration is usually covered by existing desktop and licensing staff. | Someone must own the container, storage integration, backups and security review. Retainers for ongoing support are available from DeployOpen on a written scope. | Recurring staff time or partner fees. |
What moves the Visio versus draw.io comparison
The cost gap between Visio licenses and self-hosted draw.io depends on who edits, how much material must move, and what outputs the business needs. Each driver below pushes the result in a direction you can check against your own estate before requesting a quote.
Named users and edit rights
Visio Plan 1, Plan 2 and LTSC 2024 are priced per seat, so the license line grows with every person who opens the app. draw.io Docker and Desktop carry no license fee, so the recurring cost shifts to the server, support and identity integration. Count separately the people who only view diagrams from those who draw and edit them. Viewers may need only exported PDFs or read access, which changes the seat math. Ask your team how many editors truly need rights today.
Size and age of the file estate
A large library of .vsdx, .vsd and .vdx files increases conversion and review effort even when licenses are cheap. Older .vsd files convert in the browser, but .vdx files should be resaved in Visio 2013 or later first. Visio imports may lose interactive behavior and do not bring over embedded EMF images. Stencil libraries are imported as shape libraries, so count how many custom stencils your teams rely on before estimating migration work.
PDF export with embedded diagrams
The draw.io Docker image has no export server, so PDF export relies on the browser print dialog unless you configure one. If your publishing process needs PDFs with diagrams embedded in documents at scale, budget for an export server and the platform time to run it. This is the main point where open-source cost can rise above the initial expectation. Confirm with your document owners whether they need batch export, and test a sample set before you size the server.
Availability and backup needs
Visio files live on desktops, OneDrive or SharePoint, and a self-hosted draw.io instance adds a service you must keep running. Decide whether the instance must survive a host failure, and who restores diagrams if the storage connector fails. Backups should cover the connected storage where diagrams are saved, since draw.io does not keep them on its own servers. Ask your platform team what recovery expectations already apply to similar internal tools.
Platform team skills and support
Running draw.io in-house needs people who can deploy a Tomcat-based Docker image, manage TLS, handle upgrades and connect storage integrations such as Nextcloud, GitLab or SharePoint. If the team already runs containers and identity services, the marginal effort is small. If not, fixed-scope implementation support or a retainer replaces that skill gap, and the quote should state who handles upgrades. The project does not accept pull requests, so plan for upgrades from published releases rather than expecting community fixes.
How to build the cost model with your own numbers
This sequence turns your Visio seat count, file estate and renewal quote into a side-by-side model that shows one-time and recurring costs for each path, year by year.
Inventory seats and active editors
Start in the Microsoft 365 admin center to list every user with a Visio entitlement, whether through Visio Plan 1, Visio Plan 2 or a device-bound Visio LTSC 2024 license. Then pull usage data for the same accounts to separate active editors from people who opened a diagram once. Record the count for each license type, because a licensing path that fits 40 active editors can cost very differently from one that covers 400 viewers. The output is a table of licensed seats, active editors and occasional viewers, with the source of each number noted so finance can check it.
Count and classify diagram files
Search OneDrive, SharePoint and local drives for .vsdx, .vsd, .vst and stencil files, and sort them by type, owner, last modified date and location. Flag any .vdx files or files with embedded EMF images, since those need extra checks during conversion. Stencil and template libraries often carry more migration effort than individual diagrams, so count them separately. The output is a file inventory with a count per category and a short list of files that are shared with external parties or used in regulated processes.
Decide which exports you need
Ask each business owner whether diagrams must be delivered as PDF with embedded diagram content, as PNG or SVG for documents, or only kept as editable source. Draw.io's browser print dialog covers many single-diagram PDF needs without extra infrastructure. If you need PDF export with embedded diagrams at volume or in batch, the draw.io Docker image does not include an export server, so you must confirm whether to configure one. The output is a written list of export formats and volumes that drives the hosting scope in a later step.
Price the Visio renewal path from your quote
Ask your Microsoft partner or reseller for a written quote covering each option you are weighing: continued Visio Plan 1 or Plan 2 subscriptions, or Visio LTSC 2024 licenses. Confirm the term, currency, tax treatment, and whether the quote includes any Microsoft 365 licensing you already pay for. Keep the one-time license purchase separate from the recurring subscription lines in your spreadsheet. The output is one row per licensing option, with each cost tagged as one-time or recurring and the quote date and reference number recorded.
Scope draw.io hosting and conversion work
List the costs on the draw.io side: server hours and storage for the self-hosted Docker image or desktop installs, the internal or partner effort to configure and back up the service, and the conversion and review of your file inventory. Conversion effort depends on how many files need manual rework after import, since draw.io warns that Visio imports may look different, may lose interactive behavior and do not import embedded EMF images. Ask any implementation partner for a fixed-scope written proposal. Also include training time for editors. The output is a list of one-time items and recurring items, each with an owner and a pricing basis.
Set the comparison horizon
Choose a horizon long enough to show the renewal cycles you face, and anchor it to lifecycle dates you can verify. Microsoft's lifecycle pages list mainstream support for Visio LTSC 2024 until October 2029 and show Visio 2019 has reached its extended end date, so check the current lifecycle page before fixing the end date for your model. Include a note on what happens to any Visio license you buy at the end of its support window. The output is a stated start year, end year and the lifecycle source you used.
Compare totals year by year
Build one sheet per path with a column for each year in the horizon. Show one-time costs in the year they fall due and recurring costs in every year, then add a cumulative total row. Use the quote figures from step four, the scoped figures from step five, and your seat counts from step one, and change one driver at a time to see sensitivity, such as a seat reduction or a delayed migration. The output is a year-by-year comparison that a finance lead can audit, with every figure traceable to a quote, an inventory count or a named assumption.
Validate the model before you decide
Review the model with the people who own licenses, files and business processes, and confirm each assumption against its source. Ask the Microsoft partner to confirm the quote terms in writing, and ask any implementation partner to confirm the fixed-scope deliverables. Mark any line you could not source as an open question instead of filling it with an estimate. The output is a signed-off model with a short list of open items and their owners, ready for a renewal decision.
What a Visio license does not cover in a draw.io move
Dropping the Visio license does not remove the migration work. The first item to budget for is conversion checking. draw.io imports .vsdx files directly and converts .vsd and .vst files in the browser, but the draw.io documentation warns that imported Visio diagrams may look different from the original, may lose interactive behavior and do not bring across embedded EMF images. Someone who owns the diagrams needs to open each one that carries shape data, hyperlinks, layer settings or pasted pictures, compare it with the source file and record what changed. Ask which diagrams are client-facing or used in audits, because those are the ones that need a line-by-line check. The people who do this work are internal staff or an outside party you pay on a scope you agree in writing, and the cost recurs only if new Visio files keep arriving.
Custom stencils are the second item. draw.io imports .vssx and .vss stencils as shape libraries, so an organization with a shared stencil set can usually keep it, but the library must be loaded, named and distributed to each user or placed where the team can reach it. Stencils that mix in legacy formats or contain shapes that depend on Visio-specific behavior should be tested before you retire the source files. The storage and integration decisions come last. draw.io lists integrations with Google Drive, OneDrive and SharePoint, GitHub, GitLab, Nextcloud, ownCloud, ONLYOFFICE, Redmine, XWiki, Wiki.js, BookStack and MediaWiki, and diagrams are saved where the user chooses. Confirm which storage location your policy requires, who manages the connector credentials, and how access follows your existing groups. Check the draw.io integrations page against the systems you actually use before you plan around them.
Questions buyers ask about Visio and draw.io costs
Is draw.io really free to use, and what does Apache 2.0 mean for cost?
The draw.io source code is licensed under the Apache License 2.0, so the software itself carries no per-seat license fee for your organization. The cost sits elsewhere: the server or desktop rollout, the people who maintain it, and any integrations you add. Icon sets, stencil libraries and templates in the repository have separate terms, so check those before you reuse them in client deliverables. Also note that the maintainers do not accept pull requests, so any change you need to the code is something you maintain in your own fork or work around through configuration. Ask your legal team to confirm how the separate asset terms apply to your use.
How long does a Visio to draw.io migration take, and what sets the duration?
The duration depends mostly on the size and condition of your diagram library, not on the tool. Teams with a small set of .vsdx files and a few stencils can move them in a short window, while large libraries with embedded images and custom stencils take longer. The main variables are the number of files, how many stencils must become shape libraries, how many diagrams need manual checking after import, and how much interactive behavior your diagrams rely on. draw.io warns that imports may look different, may lose interactive behavior and do not bring in embedded EMF images. Ask any implementation partner for a fixed-scope plan with a file inventory first, since that inventory is what makes a timeline defensible.
Can our own team run the draw.io Docker hosting without outside help?
Yes, if you have a team that already runs containers and a reverse proxy. The draw.io deployment is based on the official jgraph/drawio Docker image, which is Tomcat-based and kept up to date with the production app at app.diagrams.net. Your team needs to decide on TLS, access control, backups of any storage you connect, and a process for applying new image versions as they are published. Many organizations keep this in-house for a stable internal tool and bring in a partner only for the initial setup, hardening or integration work. Confirm internally who will own patching and who receives release notices before you commit.
What skills does the team need to run draw.io and move the diagrams?
The core skills are container operations, web server administration and basic file handling. Someone needs to deploy and update the Docker image, configure access, and monitor the service. For the migration, a person who knows your Visio libraries well should review stencils, page layouts and any shapes that carry behavior, because automated import will not catch every difference. Training end users is mostly about the editor itself, which is familiar to people who have used any diagramming tool. Estimate training time from your own user count and the number of templates you want to standardize, and ask any provider to state those assumptions in the quote.
Does PDF export need an extra server, and what does that add to the cost?
The draw.io Docker image does not include an export server, so PDF export uses the browser's print dialog unless you configure one. That default keeps diagram data on your server, because no diagram data leaves it for an export. If your users need reliable PDF output with embedded diagrams from the server, you add an export service to run and maintain. That adds a second component to patch, capacity to plan, and a network path to secure. Ask for the export approach in the written scope, and decide whether browser printing is acceptable for your documentation process before you budget for another service.
Does the Visio LTSC 2024 mainstream date change the timing decision?
It matters if you are weighing a one-time license purchase against a move now. Microsoft's Fixed Lifecycle Policy lists mainstream support for Visio LTSC 2024 until October 2029, so a purchase made today has a defined support window. Visio 2019 reached its extended end date in October 2025, which shows how quickly older desktop versions drop off. A one-time license does not remove the need to plan an exit, because the desktop product still has a finite lifecycle. Check the lifecycle pages directly and compare the remaining support period with your planned migration window.
What should we ask for in a written quote for a draw.io project?
Ask for a written scope that lists each deliverable, each system in scope and each acceptance check. A useful quote separates one-time work, such as the hosting setup, the Visio import review and the training sessions, from recurring work, such as upgrades and support. Request the file inventory assumptions, the number of stencils to convert, the integrations included (for example, Nextcloud, GitLab or SharePoint), and whether PDF export is covered. Ask how each cost driver changes if your library grows, and what is excluded. DeployOpen does not publish a price list, and a quote follows from the written scope, so the clearer your inventory, the more comparable the quotes will be.
When to keep Visio and when to move
This sequence helps a team decide whether Visio's specific features justify its license cost or whether draw.io should take over the diagram estate. It ends with a pilot and a dated checkpoint that decide the move.
Inventory which Visio features you actually use
Ask a small group of power users, usually the people who build stencils and reference architectures, to list the features they depend on, such as BPMN or engineering shape sets, custom add-ins, data-linked shapes, or specific rendering of legacy drawings. Compare that list with the draw.io import differences documentation, which warns that Visio imports may look different, may lose interactive behavior and do not bring in embedded EMF images. Done when every feature is marked as required, replaceable or unused.
Measure the size and location of the diagram estate
Count the .vsdx, .vsd and .vst files and the stencil libraries, and note where they live, whether on desktops, OneDrive, SharePoint or network shares. A large, widely shared estate makes migration effort higher, while a small set of files used by a few people makes it lower. Record which files are embedded in other documents and which are referenced by external links. Done when you have a count, a storage location list and an owner for each shared library.
Pull current Visio license terms and lifecycle dates
Confirm with your Microsoft licensing contact or reseller whether your organization holds Visio Plan 1, Plan 2 or a one-time Visio LTSC 2024 license, and what each costs per user under your agreement. Ask which renewal dates apply and whether a Plan 2 price change is due. Check the Visio LTSC 2024 lifecycle page on Microsoft Learn for the mainstream support date. Done when you have a written list of license types, seat counts, renewal dates and the support horizon.
Compare total cost of ownership by component
Set the recurring or one-time license cost against the components of a draw.io deployment: the server or desktop hosting the Docker image or the desktop app, administrator time to keep the image current, optional export server work if PDF export with embedded diagrams is needed, storage, and training for editors. Note that draw.io itself carries no license fee under the Apache License 2.0, but that the other costs are paid to your staff or a services partner. Done when each cost line has an owner, a one-time or recurring label and a source for the number.
Pilot draw.io with a small group of editors
Choose a few editors and a handful of representative diagrams, import the .vsdx files and stencils, and check rendering, shape connections and any embedded images against the originals. Record what needed manual rework and how long it took each person. Keep Visio installed for the pilot group so comparisons are fair. Done when the group signs off on a short list of gaps and the rework effort is recorded for each diagram type.
Decide per diagram family and document the outcome
Split the estate into groups, such as process flows that import cleanly, architecture sets that need rework, and specialist diagrams that depend on Visio-only features. Move the groups that pass the pilot and keep Visio licenses only for the groups that need them. Write the decision and the reasons in a short memo for the budget owner. Done when each group has a documented decision and a named owner.
Reassess before the Visio LTSC 2024 support horizon
Before the mainstream support date for Visio LTSC 2024 listed on Microsoft Learn, repeat the inventory and cost comparison for any group still on Visio. Check whether the features that kept those groups on Visio are still required and whether the draw.io release notes show changes that matter to your files. Done when the review produces either a renewal decision with a reason or a migration plan with a target date set by your organization.
How DeployOpen works on this
DeployOpen plans and implements draw.io inside your own infrastructure, in your cloud account, data center or air-gapped network. Engagements are fixed-scope, with scope, deliverables and timelines agreed in writing before work starts. A quote follows from that written scope, so the cost components named on this page map directly to what you approve.
How we scope
- Inventory of Visio .vsdx, .vsd and .vst files, stencils and owners across OneDrive, SharePoint and desktops
- Written decision on hosting: Docker image, desktop app or both, matched to your network and access rules
- Cost components itemized: hosting, conversion, training and any export server, each with a named owner
How we build
- Deploy the official jgraph/drawio Docker image on your servers, with access controls set to your standards
- Convert and test sample Visio files, checking layout, shape fidelity and interactive behavior before bulk moves
- Configure an export server only if PDF export with embedded diagrams is in the written scope
How we hand over
- Runbook covering installation, upgrades, backups of your chosen storage location and rollback steps
- Conversion log listing each imported file, its status and the shapes that need manual rework
- Training session for editors and admins, with written materials for later onboarding
How we support
- Ongoing support, upgrades and continuous testing are available as a retainer after handover
- Upgrade planning that follows draw.io releases, reviewed against your own libraries and integrations
- Scheduled re-checks of the server and access settings, with findings documented for your records

