The best Woodpecker CI alternatives, compared honestly
Woodpecker CI is a lightweight, Apache 2.0 CI engine that runs every step in a container and pairs well with a self-hosted Gitea or Forgejo; the current release is v3.20.1, published 29 October 2026. Teams start looking elsewhere for three reasons: there is no paid or hosted edition, so the server, agents, database and upgrades are always yours to run; the plugin catalog is small next to the GitHub Actions marketplace; and deploys are plugins or shell steps you wire up yourself. Below is what each alternative costs at three real workloads, and where every part of a .woodpecker.yaml goes when you move.
The best Woodpecker CI alternative depends on whether you want to keep running CI yourself. In short:
- Stay self-hosted, change as little as possible → Drone (same YAML lineage, check its license waivers) or the Actions built into Gitea and Forgejo, all $0 in license fees.
- Stop running CI servers → GitHub Actions: $0 at 2,000 Linux minutes a month, $108 at 20,000 and $588 at 100,000 in our cost table.
- Repos, CI and security in one product → GitLab CI/CD, hosted or self-managed; per-seat Premium makes it the priciest hosted row at 25 users.
- Complex, reproducible pipelines → Concourse CI, Apache 2.0 and self-hosted like Woodpecker.
Cost at real volumes
What you pay at 2,000, 20,000 and 100,000 build minutes a month
Woodpecker's license costs $0 and you supply the compute. The same holds for the other self-hosted engines, so their rows show the license or subscription you would pay and nothing else. Hosted rows include the build minutes, priced on each vendor's 2-vCPU Linux runner at the cheapest plan that fits. All figures are USD per month before tax.
| Tool | License and billing unit | Small: 2,000 min · 5 users · 2 concurrent | Medium: 20,000 min · 10 users · 5 concurrent | Large: 100,000 min · 25 users · 10 concurrent |
|---|---|---|---|---|
| Woodpecker CI (reference) | Apache 2.0, self-hosted only; no paid edition | $0 license plus your servers (not priced) |
$0 license plus your servers (not priced) |
$0 license plus your servers (not priced) |
| Drone | Community Edition Apache 2.0 (build from source); Enterprise Edition source-available, free under its license waivers | $0 license plus your servers; over the waivers, Enterprise is contact sales |
$0 license plus your servers; over the waivers, Enterprise is contact sales |
$0 license plus your servers; over the waivers, Enterprise is contact sales |
| Gitea Actions | MIT, built into Gitea; runners on your machines. Optional Gitea Enterprise $9.50/user/mo, 1-year commitment | $0 license Enterprise would be 5 × $9.50 = $47.50 |
$0 license Enterprise would be 10 × $9.50 = $95 |
$0 license Enterprise would be 25 × $9.50 = $237.50 |
| Forgejo Actions | GPL-3.0, built into Forgejo; runners on your machines; no paid edition | $0 license plus your servers (not priced) |
$0 license plus your servers (not priced) |
$0 license plus your servers (not priced) |
| Concourse CI | Apache 2.0, self-hosted; no paid edition | $0 license plus your servers (not priced) |
$0 license plus your servers (not priced) |
$0 license plus your servers (not priced) |
| GitHub Actions | Per minute: Linux 2-core $0.006/min; Free includes $12/mo of usage (2,000 min); self-hosted runners are not billed | $0/mo Free: 2,000 min included |
$108/mo Free + 18,000 × $0.006; on your own runners, $0 |
$588/mo Free + 98,000 × $0.006; on your own runners, $0 |
| GitLab CI/CD | Per seat + compute minutes: Premium $29/user/mo billed annually; $10 per 1,000 extra min; your own runners use no compute minutes | $20/mo Free (max 5 users): 400 included + 2 packs × $10 |
$390/mo Premium 10 × $29 + 10 packs × $10 (own runners: $290) |
$1,625/mo Premium 25 × $29 + 90 packs × $10 (own runners: $725) |
| Buddy | Plan + seats + usage: $0.00024 per CPU-minute and per GB-minute; 2 vCPU + 4 GB = $0.00144/min | $111.88/mo Pro $29 + 4 seats × $20 + 2,000 × $0.00144 |
$252.80/mo Pro $29 + 9 × $20 + 3 concurrents × $5 + $28.80 usage |
$693/mo Pro $29 + 24 × $20 + 8 concurrents × $5 + $144 usage |
Formula: plan or seat fees + (build minutes beyond the included allowance × the 2-vCPU Linux rate), rounded up to the vendor's purchase unit (GitLab sells 1,000-minute packs). Concurrency is only priced where the vendor charges for it (Buddy). Self-hosted rows (Woodpecker, Drone, Gitea, Forgejo, Concourse, and the "own runners" notes) leave out the servers you run builds on, because that cost depends on your hardware or cloud and we do not estimate it. Drone's waivers: under $5M annual revenue and under $5M total funding, or under 5,000 pipelines a year. Excluded: storage, egress, macOS and larger machines, annual-commit discounts and promotions. Buddy's own page lists the plan as €29; it bills EUR and USD at 1:1.
Sources, checked 2026-11-05: Woodpecker releases · Drone license file · Drone Enterprise FAQ · Gitea pricing · Forgejo source · Concourse source · GitHub plans · GitHub Actions runner pricing · GitLab pricing · GitLab compute minutes · Buddy pricing
The shortlist
7 Woodpecker CI alternatives worth trying
Ranked for the typical Woodpecker user, someone who values a lean, open pipeline. If self-hosting on your own hardware is a firm requirement, the first three and Concourse are your lane; if the real goal is to stop operating a CI box, the managed platforms win.
The project Woodpecker forked from, so steps, image, commands and from_secret carry over almost as is. Latest release v2.28.2 (April 2026) on a separate drone branch, while Harness puts new work into Harness Open Source. Weakness: the prebuilt Enterprise Edition is free only under its license waivers, and the Apache 2.0 Community Edition has no official build; you compile it yourself.
CI inside Gitea (MIT) using GitHub Actions-compatible YAML: no separate CI server, only runners. Gitea Enterprise ($9.50/user/month, 1-year commitment) adds SSO, audit logs and autoscaling runners. Weakness: the CI lives inside the forge UI, and it ties your pipelines to Gitea.
The same idea for Forgejo, the GPL-3.0 community fork of Gitea, with its own Forgejo runner. Weakness: tied to the Forgejo release cadence and, like Gitea Actions, less of a dedicated CI product than a standalone engine.
A 20,000+ action marketplace and deep GitHub integration, fully managed: $0 at 2,000 Linux minutes a month, $108 at 20,000. Self-hosted runners are not billed if you want to keep compute in-house. Weakness: your code and secrets live on GitHub, and hosted minutes add up at high volume.
Repos, CI/CD and security in one product, on GitLab.com or self-managed. Your own runners use no compute minutes. Weakness: much heavier than Woodpecker to run and learn, and Premium at $29/user/month (billed annually) is the main cost.
Declarative, immutable pipelines built from resources, jobs and tasks, Apache 2.0 and self-hosted: strong for complex, reproducible flows. Weakness: a steep learning curve and real ops overhead; overkill for simple builds.
Visual CI/CD (UI + YAML) with 100+ prebuilt actions that build and deploy, the deploy half Woodpecker leaves to plugins. Priced as Pro $29/month plus $20 per extra seat plus usage ($252.80/month at 20,000 minutes in our table). Weakness: a commercial cloud platform, not an open-source engine you own, so it misses the main reason most teams picked Woodpecker.
Migration map
Where each part of your Woodpecker pipeline goes
The Woodpecker concepts you will touch in a move, and their equivalent in the alternatives. Gitea and Forgejo Actions use the GitHub Actions workflow syntax, so they share a column.
| Woodpecker | Drone | GitHub, Gitea, Forgejo Actions | GitLab CI/CD | Buddy |
|---|---|---|---|---|
.woodpecker.yaml or .woodpecker/*.yaml |
.drone.yml |
.github/workflows/, .gitea/workflows/, .forgejo/workflows/ |
.gitlab-ci.yml |
Visual editor, or YAML in the app or in .buddy/ in the repo |
Step with image: + commands: |
Step with image: + commands: |
Job steps: with run:, optional container: |
Job with image: + script: |
Actions in a pipeline, Docker image per action |
depends_on (steps and workflows) |
depends_on |
needs: between jobs |
stages: and needs: |
Action order plus trigger conditions |
Agent labels: |
node: runner labels |
runs-on: label |
Runner tags: |
Managed; no agents to route |
from_secret (repo, org, global) |
from_secret |
secrets.NAME (repo, org, environment) |
CI/CD variables (masked, protected) | Encrypted variables |
services: |
services: |
services: on the job |
services: |
Services attached to an action |
Plugins (image + settings:) |
Plugins (image + settings:) |
Marketplace actions (uses:) |
CI/CD components and include: |
Prebuilt actions |
| Cache via volumes or a cache plugin | Volumes or a cache plugin | actions/cache |
cache: keyword |
Pipeline cache (1 GB on Free) |
Drone is the shortest move: the YAML is the same lineage, so the work is mostly re-creating secrets and re-pointing OAuth. Moving to an Actions-style tool means rewriting steps as jobs, and Woodpecker plugins become marketplace actions or plain shell. Re-create secrets in the new tool rather than exporting them.
Beyond price
Who runs it, and does it deploy
The two things the cost table does not show: whether anyone but you can operate the CI, and whether deploys are a native feature or something you script. Woodpecker is the reference row.
| Platform | Managed option | Native deploy | Best for |
|---|---|---|---|
| Woodpecker CI | ✗ (Codeberg runs a community instance for its projects) | partial | Lean self-hosted CI beside Gitea/Forgejo |
| Drone | ✗ | partial | Existing Drone setups, container-heavy pipelines |
| Gitea Actions | ✓ (Gitea Cloud) | partial | Built-in CI if you host Gitea |
| Forgejo Actions | ✗ | partial | Built-in CI if you host Forgejo |
| Concourse CI | ✗ | partial | Reproducible, immutable complex flows |
| GitHub Actions | ✓ | ✓ (environments, marketplace) | Deep GitHub integration, huge marketplace |
| GitLab CI/CD | ✓ | ✓ | All-in-one DevOps platform |
| Buddy | ✓ | ✓ | Managed CI plus deploys, no server to run |
"Partial" deploy = supported via plugins or shell steps you assemble, not a native deploy or environments feature.
Go deeper
Woodpecker CI head-to-head
Detailed one-on-one comparisons for the questions people ask most.
The fork story, Drone's license terms against Apache 2.0, and which self-hosted CI to pick in 2026.
Self-hosted & open vs managed with a 20,000+ marketplace: cost, control and data residency.
Dedicated CI engine vs CI built into your forge: the best CI for Gitea and Forgejo.
Method
How we checked
On 5 November 2026 we read the release lists and license files of Woodpecker, Drone, Forgejo and Concourse on GitHub and Codeberg, Drone's Enterprise FAQ, the Gitea pricing page, and the GitHub, GitLab and Buddy pricing pages together with GitHub's runner rates and GitLab's compute-minute rules. Hosted totals are arithmetic on those list prices at the cheapest plan that fits, with the formula in each cell. Self-hosted rows show license cost only, because what your build servers cost depends on hardware we cannot see; taxes, promotions, storage and egress are left out.
Common questions
Woodpecker CI alternatives: common questions
Is Woodpecker CI free and open source?
Yes. Woodpecker CI is licensed under Apache 2.0 with no paid or enterprise edition, so every feature is available to everyone at $0 in license fees. You self-host it, which means the cost you do pay is the servers, agents and database you run it on, plus the time to keep them upgraded.
What is the difference between Woodpecker CI and Drone in 2026?
Woodpecker was forked from Drone 0.8 in 2019 and has stayed Apache 2.0; its latest release is v3.20.1 from 29 October 2026. Drone is owned by Harness: its latest release is v2.28.2 from April 2026 on a separate drone branch, while Harness puts new work into Harness Open Source, which it calls the next generation of Drone. Drone's Community Edition is Apache 2.0 but has no official build, and the prebuilt Enterprise Edition is source-available, free for small businesses (under $5M revenue and funding) or under 5,000 pipelines a year.
What is the cheapest Woodpecker CI alternative?
In license fees, Drone, Gitea Actions, Forgejo Actions and Concourse all cost $0, like Woodpecker, and you pay only for the servers you run them on. Among hosted options, GitHub Actions is $0 up to 2,000 Linux minutes a month on the Free plan; at 20,000 minutes it comes to $108 a month in our table, against $252.80 for Buddy and $390 for GitLab Premium with 10 users.
Is there a hosted version of Woodpecker CI?
Not from the Woodpecker project: it is self-hosted only, with no paid cloud edition. Codeberg runs a Woodpecker instance at ci.codeberg.org for projects hosted on Codeberg, by application and provided as-is. If you want CI with no server to run at all, GitHub Actions, GitLab.com and Buddy are fully managed.
When is Woodpecker CI still the right choice?
Stay on Woodpecker if you already self-host Gitea or Forgejo, want a dedicated CI with its own build UI, value an Apache 2.0 engine with no license cost or waivers to track, and are happy to own the upgrades. It is light enough to run on a small server, and its YAML is easy to read. The reasons to move are wanting someone else to run CI, needing a large catalog of ready-made steps, or wanting native deploys.
What is the best CI for Gitea or Forgejo?
If you would rather not run a separate service, use the built-in Gitea Actions or Forgejo Actions: they read GitHub Actions-style workflows and only need runners. If you want a dedicated CI with its own UI and container-per-step pipelines, Woodpecker and Drone both integrate with Gitea and Forgejo directly.