Reselling managed Gitea in 2026

An agency can resell managed Git hosting as a recurring line by running one Gitea instance per client and charging a flat monthly fee above cost. Gitea has no per-seat pricing, so a growing client team does not raise your bill. This post covers the margin math, the white-label gaps that are real today, and where the model breaks.
The short version
One managed Gitea instance per client, the honest margin math, and the features that do not ship yet. Read this before you quote a client.
- One managed Gitea instance per client costs €9/month flat, with no per-seat metering.
- Retail at €30 to €80/month: 15 clients returns €450 to €1,200/month in recurring revenue.
- The €9 price is the standard rate, not a wholesale discount — your margin is the retail markup.
- Gitea handles repositories, pull requests, issues, and package registries; built-in CI needs a runner you control.
- A branded control plane and branded invoicing do not ship yet — this post is honest about the gaps.
The agency math
The model is one Gitea instance per client, billed to you at €9/month, resold at a flat retail price. Because Gitea does not meter users, a client team that grows from 5 to 40 developers costs you the same €9. The margin is the gap between €9 and what the client pays.
Here is the picture at 15 clients. The cost line is fixed. The revenue line depends on where you set retail, and the support line is yours to absorb.
| Line | Monthly |
|---|---|
| Wholesale cost: 15 instances at €9 | €135 |
| Retail at €30 per client | €450 |
| Retail at €80 per client | €1,200 |
| Gross margin range | €315 to €1,065 |
| Less your tier-one support and account time | varies |
The support line is the one most agencies underestimate. A managed instance takes patching and backups off your plate, but client questions about access, branch rules, and onboarding new developers still land with you. Budget two to four hours per client per month in the first quarter, dropping as accounts settle. At a €50 retail price that overhead still leaves a healthy gap, but it is real labour, not a passive royalty. Price it in from the start.
The recurring revenue is real, but it is not free money. You still answer the first support question, manage the client relationship, and decide retail pricing. DANIAN handles patching, backups, and monitoring under that €9. You can see managed Gitea at €9/month before you price a single client.
What white-label actually requires
White-label Git hosting means the client sees your brand, not the platform brand or the host brand. In practice that requires three things: the instance on a domain you control, a login screen without third-party marks, and invoices that come from you. Each has a different state of readiness, and being honest about that is the difference between a durable line and a refund request.
A custom domain with full branding removal lets the client reach the service at your address and see nothing that points back to the underlying platform or host. A branded login suppresses update banners and removes host marketing from the screens the client uses every day. Billing pass-through means you invoice the client and the platform stays invisible in the money flow.
These three are the standard bar for a true reseller programme. The next section is honest about which of them work today and which do not.
The DANIAN partner setup today
Here is the uncomfortable part. DANIAN does not yet ship a partner control plane, a branding-removal tier, or branded invoicing. The €9 price is the same standard rate any customer pays. What works today is manual and small in scale, and that is the honest current state.
What works now: each client gets an isolated instance on its own subdomain. You order it, you set the retail price, and you handle the first support question. DANIAN handles patching, backups, monitoring, and a public incident page within 30 minutes of detection. Resource upgrades need your explicit consent, and a failed card does not trigger data deletion.
What does not ship yet: a central dashboard for many instances, one-click branding removal, full custom domains with host marks stripped, Stripe Connect or billing pass-through. If you are an agency weighing this model, the honest path is to start small and tell us what you need. For more info see our Partner page.
Why Gitea resells well, and the CI trade
Gitea is a strong resale candidate because it is lightweight and carries no per-seat licensing. It is a single Go binary that runs on roughly 512MB to 1GB of RAM, with no runtime dependencies. It covers repositories, pull requests, code review, issues, and more than 20 package-registry formats. The one honest trade is built-in CI.
On the day-to-day work, Gitea is full-featured. It has code review through pull requests and AGit, issues with labels, milestones, kanban boards, time tracking, and dependencies, and package registries for npm, Maven, Container, PyPI, and Cargo among others. It mirrors repositories, fires webhooks, exposes a REST API, and connects to LDAP, OAuth, and OIDC for login. It is open-source under the MIT licence and carries roughly 55,700 stars on its own GitHub mirror.
The CI trade is the part to state plainly. Gitea Actions is built in and reuses GitHub Actions YAML, so existing workflows port across with little change. It needs a separate runner, called act_runner, on a host you control. DANIAN runs the managed model without giving you host SSH access, so the runner lives on a small server the agency or client runs. For pipelines, plan a runner host alongside the managed instance.
The runner itself is light. act_runner is a single binary that registers against the instance and executes jobs in containers. It can live on a small always-on server you control, whether a cheap cloud VM or an in-house box. One runner can serve several clients, or you can isolate a runner per client where workloads or secrets must stay separate. Factor the runner cost into your retail price if pipelines are part of the offer.
Gitea is also lighter than GitLab on built-in DevOps. There is no built-in security scanning such as SAST or DAST. If a client needs an all-in-one platform with scanning baked in, GitLab Premium or Ultimate is the honest fit, and saying so keeps trust intact.
What it replaces for the client
For most client teams, managed Gitea replaces GitHub Team, GitLab Premium, or Bitbucket. The pitch is not that the big platforms are bad. It is a flat price, repositories the client owns, and an instance isolated from every other tenant. The per-seat math turns in your favour as the client team grows.
The honest version of that math matters. GitHub Team is 4 US dollars per user per month on annual billing, and the free tier drops required reviewers and protected branches. GitLab Premium is 29 US dollars per user per month and is billed annually only. Bitbucket Standard is around 3 US dollars per user per month with a five-seat minimum on paid plans. For a five-person team, GitHub Team is 20 US dollars per month, which is cheap.
That is the point to be honest about. A flat managed Gitea line does not always beat a tiny team on GitHub. It wins when the client values owned, isolated repositories without per-seat metering, and it wins on price as headcount climbs. The table below shows the client-side per-seat cost against a single flat instance.
| Client dev team | GitHub Team at 4 USD per seat | GitLab Premium at 29 USD per seat | Managed Gitea |
|---|---|---|---|
| 5 developers | 20 USD per month | 145 USD per month | one flat instance |
| 10 developers | 40 USD per month | 290 USD per month | same flat instance |
| 25 developers | 100 USD per month | 725 USD per month | same flat instance |
| 50 developers | 200 USD per month | 1,450 USD per month | same flat instance |
To be fair to the platforms, GitHub and GitLab do several things Gitea does not. GitHub has the largest ecosystem of integrations and the deepest pull-request review culture. GitLab ships an all-in-one DevSecOps platform with scanning, environments, and release tooling built in. A client whose workflow leans on those features is better served staying put, and the honest reseller says so. The Gitea case is ownership, isolation, and a flat price, not feature parity with the largest platforms.
Gitea imports repositories from GitHub, GitLab, and Bitbucket, so moving a client is a staged, low-risk process rather than a cliff. Mirroring keeps a synced copy during the transition.
Pair it with team chat
Git hosting pairs naturally with team chat. Mattermost is an open-source chat platform that connects to Gitea through webhooks, so pull requests and pushes post into channels. Reselling both as a bundle raises your per-client revenue without adding a second vendor relationship.
For a development client, a Gitea-plus-chat bundle covers code and coordination in one managed line. You can add Mattermost for dev team chat at the same flat €9/month per instance and price the pair as a single recurring offer.
When this works, and when it does not
The model fits some agencies cleanly and fights others. Three signals say go, and three say wait. Read them honestly against your own setup before you build an offer around it.
It works when you already manage 10 or more client accounts and want a recurring infrastructure line on top. It works when your clients value owned, isolated repositories and a predictable flat price over per-seat billing. It works when you can field the first support question and leave patching, backups, and monitoring to the host.
It does not work when you need a branded multi-instance control plane today, because that does not ship yet. It does not work when your clients need built-in security scanning and an all-in-one DevSecOps platform, where GitLab is the better answer.
Frequently asked questions
Pricing and margin
How does an agency make money reselling managed Gitea?
An agency runs one managed Gitea instance per client at €9/month and resells it at a flat retail price. The margin is the gap between €9 and what the client pays. Because Gitea has no per-seat pricing, a client team that grows does not raise your cost.
What should an agency charge clients for managed Git hosting?
Most agencies price a flat managed Git line at €30 to €80 per client per month. The number depends on how much tier-one support you bundle and what the client previously paid per seat. At €9 cost, that leaves €21 to €71 gross margin per client per month.
How many clients does an agency need before this is worth it?
The model starts paying once you carry the support overhead anyway. At 15 clients, 15 instances cost €135/month and retail of €30 to €80 returns €450 to €1,200/month. Gross margin lands between €315 and €1,065/month before your own account and support time.
Does Gitea charge per user or per seat?
No. Gitea is open-source under the MIT licence and has no per-user or per-seat fee. One instance supports unlimited users and repositories. A client team can grow from 5 to 50 developers on the same instance, and your €9/month managed cost stays flat the whole way.
White-label and setup
Can an agency put its own brand on the Git hosting?
Partly. Each instance runs on its own subdomain, and the client sees Gitea rather than the host. Full branding removal, suppressed update banners, and a login screen stripped of third-party marks are part of a white-label package that does not ship yet. Frame branding conservatively with clients today.
Does DANIAN have a partner control plane for many instances?
Not yet. There is no central dashboard for managing 10 to 100 client instances from one screen today. You order and track instances individually. A multi-instance control plane is on the wish list for this persona, but it is not a shipped feature, and this post does not pretend otherwise.
Can an agency send clients a branded invoice through DANIAN?
No. Branded invoicing, Stripe Connect, and billing pass-through do not exist in the product yet. You bill your client through your own system and pay the €9/month per instance separately. The billing relationship between you and your client stays on your side today.
How long does it take to set up a new client instance?
A standard managed Gitea instance is provisioned fast, usually the same day. If a client needs an app that is not already in the catalogue of 150-plus, it can be added on request within 1 to 7 days for active customers and partners. There is a 7-day free trial to test the fit.
Can each client use its own domain?
Each instance gets its own subdomain by default, and the form label for this is Subdomain. A full custom domain with host branding removed is part of the white-label package that is not shipped yet. For now, plan around a subdomain per client and set expectations accordingly.
Gitea, CI, and migration
What does Gitea do compared to GitHub or GitLab?
Gitea covers Git hosting, pull requests, code review, issues with kanban and milestones, and 20-plus package-registry formats including npm, Maven, PyPI, and Cargo. It supports mirroring, webhooks, a REST API, and LDAP or OIDC login. It is lighter than GitLab on built-in DevOps but covers the daily work most teams do.
Does Gitea have built-in CI/CD?
Yes, through Gitea Actions, which reuses GitHub Actions YAML so existing workflows port across. The honest trade is that Actions needs a separate runner on a host you control. DANIAN does not give host SSH access, so the runner lives on a small server the agency or client runs.
Is Gitea missing anything GitLab has?
Yes. Gitea has no built-in security scanning such as SAST or DAST, and its DevOps tooling is lighter than GitLab Premium or Ultimate. For a client that needs an all-in-one DevSecOps platform with scanning built in, GitLab is the honest fit. For most teams, Gitea covers the core work.
Can clients import repositories from GitHub or GitLab?
Yes. Gitea imports repositories from GitHub, GitLab, and Bitbucket, including issues and pull requests in many cases. It also supports repository mirroring, so a client can keep a copy in sync during a migration. This makes moving a client off a per-seat platform a low-risk, staged process.
How much server does a Gitea instance need?
Very little. Gitea is a single Go binary with no runtime dependencies and runs on roughly 512MB to 1GB of RAM. It is light enough to run on a Raspberry Pi 3. That low footprint is part of why a managed instance can be offered at €9/month per client without thin margins.
Data, isolation, and fit
Is each client Git data isolated from other clients?
Yes. Each client runs in a separate isolated instance with its own hardened container, per-app resource guarantees, and isolated networking. One client cannot see or reach another client repositories. This per-tenant isolation is a core reason the resale model holds up for agencies serving many separate accounts.
Who owns the repositories and history?
The client owns their repositories and full Git history. Git is distributed by design, so every clone is a complete copy. Daily off-site backups run, and there is an SFTP and download export path plus a guide for leaving. No host SSH means resource changes need explicit consent first.
Where is the Git data hosted?
Application data is hosted in the region you choose, across 21 datacenter locations spanning six continents. An agency can place each client instance in the region closest to that client. There is no forced single-region setup, which helps when different clients have different location preferences for where their code sits.
When is reselling managed Gitea the wrong choice?
It is the wrong choice if you need a branded multi-instance control plane today, or if your clients require built-in security scanning and full DevSecOps. The €9 rate is standard, the control plane is not shipped, and scanning is not built in.
What happens to a client if an agency stops reselling?
The client keeps their repositories and history because Git is distributed and every clone is complete. Off-site backups and an export path mean the data is portable. A client can move to a direct DANIAN account or another host. Card-fail policy is simple: we wait, and we do not delete data.
What to do this week
Start with one client, not a launch. Pick a client whose GitHub or GitLab bill is climbing with headcount, and price a flat managed Gitea line at €30 to €80 per month. If that client runs pipelines, plan a runner host for Gitea Actions before you quote.
Then test the economics on a single account before you productise. Run one instance through the 7-day free trial, confirm the import from the client current platform, and check that a subdomain meets their branding bar for now. If the model holds, the partner gaps are worth raising with us directly so a real partner tier can take shape.
The recurring revenue is durable because the client owns their repositories and the price does not move with their headcount. That is the line worth building, with the gaps stated plainly rather than papered over.



