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, October 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: ChirpStack (MIT) and ThingsBoard Community Edition up to 4.3 (Apache 2.0) 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. Since ThingsBoard 4.4 (29 September 2026) the Business Source License 1.1 applies: commercial use is free up to 100 devices on one server, beyond that the license is priced by device count, for example USD 499 per month for 1,000 devices plus USD 0.10 per additional device, or as a perpetual license from USD 4,999 one-off. There is still no per-message fee. CE 4.3 receives security updates until 20 July 2027, and existing installations can move to 4.4 free of charge through the Community Grant. The full breakdown is in ThingsBoard pricing, the background in the post ThingsBoard 4.4 under BUSL 1.1.
| Cost model | Cloud IoT (AWS/Azure/Cumulocity) | Self-hosted (ThingsBoard/ChirpStack) |
|---|---|---|
| License | in the service price | ChirpStack (MIT) and ThingsBoard CE up to 4.3 (Apache 2.0) free; ThingsBoard from 4.4 licensed above 100 devices |
| Per device | yes (Cumulocity), indirect (AWS/Azure) | no, except the ThingsBoard license from 4.4 |
| 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. Pure cloud IoT architectures instead send every roundtrip across the internet into the vendor region; hyperscaler edge runtimes such as AWS IoT Greengrass or Azure IoT Edge also process data locally, but stay tied to the vendor's platform and account. ThingsBoard ships an edge module for this, and ChirpStack can be built regionally and in multiple tiers. Note: ThingsBoard from 4.4 checks its license key online by default and locks the administration UI after 48 hours without a connection, while devices keep sending data. Permanently isolated networks need CE 4.3, a perpetual license with offline approval or a stack without license checks.
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.











