Azure DevOps vs GitHub in 2026: Pricing, Roadmap and Who Should Stay

Nov 10, 2026 · 11 min · Ajay Kumar

Every few months a client asks me whether Azure DevOps is dying, usually right after someone in a leadership meeting read that Microsoft "picked GitHub". The honest answer in November 2026 is more boring and more useful than either camp's version: Microsoft has said, in writing, that the newest agentic features ship on GitHub first, and it is also still shipping Azure DevOps features every quarter, with a published roadmap running into 2027. This post compares Azure DevOps and GitHub as they stand today: what Microsoft has actually committed to, how Boards, Repos and Pipelines map to Issues, Projects and Actions, what GitHub Advanced Security costs on each side, what the migration tooling does and does not move, and which teams should stay put.

Is Azure DevOps being deprecated in 2026?

No. There is no end-of-life date for Azure DevOps Services, and the Azure DevOps roadmap, last updated on 6 November 2026, lists Boards, Repos, Pipelines and Test Plans work scheduled for 2026 Q4 and 2027 Q1. That includes Copilot code reviews for Azure Repos (public preview, done in 2026 Q3), stage-level traceability for YAML pipelines, GitHub-hosted agent sizes for Pipelines and a long list of Test Plans items.

What changed is the direction of the new work. In a 2 June 2026 post, Microsoft's Rajesh Ramamurthy wrote that "GitHub is where the newest AI-powered development workflows are taking shape" and that planning, coding, review and security agents ship on GitHub first. Teams that need more time are told Microsoft is "continuing to invest in Azure DevOps", with the emphasis on security and code quality. An earlier November 2025 post was blunter about repositories: move them to GitHub to get Copilot's agentic features, and keep Azure Boards and Pipelines if you like them.

The organisational context points the same way. When Thomas Dohmke announced on 11 August 2025 that he would leave as GitHub's CEO, Microsoft did not replace him and instead moved GitHub under its CoreAI organisation, as SiliconANGLE reported. And Azure DevOps has already given up one job entirely: public projects are retired. New ones cannot be created since April 2026, and existing ones convert to private in 2027, with Microsoft stating it is "consolidating on GitHub" for open source.

My reading: Azure DevOps is in a long, funded maintenance-plus mode. Repos is the part most clearly being steered towards GitHub; Boards, Pipelines and Test Plans have no replacement Microsoft is pushing you into.

Azure DevOps vs GitHub: the feature map

The products overlap less neatly than the marketing suggests. Azure DevOps is five services you can enable separately. GitHub is a repository host that grew planning, CI and packages around the repo.

Job Azure DevOps GitHub Notes Source
Planning Azure Boards (work item types, process templates, queries, delivery plans) Issues and Projects Boards can link to GitHub commits and PRs, and can assign work to the Copilot coding agent Microsoft, Nov 2025
Source control Azure Repos (Git and TFVC) GitHub repositories Agentic features land on GitHub first Microsoft, Jun 2026
CI/CD Azure Pipelines (YAML and Classic) GitHub Actions Pipelines can build GitHub repos; Classic release pipelines still exist Roadmap
Manual and exploratory testing Azure Test Plans No direct equivalent The main reason regulated teams stay Pricing
Packages Azure Artifacts (2 GiB free) GitHub Packages Both cover npm, NuGet, Maven and containers Pricing
Security scanning GitHub Advanced Security for Azure DevOps GitHub Secret Protection and Code Security Same CodeQL engine, same per-committer prices Pricing, GitHub changelog
Agent tooling Azure DevOps MCP Server (GA), Copilot Code Review (preview) Copilot coding agent, Agent HQ, Code Quality GitHub has the larger surface Microsoft, Nov 2025, Roadmap

Two practical differences matter more than the table. First, Azure Boards is still a far stronger tool for organisations that run formal processes: inherited process templates, custom work item types and fields, and cross-team delivery plans. GitHub Projects has improved, but teams that report on Features, Epics and test coverage to an auditor tend to miss Boards within a month. Second, Azure Pipelines has deployment concepts GitHub Actions models differently. Environments with approvals and checks, required templates, exclusive locks and deployment jobs with runOnce, rolling and canary strategies are first-class in Pipelines. GitHub has environments with protection rules and deployment branches, which covers most needs, but the "extends a required template" control is easier to enforce in Azure DevOps. I walk through those pieces in the Azure Pipelines YAML guide.

Azure DevOps pricing vs GitHub pricing in 2026

Per seat, GitHub is cheaper at the low end and much more expensive at the top. Azure DevOps charges $6 per Basic user per month after the first five free users, $52 for Basic plus Test Plans, and nothing for Stakeholders, who can view and edit work items. GitHub's pricing page lists Team at $4 and Enterprise at $21 per user per month. One detail that changes the arithmetic for larger shops: the Azure DevOps pricing page states that "Azure DevOps Basic is included in GitHub Enterprise", so a GitHub Enterprise seat also covers Boards and Pipelines for that user.

CI compute is where the models differ. Azure Pipelines sells capacity: one free Microsoft-hosted parallel job with 1,800 minutes a month, then $40 per extra Microsoft-hosted parallel job or $15 per self-hosted parallel job, each with unlimited minutes. Paid hosted jobs can run for up to 360 minutes each, against 60 on the free tier, per the hosted agents docs. GitHub Actions sells minutes: after the plan's included allowance (3,000 a month on Team, 50,000 on Enterprise), a standard Linux 2-core runner is $0.006 a minute, Windows $0.010 and macOS $0.062. GitHub cut those hosted rates by up to 39 percent on 1 January 2026, and it postponed a planned $0.002-per-minute charge for self-hosted runners within days of announcing it in December 2025, per Techzine. As of today GitHub's runner pricing reference lists no self-hosted platform charge.

The break-even is simple division. A $40 Azure parallel job costs the same as 6,667 Linux minutes on GitHub, or 4,000 Windows minutes. If a pipeline lane is busy for more than about five hours on each of 22 working days, Azure's flat fee wins; if your CI is bursty and light, GitHub's included minutes may cover it entirely.

Monthly CI cost for one Linux build lane, list prices, USD Azure Pipelines (flat) GitHub Actions Azure hosted parallel job $40, unlimited minutes Azure self-hosted job $15 plus your own VM GitHub, 5,000 min $30 GitHub, 10,000 min $60 GitHub, 43,200 min (24x7) $259.20 Break-even: $40 / $0.006 = 6,667 Linux minutes, or 4,000 Windows minutes at $0.010 GitHub minutes exclude the plan allowance (3,000 Team, 50,000 Enterprise). Scale: 1.5 units per dollar.
List prices from the Azure DevOps Services pricing page and GitHub's Actions runner pricing reference, November 2026. Machine sizes differ, so treat this as a pricing model comparison, not a performance one.

Azure Pipelines now also offers a per-minute option. Organisations can enable GitHub-hosted agents for Azure Pipelines, billed per minute with no free tier, which adds 8-core and 16-core Linux and Windows machines and Apple Silicon macOS images to a platform whose standard hosted agent is still a 2-core, 7 GB VM. They run on the same infrastructure as GitHub Actions larger runners, which tells you something about where Microsoft's CI compute is converging.

GitHub Advanced Security for Azure DevOps: same price, different surface

Security is the one line item that does not favour either side. GitHub split Advanced Security into two products on 1 April 2025, Secret Protection at $19 and Code Security at $30 per active committer per month, and the Azure DevOps pricing page lists the same two products at the same two prices for GHAzDO. A 50-committer team buying both pays $2,450 a month on either platform, which in most of my audits is more than the seats.

What differs is the surrounding tooling. On GitHub, Copilot Autofix, Dependabot, push protection and the security overview are mature. On Azure DevOps the roadmap shows Copilot Autofix for code scanning and dependency alerts in public preview in 2026 Q4, malware alerts for dependency scanning shipped in Q3, and CodeQL default setup on pull request triggers due in Q4. GHAzDO is a genuine product, not a stub, but it trails GitHub by a year or so. If supply-chain security is the reason for the evaluation, that gap is worth more than the seat price.

What the migration tooling moves, and what it leaves behind

GitHub Enterprise Importer (GEI) is the supported path for repositories. Per GitHub's docs, it moves Git history, pull requests with their comments, work item links and attachments, and repository branch policies. It does not move Git LFS objects (you push those afterwards), user-scoped or cross-repo branch policies, Boards or Pipelines. It supports Azure DevOps Services only, not Azure DevOps Server, and has a 40 GiB repository limit and a 400 MiB per-file limit during migration (100 MiB on GitHub afterwards). It also does no delta migrations, so you freeze the repo, migrate, then cut over.

The gh ado2gh extension wraps GEI and can rewire existing Azure Pipelines to build from the new GitHub repo and connect Azure Boards, so a "repos only" move keeps the rest of Azure DevOps working:

# GEI for Azure DevOps, gh-gei release v1.35.0 (28 Oct 2026)
gh extension install github/gh-ado2gh

# Tokens: an Azure DevOps PAT and a GitHub PAT with org admin rights
export ADO_PAT="..."   # never commit these
export GH_PAT="..."

# Generate a PowerShell script covering every repo in the ADO org.
# --all adds every optional step: team creation, repo locking and pipeline rewiring.
gh ado2gh generate-script --ado-org contoso --github-org contoso-gh --all --output migrate.ps1

# Or one repo by hand
gh ado2gh migrate-repo --ado-org contoso --ado-team-project Payments \
  --ado-repo payments-api --github-org contoso-gh --github-repo payments-api

# Point the existing YAML pipeline at the GitHub repo (dry run first)
gh ado2gh rewire-pipeline --ado-org contoso --ado-team-project Payments \
  --ado-pipeline payments-api-ci --github-org contoso-gh --github-repo payments-api \
  --service-connection-id <github-service-connection-guid> --dry-run

Microsoft has also announced Enterprise Live Migrations in preview, which migrate many repositories together without locking the Azure DevOps side, behind a waitlist. For pipelines themselves, GitHub Actions Importer can audit, forecast and convert Azure Pipelines to workflows, but it lists secrets, service connections, environments, self-hosted agents and pre-deployment approvals as manual work, and does not support deployment gates at all. Those are exactly the parts that took the most care to build. I covered the same pattern for Jenkins in the Jenkins to GitHub Actions migration guide: the converter does the syntax, people do the trust boundaries.

Who should stay on Azure DevOps, and who should move?

I would stay on Azure DevOps, with no guilt, if most of these are true: you use Test Plans for manual or regulated testing; your planning and reporting run on Boards process templates with custom fields; your release process depends on environments with approvals, required templates and exclusive locks; you are on Azure DevOps Server on-premises (GEI cannot read it directly); or you have hundreds of Classic release pipelines and no budget to rewrite them. The roadmap for those areas is active, and nothing in Microsoft's statements suggests a forced move.

I would move repositories to GitHub soon if you want the Copilot coding agent, agent orchestration and code review features in their most complete form, if you publish open source (public projects are going away regardless), if you hire many engineers who already live in GitHub, or if you are paying for GitHub Enterprise anyway and therefore already own Azure DevOps Basic for every seat. The hybrid that Microsoft itself describes, GitHub repos plus Azure Boards and Azure Pipelines, is a supported end state, not a halfway house. Microsoft says its own Copilot, Agents and Platform team moved 1,575 repositories from Azure Repos to GitHub Enterprise on that model.

And I would move CI to GitHub Actions only when there is a reason beyond fashion: you want one place for code, review and automation, or your pipelines are light enough that included minutes cover them. Whichever platform runs the pipeline, the work that protects production is the same: OIDC federation instead of stored cloud keys, pinned and reviewed templates, protected environments, and someone who reads the deploy logs. Agents opening pull requests make that discipline more important, not less, because the volume of changes reaching the pipeline goes up while the number of humans reviewing them does not.

FAQ

Is Azure DevOps going away?

There is no announced end-of-life date. Microsoft's roadmap lists Azure DevOps features through 2027 Q1, and its June 2026 post says it continues to invest in Azure DevOps, while shipping the newest agentic features on GitHub first. Only public projects are being retired, with conversion to private in 2027.

Is GitHub cheaper than Azure DevOps?

Per seat, GitHub Team at $4 is cheaper than Azure DevOps Basic at $6, but GitHub Enterprise at $21 is far more expensive, though it includes Azure DevOps Basic access. For CI, an Azure hosted parallel job at $40 a month beats GitHub's $0.006 Linux minute once a lane runs more than about 6,667 minutes a month.

Can I use GitHub repos with Azure Boards and Azure Pipelines?

Yes. Azure Pipelines builds GitHub repositories through a GitHub service connection or the Azure Pipelines GitHub App, and Azure Boards links work items to GitHub commits and pull requests. The gh ado2gh tool can rewire existing pipelines and set up the Boards integration during a migration.

Does GitHub Enterprise Importer migrate Azure Pipelines?

No. GEI migrates repositories, pull requests and branch policies. Pipelines either stay in Azure DevOps and are rewired to the GitHub repo, or are converted with GitHub Actions Importer, which leaves secrets, service connections, environments and approvals for you to rebuild.

If I were running an Azure DevOps estate this quarter, I would not start a migration project because of a headline. I would convert every Azure Resource Manager service connection to workload identity federation on the Entra issuer before the old Azure DevOps issuer retires on 1 July 2027, turn on Secret Protection, write down which teams depend on Test Plans and Boards process customisation, and pilot one product team on the GitHub-repos-plus-Azure-Pipelines hybrid to see whether the agent features earn their keep. If they do, the repos move. Boards and Pipelines can wait until they give you a reason.

Related: GitHub Actions vs GitLab CI vs Jenkins (2026): Pricing, Runners, Security, How to Use GitHub Actions OIDC With AWS, GCP and Azure (2026) and Platform Engineering vs DevOps vs SRE in 2026: 90% Now Have a Platform.

Spot an error or something out of date? Email me and I will fix it and log it on the corrections page.

I'm Ajay Kumar — I build and operate PandaStack, an open-source Firecracker microVM cloud for AI agents, and write about the infrastructure and tooling around it.

Need this kind of infrastructure work? See what I do or email hello@ajayk.sh.


Related