- Organisation
- GitHub
- Predecessor
- GitHub-operated data centres
- Successor
- Microsoft Azure
- Primary region
- Azure Central US
- Latest monolith share
- 45% peak
- Latest Git share
- 43% peak
- Facility retirement
- None confirmed
- Confidence
- High
Programme context
GitHub accelerated a plan to leave its self-operated data centres after reporting capacity constraints in its Virginia facility. The predecessor estate includes Virginia infrastructure identified in later operational reporting as IAD HUB, west-coast capacity, GitHub's own network and points of presence, bare-metal MySQL clusters, Git storage and core service infrastructure.
Declared direction: GitHub's leadership told staff that the company intended to move completely out of its own data centres and prioritise Azure migration work over some feature development.
Current reality: the move is an operating hybrid. Production traffic can shift between Azure and the original estate while extracted services, databases, storage and routing migrate at different rates.
Programme timeline and published targets
| Date | Milestone | Metric or decision | Interpretation |
|---|---|---|---|
| 8 Oct 2025 | Migration prioritised | Leadership directive to exit GitHub-operated data centres. | Programme confirmed |
| Feb 2026 | Early Azure ramp | Later reporting referenced monolith traffic growing from about 8%. | Baseline |
| May 2026 | Monolith ramp reaches 40% | Azure served a substantial share before a stability pause. | Partial cutover |
| 21 May 2026 | Stability incident | Monolith ramp was paused while additional controls were introduced. | Operational constraint |
| 17 Jun 2026 | Ramp resumes | Monolith movement restarted with new stability gates. | Restarted |
| 30 Jun 2026 | Git target missed | Target was 50%; reported peak was 43%. | Target miss |
| 8 Jul 2026 | June report published | 45% monolith peak and 43% Git peak in Azure. | Latest verified milestone |
| ~Oct 2027 | Original final horizon | Approximate 24-month data-centre-exit plan. | No revised date published |
Service and workload migration matrix
| Service or layer | Azure status by June 2026 | Original-estate status | Constraint or caveat |
|---|---|---|---|
| Monolith | 45% peak traffic | Majority of traffic remained outside Azure at the peak. | Ramp paused after a May stability incident and resumed with additional gates. |
| Git traffic — HTTP and SSH combined | 43% peak | 57% remained outside Azure at the reported peak. | Further movement limited by latency and routing architecture. |
| SSH Git traffic | Not routed through Azure edge | Continued reliance on the original path. | No suitable read/write split at the edge. |
pullsd | 100% anonymous pull-request reads | Other pull-request paths are not described as fully retired. | Metric covers anonymous reads, not the complete pull-request workload. |
reposd | Reached 50% read traffic | Ramp was turned down and original capacity remained required. | Redis-capacity constraint; re-ramp pending additional capacity. |
| Users service | About 500,000 QPS offloaded | Primary database remained active. | Offload reduces load; it does not prove database migration. |
| API rate limiting | About 97% at Gateway | Residual path not fully detailed. | One control-plane function, not a measure of estate completion. |
| Authentication and authorisation tables | Physical migration scheduled for early July | Original database path remained material. | No reviewed public report confirms the scheduled move completed. |
| Bare-metal MySQL clusters | No completed move reported | Core backbone remained in the original estate. | Stateful database migration is materially harder than stateless services. |
| Data-centre facilities | No facility exit confirmed | Virginia and other GitHub-operated infrastructure remained part of production. | Traffic cutover does not prove physical closure or lease exit. |
Operational and architectural constraints
- Stability: a May incident led to a roughly month-long pause in monolith ramping.
- Latency: GitHub expected Git traffic to plateau near 45% while avoiding latency regressions.
- Routing: SSH lacked the edge read/write separation needed for the same migration path as HTTP.
- Capacity:
reposdwas turned down after reaching 50% because Redis capacity was insufficient. - State: the primary database and bare-metal MySQL clusters remained difficult boundaries.
- Timetable: the June Git target was missed and GitHub did not publish a revised short-term or final completion date.
Traffic share versus migration completion
The reported 45% monolith and 43% Git figures measure routed production traffic at peak. They do not measure the share of applications, databases, storage, hardware, network capacity or facilities migrated. A traffic shift can be reversed, as the reposd reduction demonstrates.
Known unknowns and monitoring questions
- Whether the early-July authentication and authorisation table move completed.
- The next monolith and Git traffic percentages after June.
- When SSH Git traffic will begin using Azure edge routing.
- When
reposdwill re-ramp after Redis expansion. - The migration plan for bare-metal MySQL clusters and primary storage.
- Whether GitHub will revise its approximate October 2027 completion horizon.
- Which facility will be the first to close and what constitutes a verified facility exit.
- The amount of Azure capacity reserved for resilience, failback and regional expansion.
PlatformTrace analysis
This programme is unusually transparent because GitHub publishes service-level and traffic milestones. That transparency creates a second responsibility: the metrics must not be converted into a simplistic percentage-complete score.
The evidence shows that extracted and stateless services can progress faster than core stateful infrastructure. pullsd, Gateway rate limiting and the users service demonstrate substantial production value in Azure, while SSH routing, MySQL, the primary database and facility exit remain unresolved. The programme is advanced and operationally consequential, but still depends on the original estate.
Signals potential clients should watch
- service ramps that remain stable for a full reporting period;
- database or storage cutovers rather than traffic-only movement;
- SSH edge routing;
- retirement of an entire workload tranche;
- closure or vacating of a named facility;
- a revised completion date following the missed June target.
Evidence ledger
- GitHub will prioritise migrating to Azure over feature developmentIndependent reporting with GitHub spokesperson confirmation · 8 October 2025 · establishes leadership directive, Virginia capacity constraint and complete data-centre-exit intent.
- GitHub availability report — May 2026GitHub-owned operational report · 11 June 2026 · establishes earlier traffic ramp, stability incident and programme trajectory.
- GitHub availability report — June 2026GitHub-owned operational report · 8 July 2026 · proves traffic peaks, service-level cutovers, target miss, constraints and lack of a revised target.
- Evolution of GitHub's data centresGitHub engineering history · 12 October 2017 · provides predecessor-estate context including GitHub-operated network and data-centre infrastructure.
Corrections and update history
- Initial verified record published with June traffic metrics and hybrid-operation boundary.
- Expanded into a service-level dossier covering targets, traffic metrics,
pullsd,reposd, users-service offload, SSH, authentication tables, MySQL and facility-retirement limitations.
No correction is currently open. The next availability report and any database, service or facility retirement will be appended as dated milestones.