
GitHub announced on December 16, 2025 that it would charge $0.002 per minute for self-hosted runners—developers’ own hardware—starting March 1, 2026. Within 24 hours, the company reversed course after developer outrage erupted across community forums. The controversy centered on a fundamental absurdity: charging developers per-minute to use infrastructure they already own and pay for.
This represents one of the fastest corporate reversals in recent tech history. It also exposes the tension between Microsoft’s monetization strategy and GitHub’s developer-first culture that made the platform successful.
Charging Developers for Their Own Hardware
The proposed pricing would charge $0.002 per minute for self-hosted runners—compute that runs on users’ own machines, not GitHub’s infrastructure. Developers would pay GitHub for job orchestration while providing their own CPU, storage, and bandwidth.
Enterprise developers quickly calculated the impact. Bills would jump from $0 to $3,500 per month for running CI/CD pipelines on hardware they already own. One user calculated: a 2-hour build with 105 checks equals $25.20 per build—all on user-owned infrastructure.
The community erupted. “If it takes MY machine 30 minutes to do a build, you’re going to charge me for that when it places no load on YOUR services?” wrote one developer in GitHub’s official discussion thread. Another called it a “complete insult to those of us who have been here over a decade.”
The per-minute model created perverse incentives. Slower builds would cost more money, even though the compute happened on hardware users already paid for. It violated the basic expectation that self-hosted means free from platform fees.
From Announcement to Retreat in Under 24 Hours
The timeline tells the story. December 16: GitHub announces the pricing change. December 17: GitHub “postpones” the fee indefinitely.
GitHub’s reversal statement acknowledged missing the mark “by not including more of you in our planning.” However, the statement lacked an apology and crucially used “postponed”—not “canceled.” The company made no commitment to keep self-hosted runners free forever.
The speed of the reversal reveals how severe the backlash was. Moreover, GitHub didn’t adjust pricing or offer grandfather clauses. They shelved the entire plan within hours, suggesting internal panic at the volume and intensity of developer opposition.
Meanwhile, the hosted runner price reduction GitHub announced simultaneously continues on schedule (39% cheaper starting January 1, 2026). Only the self-hosted fee got shelved—the part that threatened to drive users to competitors.
Microsoft’s Pricing Paradox
Here’s the irony: Microsoft’s own Azure DevOps product offers unlimited self-hosted CI/CD for a flat $15 per month per parallel job. GitHub’s proposed per-minute model would easily exceed that for high-volume users.
Do the math. At $0.002 per minute, just 10 hours of daily builds costs $72 per month. Azure DevOps? $15 flat. GitLab? Zero platform fees for self-hosted runners. Jenkins? Completely free and open source.
Developers immediately called out this contradiction. Why would one Microsoft product (Azure DevOps) undercut another (GitHub)? The comparison made GitHub’s pricing look especially tone-deaf and highlighted alternatives many hadn’t seriously considered before.
The community response was swift: “Time to move to GitLab!” became the rallying cry in discussion threads with hundreds of upvotes.
Related: ByteDance UI-TARS Desktop: #1 GitHub Trending Today
What “Postponed” Really Means
Don’t assume self-hosted will remain free indefinitely. Furthermore, GitHub’s statement said “postponing” to “re-evaluate our approach”—not canceling the fee or committing to keep self-hosted free forever.
The company still cites “real costs” of orchestration infrastructure. They may return with tiered limits, grandfather clauses, or alternative pricing models. The uncertainty creates risk for organizations relying heavily on self-hosted CI/CD.
This follows a pattern. Unity announced runtime fees, faced backlash, and eventually reversed—but not before damaging developer trust. Twitter/X repriced API access. Consequently, platforms keep testing how much they can charge for previously free features.
When developers unified and vocalized opposition, GitHub backed down in record time. However, the trust damage lingers. “Postponed” keeps developers in limbo, uncertain about future costs for critical infrastructure.
The Path Forward
Developer communities won this round, but the war isn’t over. GitHub may try again with different pricing or limits. Here’s what developers should do now:
Evaluate alternatives seriously. GitLab offers zero platform fees for self-hosted runners. Azure DevOps charges $15 per month flat—ironically cheaper than GitHub’s proposal. Jenkins remains free and open source for those willing to manage infrastructure.
Additionally, avoid complete platform lock-in for critical infrastructure. Maintaining optionality matters when vendors can change pricing overnight. Design CI/CD workflows that could migrate if needed.
Monitor platform announcements closely. The “postponed” language signals GitHub hasn’t abandoned monetization plans for self-hosted infrastructure. When they return—and they likely will—the community needs to be ready to push back again if the pricing remains unreasonable.
Most importantly: recognize that unified developer opposition works. GitHub’s 24-hour reversal proves vocal, coordinated backlash can still force platform vendors to retreat. Nevertheless, it requires community action—not passive acceptance of changes that fundamentally alter the value proposition.






