Key takeaways
- Decide early whose cloud account each client's server lives in. It shapes billing, liability and how easily a client can leave.
- Price hosting as a service, not as a server. Your time on backups, upgrades and incidents is the real cost.
- Write down what hosting includes, how fast you respond and what is billed separately, before the first incident.
- Standardise: the same setup, backup policy and monitoring for every client is what makes hosting profitable at scale.
Why Odoo partners offer hosting
Clients expect their implementation partner to "just make Odoo work", and that includes where it runs. Offering hosting keeps the relationship going after go-live, turns a one-off project into monthly revenue and gives you control over the environment your code runs on.
It also brings responsibility. When the server is down at 8 a.m. on a Monday, the client calls you, whatever the contract says. Profitable hosting is about making those calls rare and making sure the price covers them.
Choosing an Odoo hosting model for clients
Servers in your own cloud account
You rent the servers and bill the client one price for hosting. This is simple for the client and lets you put several small clients on one server. You carry the cloud bill, so a client who pays late still costs you money, and moving a client away later means migrating their data out of your account.
Servers in the client's own cloud account
The client opens their own account with AWS, Azure, Google Cloud, Hetzner or another provider, pays the provider directly, and you manage the server for a service fee. The client owns their data and infrastructure, which larger clients and regulated industries often require. Your revenue is pure service, with no cloud bill to carry.
Odoo's own hosting
Some clients are better served by Odoo Online or Odoo.sh, where Odoo S.A. runs the platform. That suits clients who want no infrastructure decisions at all and fit within those platforms' limits. Recommending it when it fits builds trust; you still earn on implementation and support. Our CloudPilot vs Odoo.sh comparison covers the trade-offs.
Many partners use more than one model: shared servers in their own account for small clients, and dedicated servers in the client's account for larger ones.
Pricing Odoo hosting for clients
Know your real costs
Before you set a price, add up what one client actually costs you each month:
- Servers, if they are in your account, or a share of a shared one;
- Backup storage and any offsite copies;
- Tools: your hosting platform, monitoring and email delivery;
- Your team's time: updates, backup checks, restores, incidents, upgrades and answering "is it down?" emails.
Time is usually the largest item and the one most often left out. Track it for a few months; it tells you whether a client is profitable far better than the server bill does.
Choose a pricing model
- Fixed monthly fee per client, by size (for example small, medium and large). Easy to sell and to forecast.
- Cost plus a management fee, when the client pays the cloud provider directly. Transparent, and it scales with the client's infrastructure.
- Bundled with support: hosting included in a monthly support retainer. Simple for the client, but make sure the retainer still covers the hosting work.
Whatever the model, avoid pricing hosting at the bare cost of the server. A client who pays only for the machine still expects backups, updates and someone to call when it breaks.
A worked example
To make the arithmetic concrete, here are illustrative numbers, not real prices: if your servers, storage and tools cost 600 a month across ten clients, and your team spends two hours per client per month on hosting work, each client costs 60 plus two hours of time. At an internal rate of 50 an hour, that is 160 a month before any margin. Price below that and every new client makes you poorer. Replace the numbers with your own.
What to include in an Odoo hosting package
Write it down, in the proposal or a short service description:
- Backups: how often, how long they are kept, where copies go.
- Updates: operating system patches, Odoo bug-fix updates.
- Monitoring and response: what you watch and how quickly you respond, during and outside working hours.
- Staging: whether a test copy is included for user acceptance testing and training.
- What is extra: major version upgrades, custom module work, restores caused by user mistakes, performance projects.
Major upgrades in particular should be priced as projects. Our Odoo 18 to 19 upgrade guide shows how much work is involved.
Contract points for partner hosting
- Data ownership: state that the client owns their data, and how they get a full backup if they leave.
- Exit plan: how long you keep data after the contract ends, and what a handover includes.
- Licences: Odoo Enterprise is a subscription from Odoo, priced per user (see Odoo's pricing page). Be clear who holds the subscription and who pays for it.
- Data protection: if you host personal data, you are likely a processor, so put a data processing agreement in place and list the providers you use.
Running Odoo hosting for many clients
- Standardise the setup. Same operating system, same Odoo configuration, same backup schedule for every client. Exceptions are where incidents hide.
- Separate clients. Each client gets its own database and, ideally, its own system user and login. A mistake for one client must not touch another.
- Automate the boring work: deploys from Git, scheduled backups, monitoring and certificate renewal.
- Give clients a view. A client who can see that their backups ran and their instance is healthy sends fewer anxious emails.
Our checklists for hardening an Odoo server and monitoring an Odoo server are a good baseline to standardise on.
Partner hosting with CloudPilot
CloudPilot's Business plan is built for partners who host Odoo for clients:
- Client accounts: a separate account for each client, using your plan, managed by your team with the roles they have in your account.
- Your cloud or theirs: host clients on your servers, or connect a client's own cloud account so the server and its bill stay with them.
- A white-label portal: clients see your name, logo, colour and support contact, and alert emails go out in your name.
- Roles and templates: custom roles scoped to specific servers and instances, and instance templates that apply your standard backup schedules.
- Flat pricing: one platform fee, with no charge per client, instance or Odoo user, so you set your own hosting prices.
See white-label Odoo hosting for partners for an overview, the white-label portal docs for the setup, and pricing for the Business plan.
Odoo partner hosting questions
How much should an Odoo partner charge for hosting?
Start from your real monthly cost per client: servers, backup storage, tools and, above all, your team's time. Add your margin on top, and price major upgrades and custom work separately.
Should client servers be in my cloud account or theirs?
Your own account is simpler for small clients and lets you share servers. The client's account suits larger or regulated clients who want to own their data and pay the provider directly. Many partners use both.
Can I white-label Odoo hosting for my clients?
Yes. With a white-label portal, clients see your brand and support contact instead of the hosting platform's. On CloudPilot this is part of the Business plan.