CI cost figures are vendor list prices verified April 2026. Actual cost depends on plan, concurrency, and discount terms. Some links are affiliate links. See disclosure.

Last verified April 2026

Frequently asked questions about CI/CD cost

The questions finance is asking you. Answered with numbers, not hedging.

Pricing basics

How much does a CI/CD pipeline cost?+

A typical team of 10 developers spends $150 to $800 per month on CI/CD depending on platform, OS mix, and caching discipline. A 3-person startup can run entirely on free tiers (GitHub Actions Free plan: 2,000 min/month; GitLab CI Free: 400 min/month). A 20-person team with active macOS builds pays $300-800/month on GitHub Actions. A 100-person org on GitHub Actions Enterprise with macOS builds can spend $5,000-15,000 per month. Use the interactive calculator on the homepage to model your specific workload.

Read more →
Why do macOS builds cost 10x Linux on GitHub Actions?+

GitHub leases Apple hardware to support macOS builds. Apple's licensing agreements and hardware constraints mean GitHub cannot offer macOS at Linux economics. The 10x multiplier ($0.08/min vs $0.008/min) reflects the real hardware cost difference at cloud scale. For teams running more than 5,000 macOS minutes per month, self-hosting Mac Minis via MacStadium or Scaleway is often cheaper. Depot offers macOS runners at 0.5x GitHub's macOS rate ($0.04/min).

Read more →
What did the 2026 GitHub Actions platform fee change?+

In March 2026, GitHub introduced a $0.002 per minute platform fee on self-hosted runner minutes. This applies to every minute consumed by self-hosted runners connected to GitHub Actions workflows, in addition to whatever the runner infrastructure costs. For a team at 25,000 self-hosted minutes per month, this adds $50/month permanently. It materially shifted the break-even for self-hosted deployments.

Read more →
Is CircleCI's credit system a cost trap?+

CircleCI credits are not a trap, but they are opaque. The credit cost per minute varies by resource class: Docker medium at $0.006/min equivalent, large at ~$0.012/min, macOS large at ~$0.08/min. The 6,000-credit free tier covers approximately 1,000 minutes on Docker medium. The confusion arises because the credit system obscures the per-minute cost that competitors display directly. Use the calculator with CircleCI rates to compare apples to apples.

Read more →
Why is Buildkite billed per-user rather than per-minute?+

Buildkite's model: they charge $30/user/month for the platform (orchestration, UI, analytics) and you run your own agents on your own infrastructure. There is no per-minute charge from Buildkite itself. The cost model is therefore: Buildkite platform fee + your EC2/GKE infrastructure cost. For large teams (100+ users), the $3,000+/month platform fee is significant. For teams with massive workloads (200,000+ minutes/month), the total-cost comparison vs GitHub Actions can favour Buildkite.

Read more →

Platform selection

Which CI/CD is cheapest for a startup?+

For a startup under 3,000 minutes per month, GitHub Actions Free plan (2,000 min/month included) or GitLab CI Free (400 min/month, but free for public projects) cover most needs at zero cost. If you need more minutes and run Linux-only, BuildJet at $0.003/min is the cheapest paid option. CircleCI's free tier (6,000 credits) can be competitive for small Docker-heavy workloads.

Read more →
Should I switch from GitHub Actions?+

Switch if your monthly CI cost is significant AND either an external runner saves you 40% or more, or you have a Windows-heavy workload Azure DevOps handles cheaper. For most teams under $200/month, the switching cost (migration time, testing, team retraining) outweighs the savings. Optimise your existing GitHub Actions workflows first using the 12 anti-patterns guide. Most teams recover 40-60% of waste without switching platforms.

Read more →
Is Jenkins really free?+

Jenkins software is free. The infrastructure and maintenance are not. A 20-person team on self-hosted Jenkins typically pays: $50-150/month EC2 cost, $200-600/month engineer maintenance time (2-4 hours/month at $100-150/hour), storage and egress charges, and security patch overhead. Total real cost: $800-2,500/month. The software-is-free framing ignores 60-80% of the real cost.

Read more →
GitHub Actions vs GitLab CI: which wins on cost?+

For Linux-only workloads at moderate scale (3,000-20,000 min/month): GitLab Premium ($29/user) with 10,000 included minutes is often cheaper than GitHub Actions with overage. For macOS workloads: GitHub Actions is often cheaper because GitLab has no macOS shared runners on SaaS. For all-in-one (SCM + CI + registry + security): GitLab Premium is the better value proposition at 5-50 person scale. At 100+ person scale, the per-seat price of GitLab Enterprise or Ultimate changes the math significantly.

Read more →

External runners

Is Depot safe to use?+

Depot is SOC 2 Type II certified, uses ephemeral runners isolated per job, supports OIDC federation for secrets, and offers an on-premises deployment option. Use OIDC instead of long-lived secrets, pin all workflow steps to verified action versions, and use Depot's on-prem option if your data-residency policy requires it. Depot is used in production by thousands of teams including Shopify and Ramp.

Read more →
Depot vs BuildJet vs Blacksmith: which is best?+

Need macOS? Depot (only one that supports macOS at $0.04/min vs $0.08 GitHub-hosted). Need cheapest ARM Linux? BuildJet or Blacksmith ($0.002/min). Need AWS-native with SOC 2? Blacksmith. Need fastest cold boot (~3s)? Namespace. Need open-source stack? Ubicloud. For a general-purpose Linux + ARM workload, BuildJet is cheapest on pure rate. Depot is most mature with the best case-study evidence base.

Read more →
How do I migrate from GitHub-hosted runners to Depot?+

Change runs-on: ubuntu-latest to runs-on: depot-ubuntu-24.04 in your workflow files. That is the full migration for most workflows. Depot's images are compatible with GitHub-hosted images. The typical migration takes 30-60 minutes and requires no changes to your actual build scripts. Test on a branch, verify cache behaviour, then roll out across your workflows.

Read more →
What is RunsOn and when does it make sense?+

RunsOn is a managed control plane for GitHub Actions on your own AWS. You provide the AWS account; RunsOn handles runner lifecycle, spot instance management, and GitHub integration. It makes sense for teams that want EC2 economics without building their own Actions Runner Controller deployment. Setup is 1-2 hours vs 1-2 weeks for DIY ARC. The trade-off vs pure managed (Depot, BuildJet): slightly slower cold starts, lower per-minute cost at high volume.

Read more →

Self-hosted runners

When does self-hosted CI make sense?+

Self-hosted makes sense when: (1) you consume more than 80,000-100,000 minutes/month AND have a dedicated platform engineer, (2) GPU or specialised hardware requirements (ML training, CUDA), (3) compliance requires on-premises or VPC-isolated build infrastructure, (4) macOS builds at scale above 5,000 macOS min/month where self-hosted Mac Minis are cheaper. Below these thresholds, external runners win on total cost including engineer time.

Read more →
How much does a CI engineer cost?+

A dedicated CI/platform engineer in the US costs $130,000-180,000/year in salary plus 30-40% benefits (total compensation $170,000-250,000). Even 0.1 FTE of a senior engineer's time dedicated to runner maintenance is $17,000-25,000/year. This is the hidden cost the self-hosted runner vendors do not include in their ROI calculators. For most teams, an external runner eliminates this overhead entirely.

Read more →
What is Actions Runner Controller?+

Actions Runner Controller (ARC) is the official Kubernetes-native solution for self-hosted GitHub Actions runners. It uses KEDA for auto-scaling and runs ephemeral runner pods that terminate after each job. ARC is the highest-quality self-hosted option but requires Kubernetes operational expertise. Setup takes approximately one FTE-week. Ongoing maintenance is roughly 0.1 FTE per month. If you lack Kubernetes expertise, RunsOn or philips-labs/terraform-aws-github-runner are lower-barrier alternatives.

Read more →
Can I use EC2 spot instances for GitHub Actions runners?+

Yes, with caveats. Spot interruptions cause workflow failures. Mitigate by: (a) diversifying instance families in your pool (request c6i + c5 + m6i rather than just c6i), (b) implementing graceful interruption handling in your runner configuration, (c) labelling jobs with spot-ok: true for jobs that are safe to retry and spot-sensitive: false for jobs that cannot tolerate interruption. Expect 3-7% of builds to need re-runs due to spot interruption on a well-configured pool.

Read more →

Optimisation

Why did my GitHub Actions bill triple?+

Most common causes in frequency order: (1) a new macOS workflow added (10x multiplier hits on first billing cycle), (2) E2E tests moved to run on every PR commit, (3) matrix strategy expanded (adding a third OS multiplies jobs 3x), (4) a new Docker build job without layer caching configured, (5) the March 2026 self-hosted platform fee if you have self-hosted runners. Go to Settings > Billing > Actions usage, sort by minutes consumed, and find the workflow that tripled.

Read more →
What is the fastest CI cost optimisation?+

In order of effort-to-payback ratio: (1) Add concurrency gate: 30 minutes, 20-40% saving. (2) Add paths filter: 60 minutes, 20-40% saving. (3) Cache dependencies: 2 hours, 30-60% of install time. (4) Switch to ARM Linux: 1 hour, 50% on Linux cost. (5) Add Docker layer cache: half day, 60-80% of Docker build time. Most teams recover 40-60% of waste from steps 1-3 alone.

Read more →
How do I audit my CI cost?+

Start with the GitHub Actions usage API to identify the top 3 workflows by minutes consumed. Check each against the 12 anti-patterns list: paths filter, concurrency gate, dependency caching, Docker layer caching, test scope, OS selection. Fix the top anti-pattern in each workflow. This typically recovers 40-60% of waste in one week. For a comprehensive audit with a structured output, Digital Signet runs two-week pipeline cost audits.

Read more →
Should we move to ARM runners?+

Yes, for all Linux workloads where your dependencies support ARM64. The migration for a standard Node.js, Python, Go, Rust, or Ruby workload takes 1 hour and saves 50% on Linux CI cost. Benchmark first on a branch. Failure cases: legacy C++ with x86 intrinsics, proprietary x86-only binaries, some ML frameworks, Chromium-based E2E testing. For most web and backend workloads, the switch is safe and the saving is immediate.

Read more →

FinOps and attribution

How do I allocate CI cost per team?+

Prefix all workflow names with the owning team (team-backend/build-api). Pull the GitHub Actions usage API daily and group by team prefix. Calculate cost at current rates. This gives you a showback model in 2-3 hours. For a more sophisticated solution with dashboards, Vantage ($750-3,500/month) or CloudZero integrate GitHub Actions cost into broader cloud spend attribution.

Read more →
Is Vantage worth it for CI cost management?+

Vantage is worth it if you are managing $20,000+/month of cloud spend and want CI costs alongside infrastructure costs in one dashboard. At that scale, the $750/month starting price is less than 4% of the spend it manages. For pure CI cost attribution under $5,000/month, a DIY script pulling the GitHub Actions usage API is sufficient and free.

Read more →
What is the FinOps framework for engineering?+

The FinOps Foundation framework (finops.org) defines a process for managing cloud costs: Inform (visibility into spend), Optimise (identify reduction opportunities), Operate (continuous governance and accountability). Applied to CI: Inform means per-team/per-workflow cost visibility; Optimise means the anti-patterns playbook; Operate means monthly cost reviews and attribution reports. CI is often the missing piece in engineering FinOps programs because it is not cloud infrastructure in the traditional sense.

Read more →

DIGITAL SIGNET · PIPELINE AUDIT

Got a question not answered here? We run the analysis.

Digital Signet runs two-week pipeline cost audits. We map your specific workload, answer the questions finance is asking, and deliver a 90-day optimisation roadmap.

Learn about Pipeline Audits