Last verified:
Forgejo began in 2022 as a hard fork of Gitea, created when Giteaโs trademark and ownership moved to a for-profit company. Codeberg runs on Forgejo, the fork now leads on some features, and every year the two codebases drift further apart. In 2026, picking between them is a real decision, not a naming preference.
The good news: both are excellent, lightweight Git servers with integrated CI that run happily on the cheapest tier of any VPS. The decision is about governance, trajectory, and migration asymmetry.
TL;DR: Which One Should You Pick?
Pick Forgejo if you want community governance, copyleft licensing, and the project that Codeberg and most of the FOSS-first crowd have standardized on. This is our default recommendation for new deployments.
Pick Gitea if you want a company standing behind the product, the option of commercial support contracts, and the larger ecosystem of existing tutorials and integrations.
Gitea vs Forgejo at a Glance
| Gitea | Forgejo | |
|---|---|---|
| Governance | Company-led (Gitea Ltd) | Community, hosted by Codeberg e.V. |
| License | MIT | GPL-3.0+ for new code |
| First release | 2016 (Gogs fork) | 2022 (Gitea fork) |
| CI | Gitea Actions | Forgejo Actions |
| Federation (ForgeFed) | Not a priority | Actively developed |
| Commercial support | Available | No official offering |
| Migration path | To Forgejo: supported | Back to Gitea: unsupported |
| RAM at idle | 200-400 MB | 200-400 MB |
Where Gitea Wins
Institutional backing and ecosystem depth. A company employs maintainers, sells support contracts, and has an incentive to keep enterprise features working. A decade of tutorials, Terraform providers, backup scripts, and integration guides mostly name Gitea, and everything in that ecosystem works with it unmodified. For a business that wants a lightweight GitHub alternative with a vendor to call, Gitea is the safer procurement answer.
Where Forgejo Wins
Governance and momentum in the self-hosting community. Forgejo is run as a commons: decisions in public, copyleft license, and development priorities set by users rather than a sales roadmap - federation via ForgeFed being the clearest example. Codeberg battle-tests every release at scale before most self-hosters touch it. The r/selfhosted default has visibly shifted to Forgejo for new installs, which means new community tooling increasingly targets it first.
The migration asymmetry reinforces the choice: Gitea to Forgejo is a documented path, the reverse is not.
VPS Requirements Compared
The servers are twins in resource terms - budget for CI runners, not for git:
| Spec | Gitea | Forgejo |
|---|---|---|
| Minimum RAM | 512 MB | 512 MB |
| Recommended RAM | 1 GB (+2 GB for CI runners) | Same |
| Storage | 10 GB min, grows with repos/artifacts | Same |
| Database | SQLite fine, Postgres at scale | Same |
| CPU | Low, spikes on CI | Same |
Hetzner from 5.49 EUR per month is the sweet spot: the entry plans handle the git server plus a modest Actions runner, and NVMe keeps large repository operations fast. Contabo from 5.99 EUR gives you more vCPUs per euro if CI throughput is the priority, and DigitalOcean from 6 USD suits US-based teams. Sizing details are in the best VPS for Gitea and best VPS for Forgejo guides; the full ranking is in our VPS comparison.
Verdict
For a new self-hosted forge in 2026, Forgejo is the better default: community-governed, Codeberg-proven, and the direction the self-hosting ecosystem is moving. Choose Gitea deliberately when commercial support or an existing Gitea-specific toolchain matters to your organization.
If you run Gitea today and it works, there is no urgency - it remains a solid project. But plan any future move in one direction only, because the door from Forgejo back to Gitea is closed.
Frequently asked questions
Can I still migrate from Gitea to Forgejo in 2026?
Yes, but it is no longer the drop-in swap it was in 2023. Forgejo documents supported migration paths from specific Gitea versions, and the databases have diverged enough that you should treat it as a real migration: back up, test on a copy, then switch. Going the other direction, Forgejo to Gitea, is not supported at all. If you are undecided, that asymmetry is worth weighing.
Do Gitea and Forgejo have the same system requirements?
Effectively yes. Both are single Go binaries that idle around 200 to 400 MB RAM with a handful of repositories, and both are comfortable on 1 GB plans. The real resource consumer is CI: Gitea Actions and Forgejo Actions both spawn runner workloads that want their own CPU and RAM. Budget for the runners, not the git server.
Which is better for CI, Gitea Actions or Forgejo Actions?
They are siblings with the same GitHub-Actions-compatible syntax, and most workflows run unchanged on both. Compatibility with the GitHub Actions ecosystem is close but not perfect in either. Differences show at the edges: release cadence, runner improvements, and which bugs get fixed first. Neither has a decisive lead; your existing workflow files will almost certainly work on both.