Self-hosted IoT platform vs. cloud: the honest comparison
Timo Wevelsiep•Updated: 30.06.2026Editorial note: Versions, commands and prices may change. Please verify critical steps independently before production use. This guide does not replace individual consulting.
Self-hosted IoT pays off as soon as data sovereignty, predictable cost and independence matter; a cloud platform pays off for small, short-lived projects without an in-house IT team. The core difference is the billing and control model: cloud IoT (AWS IoT, Azure IoT, Cumulocity) bills per device and per message and keeps your data in someone else's infrastructure. Self-hosted (ThingsBoard and ChirpStack on Proxmox, Hetzner or on-prem) is a flat server bill with full data ownership. This article compares both honestly across five axes: sovereignty, cost, lock-in, latency and operations, and gives a decision table.
The five decision axes
Choosing between self-hosted and cloud is not a matter of belief but a trade-off across five axes:
- Data sovereignty and GDPR: where does the data sit, who can access it?
- Cost: flat server bill versus per-device and per-message billing.
- Lock-in: how expensive is the exit, and what does the EU Data Act say?
- Latency and edge: how close must processing be to the machine?
- Operations and effort: who maintains, patches and scales the platform?
Which building blocks sit on which layer is explained in the IoT architecture overview.
Data sovereignty and GDPR: where the data really sits
With a cloud IoT platform, telemetry, device master data and often control commands run through a US hyperscaler or a proprietary vendor. Even in an EU region, US providers fall under the CLOUD Act, which can grant authorities access regardless of storage location. For personal or business-critical machine data this is a real compliance issue.
Self-hosting flips it: ThingsBoard and ChirpStack run on your infrastructure inside the EU. There is no third-country transfer, no shared responsibility with a hyperscaler and no black box. You decide on encryption, retention, deletion policies and access rights yourself. For many European industrial and utility customers this is the decisive point, long before it comes to cents per message.
Cost: per-device cloud explosion vs. flat server bill
This is the hardest and most underestimated difference. Cloud IoT platforms bill with the fleet:
- AWS IoT Core charges messaging from USD 1.00 per million messages (volume price down to USD 0.70), connectivity at USD 0.08 per million connection minutes, and messages are metered in 5 KB blocks. Device Shadow, Registry and the Rules Engine are billed separately (as of aws.amazon.com/iot-core/pricing, June 2026).
- Azure IoT Hub bills per unit and tier: Standard S1 is around USD 25/month per unit for 400,000 messages/day, S2 around USD 250/unit for 6 million/day; messages are metered in 4 KB blocks (as of azure.microsoft.com/pricing/details/iot-hub, June 2026).
- Cumulocity (Cumulocity GmbH, independent from Software AG since a management buyout in early 2025) is quote-based per device per month by device class; historical data is governed by retention rules with a 60-day default. List prices are not public (as of cumulocity.com, June 2026).
A rough calculation makes the model visible: 10,000 devices each sending one message per minute generate about 432 million messages per month. On AWS IoT Core that is roughly USD 432/month for messaging alone, before Device Shadow, Registry and Rules Engine actions are added, and payloads over 5 KB count multiple times. Double the fleet, double the bill.
Self-hosting breaks this linearity: ThingsBoard Community Edition (Apache 2.0) and ChirpStack (MIT) are license-free, with no per-device or per-message fee. You pay for server, storage and operations, that is a flat bill that does not grow with every machine, only when the hardware hits its limits. An optional ThingsBoard Professional Edition is available as a perpetual license from USD 4,999 one-off. The full breakdown is in ThingsBoard pricing.
| Cost model | Cloud IoT (AWS/Azure/Cumulocity) | Self-hosted (ThingsBoard/ChirpStack) |
|---|---|---|
| License | in the service price | CE: free (Apache 2.0 / MIT) |
| Per device | yes (Cumulocity), indirect (AWS/Azure) | no |
| Per message | yes (AWS from USD 1/M, Azure per tier) | no |
| Cost scaling | linear with fleet and traffic | flat, steps only on hardware |
| Data storage | retention rules (Cumulocity 60-day default) | as long as you want, own DB |
| Main cost driver | device and message count | server and operations |
A broader edition and license comparison of the open-source options is in the open-source IoT platforms comparison.
Lock-in and the EU Data Act as de-risking
Cloud IoT platforms bind you on three levels: proprietary APIs and SDKs, vendor-specific data formats, and the sheer migration effort once thousands of devices have to move. The exit is often more expensive than the entry, which is part of the business model.
The EU Data Act (Regulation (EU) 2023/2854) eases this on the regulatory side. It has applied since 12 September 2025 and strengthens users' right to access the data generated by their connected products and to share it with third parties. From 12 January 2027, cloud providers may no longer charge switching fees (digital-strategy.ec.europa.eu). An open, self-hosted platform meets portability and switchability by design: open protocols (MQTT, HTTP, CoAP), an open database, and full access to the source code. Self-hosting is therefore not only cheaper but also de-risking against upcoming compliance requirements.
Latency and edge
Not every data point belongs in a distant cloud region. For production control, predictive maintenance or sites with unstable connectivity, proximity matters. Self-hosting can run at the edge or on-prem right next to the machines: low latency, production data stays in the plant, and the line keeps running even when the internet link drops. Cloud IoT instead forces every roundtrip across the open internet into the vendor region. ThingsBoard ships an edge module for this, and ChirpStack can be built regionally and in multiple tiers.
Operations and effort: the honest part
Self-hosting has a real price, and we will not hide it: someone has to apply updates, run backups, operate monitoring, patch security issues and scale the database (PostgreSQL, TimescaleDB, plus Redis for ChirpStack). Underestimate this and you build technical debt. The point is that this effort is predictable and bounded, while the cloud bill keeps running with every new machine. In practice many customers run operations as a managed service and still keep data sovereignty, open interfaces and the source code, the best of both worlds without the lock-in.
Decision table: when self-hosted, when cloud
| Situation | Recommendation |
|---|---|
| Few devices, short-lived prototype, no IT team | Cloud (fast start) |
| Deeply integrated in AWS/Azure, small stable fleet | Cloud (ecosystem proximity) |
| Growing fleet (thousands of devices) | Self-hosted (cost flips otherwise) |
| Personal or critical machine data | Self-hosted (GDPR, no CLOUD Act) |
| Production-near, edge, unstable link | Self-hosted (latency, offline) |
| Worried about lock-in / Data Act compliance | Self-hosted (open standards) |
| Full control, but no ops team | Self-hosted as a managed service |
As a rule of thumb: for a quick test the cloud is convenient. For anything that grows, runs permanently or is regulatorily sensitive, a sovereign self-hosted platform is the more sustainable choice. How ThingsBoard and ChirpStack complement each other is covered in ThingsBoard vs. ChirpStack.
How we work at WZ-IT
We plan, build and operate sovereign, self-hosted IoT platforms from ThingsBoard and ChirpStack on your infrastructure (Proxmox, Hetzner, on-prem), GDPR compliant from Germany and without cloud lock-in. We model the real cost honestly against your cloud alternative and, on request, take over the full operation. More on our ThingsBoard page, in the IoT hub and specifically on IoT platform development. To book a no-obligation intro call, pick a time slot.
You'd rather not run IoT yourself? WZ-IT handles setup, operations and maintenance – GDPR-compliant from Germany.
Frequently Asked Questions
Answers to the most important questions
For small fleets and prototypes a cloud is convenient and often cheaper. From a few thousand devices the math flips: cloud platforms like AWS IoT, Azure IoT and Cumulocity bill per device and per message and scale linearly with fleet size. A self-hosted platform built on ThingsBoard and ChirpStack is a flat bill of server cost plus operations, independent of message volume.
Yes, and usually more easily than a US cloud. With self-hosting all telemetry and master data sit on your infrastructure inside the EU (Proxmox, Hetzner, on-prem). There is no third-country transfer and no exposure to the US CLOUD Act. You keep full control over encryption, retention and deletion.
ThingsBoard (device management, dashboards, rule engine) and ChirpStack (LoRaWAN network server) are the common open-source answer. Both run license-free on your own hardware and cover the core functions of AWS IoT Core and Azure IoT Hub without per-device licensing.
The EU Data Act has applied since 12 September 2025. It strengthens users' right to access data generated by their connected products and bans cloud switching charges from 12 January 2027. An open, self-hosted platform meets these portability and switching requirements by design and lowers regulatory risk.
It is real: updates, backups, monitoring, security patches and database scaling all need an owner. The effort is predictable and usually far smaller than the cost curve of a growing cloud fleet. Many customers run operations as a managed service and still keep data sovereignty and the source code.
For very small or short-lived projects, fast prototypes without an IT team, and when device numbers stay small and stable. If you are deeply integrated into an existing AWS or Azure ecosystem, the managed option can be faster short term. The price is lock-in and a bill that grows with the fleet.
Yes. You can place the platform close to the machines, for example on-prem or in a regional data center, instead of sending every data point to a distant cloud region. That cuts latency, keeps production data in the plant, and keeps working even when the internet link drops.
More on IoT
- What is LoRaWAN?
- What is MQTT?
- What is ThingsBoard?
- What is ChirpStack?
- IoT architecture in layers
- LoRaWAN vs NB-IoT vs WLAN/5G
- ThingsBoard pricing & editions
- How much does ChirpStack cost?
- ThingsBoard vs ChirpStack
- IoT platform: self-hosted vs cloud
- Open-source IoT platforms compared
- ThingsBoard vs AWS IoT Core & Azure IoT Hub
- Install ThingsBoard with Docker
- Set up ChirpStack & a LoRaWAN gateway
- Grafana IoT dashboard with InfluxDB
- ThingsBoard Rule Engine: alarms & notifications
- Milesight sensor in ChirpStack: payload decoder
- Node-RED MQTT dashboard for sensor data
- Predictive maintenance & retrofit
- Building IoT / smart building with LoRaWAN







