What the free plans count
Every free plan meters three things, and each provider defines them a little differently:
- Seats. GitHub Free allows unlimited collaborators on public and private repositories. GitLab.com counts every unique user across a private top-level group, its subgroups and projects, and allows five; above that the namespace becomes read-only. Bitbucket is free for up to 5 users, and Azure DevOps gives the first 5 users of the Basic plan for free.
- CI minutes. GitHub Free includes 2,000 Actions minutes a month for private repositories; usage is free for public repositories and for self-hosted runners, and Windows and macOS runners cost more per minute than Linux. GitLab Free namespaces get 400 compute minutes a month, reset on the first day of each month. Bitbucket's 50 build minutes and 1 GB of LFS storage are shared by everyone in the workspace. Azure Pipelines includes one Microsoft-hosted parallel job with 1,800 minutes a month and one self-hosted job with unlimited minutes.
- Storage. GitHub Free has 500 MB of Packages storage and 500 MB of Actions artifact storage. Each project in a GitLab Free namespace has 10 GiB of free storage for the repository and LFS. Azure Artifacts starts with 2 GiB free.
An empty cell in the table means the page names no figure, not that there is no limit. Codeberg, for instance, publishes no storage cap but reserves the right to warn about unreasonable storage requirements.
Free limits compared
The hosted free plans side by side, from the official pages:
| Service | Users | Private repos | CI minutes a month | Storage |
|---|---|---|---|---|
| GitHub Free | Unlimited collaborators | Unlimited | 2,000 (private repos) | 500 MB Packages |
| GitLab.com Free | 5 per private top-level group | Yes | 400 compute minutes | 10 GiB per project |
| Bitbucket Free | Up to 5 | Unlimited | 50 build minutes to get started | 1 GB LFS |
| Azure DevOps Basic | First 5 free | Unlimited Git repositories | 1,800 (one hosted parallel job) | 2 GiB Artifacts |
| Codeberg | Not stated | For free software needs | CI on request | Not stated |
Three services you may still find in older roundups are not free options anymore. AWS CodeCommit is no longer available to new customers, Google's Cloud Source Repositories has not been available to new customers since June 17, 2024, and SourceHut requires payment from users who host their own projects, starting at $4 a month.
When self-hosting pays off
A hosted free plan costs nothing until you hit a seat limit. GitLab.com's five-user cap on private groups cannot be raised on the Free tier, while GitLab's pricing page says the self-managed Free tier and the Community Edition have no such user limit. That is the usual moment to look at running a forge yourself:
- Forgejo is the forge behind Codeberg, licensed GPL v3 or later from v9.0, with Forgejo Actions and your own runners.
- Gitea is MIT licensed and ships Git hosting, code review, a package registry and CI/CD in one binary for Linux, macOS, Windows and FreeBSD.
- GitLab Community Edition is MIT Expat licensed and installs on most Linux distributions, in Docker, with Helm or in Kubernetes.
- Gogs is a single MIT licensed executable for Linux, macOS, Windows and ARM systems.
Self-hosting trades the seat limit for a server bill and the upgrade and backup work. GitHub Actions also lets you keep the hosted repositories and run the CI on your own machines, since usage on self-hosted runners is free. Whichever way you go, your server needs a TLS certificate; our guide on SSL certificate lifetimes explains how long they last and why renewal must be automated. If you mainly want a cheap place for a website rather than for code, compare the free website hosting plans.
Keep a mirror of your repositories
A free plan is not a backup. Codeberg's terms say outright that it makes no guarantees about the availability of the content and that users should keep their own backups, and GitLab.com puts namespaces that exceed the user limit into a read-only state. Git itself makes mirroring cheap:
- Clone with history.
git clone --mirrorcopies every branch and tag. Run it on a schedule with a cron job; the cron expression builder turns "every night at 02:00" into the right expression and shows the next run times. - Push to a second host. Add the second service as another remote and push to both. A public project can live on GitHub and Codeberg at the same time.
- Export what is not in Git. Issues, wikis, CI settings and packages are not part of the repository. Most providers offer an export; store it with your other backups, following our guide on how to back up your files.
- Verify releases. Publish checksums next to release archives and check downloads with the hash generator, which computes SHA-256 and compares checksums in the browser.
Static site hosting from the repository
Three of the hosted services publish a static site straight from a repository, at no extra cost:
| Service | What the docs say |
|---|---|
| GitHub Pages | Available in public repositories on GitHub Free; one site per account and one per repository |
| GitLab Pages | On the Free tier, running on GitLab infrastructure at no additional cost; no server-side processing like .php |
| Codeberg Pages | Free; needs a public repository named pages or a pages branch, custom domains via DNS records |
A README or a documentation site starts as Markdown. Write it in the Markdown editor with live preview, or convert a finished file with the Markdown to HTML converter, which keeps GitHub style tables and task lists. Configuration files for CI pipelines and package registries are often JSON; the JSON formatter validates them before you commit. For a local setup, see our list of free code editors.
Frequently asked questions
Which Git hosting gives unlimited private repositories for free?
GitHub Free includes unlimited public and private repositories with unlimited collaborators at $0 a month. Bitbucket Free has unlimited public and private repositories for up to 5 users. Azure DevOps Basic lists unlimited Git repositories, with the first 5 users free.
How many CI minutes do the free plans include?
GitHub Free includes 2,000 Actions minutes a month for private repositories; public repositories and self-hosted runners are free. GitLab Free namespaces get 400 compute minutes a month. Azure Pipelines includes one Microsoft-hosted parallel job with 1,800 minutes a month. Bitbucket's pricing page lists 50 build minutes to get started.
Is GitLab free for a team of more than five?
On GitLab.com, a private top-level group on the Free tier can have up to five users and goes read-only above that; the limit cannot be raised without Premium or Ultimate. Public top-level groups and the self-managed Free tier are not subject to the limit, and GitLab says the Community Edition is free to use.
Is Codeberg really free?
Codeberg says it does not charge users money and relies on optional donations; it is run by Codeberg e.V., a nonprofit association in Berlin. Public repositories must use a free and open source license, and private repositories are allowed for needs around free software projects, not as cloud or media storage.
Which forge can I host myself?
Forgejo (GPL v3 or later from v9.0), Gitea (MIT), GitLab Community Edition (MIT Expat) and Gogs (MIT) are open source and run on your own server. Radicle takes a different route: an open source peer-to-peer stack on Git where you run your own node, under MIT and Apache 2.0 licenses.
Are AWS CodeCommit and Google Cloud Source Repositories still available?
Not for new customers. AWS says CodeCommit is no longer available to new customers, while existing customers can keep using it. Google says Cloud Source Repositories has not been available to new customers since June 17, 2024.