Microsoft Visio cost vs self-hosted draw.io

Visio is paid per user through Plan 1, Plan 2 or a one-time LTSC license, while draw.io carries no license fee and its cost is hosting, conversion, training and support. This page shows how to weigh those components against your own user count and file estate.

On this page

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 componentMicrosoft Visio (Plan 1, Plan 2 or LTSC 2024)Self-hosted draw.ioOne-time or recurring
License or subscriptionPer-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.
HostingDesktop 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.
ImplementationInstallation 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 conversionNative .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 librariesStencils 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.
TrainingStaff 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 upgradesCovered 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 skillsVisio 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.

  1. 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.

  2. 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.

  3. 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.

  4. 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.

  5. 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.

  6. 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.

  7. 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.

  8. 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.

Costs teams forget on each side

The license fee is the easiest number to compare, and it is rarely the largest. Costs on the Visio side come from upgrade cycles and fixed desktop lifecycles, while costs on the draw.io side come from running and maintaining a server you own. Check both columns before setting a budget.

Visio lifecycle and upgrade cycles

Visio LTSC 2024 is a one-time purchase, but Microsoft's Fixed Lifecycle Policy sets when it stops receiving mainstream support, listed until October 2029. Visio 2019 has already reached its extended end date in October 2025, so older desktop licenses can force a purchase or subscription decision on a fixed date. Ask your reseller or license agreement holder which edition each user is entitled to and how upgrades are billed, and budget for the next purchase at the lifecycle date, not at renewal.

Patching the Tomcat-based image

The official jgraph/drawio Docker image runs on Tomcat, and your team owns its base operating system, Java runtime and container rebuilds. Someone must track each draw.io release, rebuild the image and roll it out, because the image does not update itself. Confirm who is on call for that work, how long a rebuild and rollout takes in your change process, and whether your scanner can see the image contents.

Certificates, access and backups

A self-hosted editor needs a TLS certificate that renews, single sign-on or access control for named users, and backups of any storage the team uses for diagrams. Each of these is a recurring task that sits outside the draw.io product itself. Ask who renews certificates, who removes leavers from access groups, and where a restore point for shared diagram folders is kept.

Custom changes without upstream merges

The draw.io project does not accept pull requests, so any change you make to the editor, templates, stencils or the Docker image stays in your fork or your build. Each upstream release then needs a review of your patches before it can be adopted. Budget for that merge work and record every change so a later upgrade does not silently drop it.

Training and template migration

Visio users know their ribbon, shortcuts and stencil habits, and draw.io uses a different layout and different shape libraries. Plan time for staff to learn the editor, rebuild the team's stencils as custom libraries and check how imported diagrams render. The import documentation warns that Visio files may look different, lose interactive behavior or drop embedded EMF images, so the review effort depends on how many diagrams carry those features.

Deciding on an export server

The Docker image has no export server, so PDF export uses the browser print dialog unless you configure one. A separate export service is another system to host, patch and secure, and it is the only option that changes how diagram data moves through your network. Decide early whether print dialog output is acceptable for your publishing workflow, and if not, ask your architect to cost that service as its own line item.

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.

  1. 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.

  2. 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.

  3. 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.

  4. 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.

  5. 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.

  6. 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.

  7. 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

Sources and further reading

Talk to our team.

Tell us what you're working on, whether it's a deployment, an audit, a security test or a cyber range. You'll speak with an engineer who can help you scope it.

  • 30-minute call: free, with no obligation.
  • NDA on request: we can sign before you share details.
  • Clear next steps: a scope and plan after the call.