Skip to content
Notifications
Clear all

Migrated from CircleCI to GitHub Actions for a 30-eng team - 6 month cost report

2 Posts
2 Users
0 Reactions
2 Views
(@j_carter)
Estimable Member
Joined: 4 months ago
Posts: 113
Topic starter   [#7674]

Hi everyone. I've been lurking here for a while, reading about CI/CD cost structures as my team was planning a major migration. We finally pulled the trigger, moving our 30-engineer team from CircleCI to GitHub Actions about six months ago. I wanted to share a concrete breakdown of what the financial impact has been, since I found these kinds of real-world reports so helpful when we were researching.

**Our Setup Before (CircleCI):**
* We were on a "Performance" plan, paying per credit.
* Average build volume: ~45,000 build minutes per month.
* Mix of Linux, macOS, and Docker-based workflows.
* Primary pain point: cost predictability. A few heavy months or a configuration hiccup could lead to surprising invoices.

**The Migration & Setup:**
We moved incrementally, team by team, over about 8 weeks. The biggest lift was translating our complex `config.yml` files into Actions workflows and getting comfortable with the Actions ecosystem (composite actions, reusable workflows). The integration with issues and PRs is, as many say, seamless.

**6-Month Cost Analysis:**

| Metric | CircleCI (Last 6 mo. avg.) | GitHub Actions (Last 6 mo.) | Notes |
| :--- | :--- | :--- | :--- |
| **Monthly Bill** | ~$4,200 | ~$1,900 | This is the headline number for us. |
| **Avg. Build Minutes/Mo** | 45,000 | 48,000 | Slight increase due to more parallel testing. |
| **Primary Cost Drivers** | Credit consumption for macOS & larger runners. | Mostly GitHub-hosted runners (Linux). We use self-hosted runners for a few specific, high-memory jobs. | The free minutes included with our GitHub Enterprise plan cover a significant base layer. |
| **Infra Overhead** | None (managed). | Low. A single, auto-scaling AWS EC2 instance for our self-hosted runner (~$160/mo). | |

**Key Takeaways:**
* The savings are substantial—over 50% for our usage patterns. It has made our CFO much happier.
* The cost structure feels more transparent and, crucially, *predictable*.
* We did invest engineering time in the migration and in maintaining our self-hosted runner config, but that was a one-time cost that paid for itself quickly.
* We miss a few CircleCI features (like their insights dashboards), but the trade-off has been worth it for us.

I'm curious if others have seen similar ratios, or if your experience was different based on your build profile. For teams our size, the move was a clear win on the cost front.


Migration is never smooth.


   
Quote
(@lucas)
Eminent Member
Joined: 1 week ago
Posts: 24
 

Lucas Marchetti, SRE lead at a ~150-person fintech. We run hundreds of services on GKE, use both platforms daily for deployment and testing pipelines.

1. **Cost structure:** CircleCI credits are a black box, I've seen 50% cost spikes from queue time and macOS runners. GHA's free minutes and clear per-minute pricing for larger runners is easier to forecast.
2. **Config debt:** CircleCI's orb ecosystem is more controlled but creates vendor lock. GHA's YAML sprawl is real, you need strict internal conventions on composite actions to avoid copy-paste hell.
3. **Runner management:** GHA's self-hosted runners on our own GCP VMs cut Linux job costs by ~65% for data-heavy integration tests. CircleCI's similar feature requires maintaining machine images, which adds ops overhead.
4. **Enterprise readiness:** CircleCI has better audit trails and access controls out of the box. For GHA at scale, you're buying a third-party tool like Teller or configuring very granular repository permissions.

Pick GHA if you're already on GitHub and can invest in internal workflow templates. Pick CircleCI if you need strict compliance reporting and have complex, multi-repo pipeline dependencies. Tell me if you're mostly on-prem and what your security team's compliance requirements are.


Benchmarks > marketing.


   
ReplyQuote