MQTT vs Polling Architecture at Scale
A polling architecture that works fine for fifty devices can quietly fall apart at five thousand, and the fix is often architectural rather than a faster poll. MQTT and traditional master-driven polling represent two ways to move field data, and they scale very differently. This page is for the architect sizing a growing fleet. It compares how each behaves as device count climbs, where each spends bandwidth and effort, and when a publish-subscribe model earns its keep.
MQTT vs Polling at Scale in one line: Choose an MQTT publish-subscribe architecture when a large, geographically spread, or fast-growing fleet must report to one or many consumers, because each device pushes changes to a broker once and any number of subscribers receive them without adding polling load. Choose polling when the fleet is bounded, the master fully controls request timing, and a flat request-response model is simpler to reason about. The pivot is fan-out and growth: polling load scales with devices times consumers, MQTT does not.
Compare How Each Scales
In a polling architecture, a master issues a request to each device and waits for the response, cycling through a poll list. Add devices and the cycle lengthens or you add masters; add a second consumer that also needs the data and it either polls independently or reads a shared cache you now have to build. In an MQTT architecture, each device publishes its changes to a broker, and every interested consumer subscribes; the device does not know or care how many are listening.
| Attribute | Polling | MQTT publish-subscribe |
|---|---|---|
| Who initiates | Master requests on a schedule | Device publishes on change |
| Load vs device count | Grows with the poll list | Grows only with actual change traffic |
| Load vs consumer count | Multiplies or needs a shared cache | One publish fans out to all subscribers |
| Bandwidth on quiet data | Full poll regardless | Near zero until a value changes |
| Liveness signal | A failed poll flags a dead device | Last will and keepalive flag offline |
| Central coupling | Master must reach every device | Devices reach one broker |
MQTT decouples producers from consumers through the broker, which is what makes fan-out cheap. The mechanics are in the guides on publish-subscribe and the MQTT broker.
The catch is that MQTT moves the problems, it does not delete them. You now run and secure a broker, you design a topic hierarchy, and you decide QoS per stream. Polling keeps everything in the master with no broker to operate, at the cost of scaling load with the size of the poll list and the number of consumers. Whether that tradeoff favors MQTT depends almost entirely on scale and fan-out.
When Each One Wins
MQTT wins as the fleet grows and as more systems want the same data. If devices are numerous, spread across many networks, and behind links you do not want to poll constantly, having each device push changes to a broker is dramatically more efficient than pulling from all of them. It wins even harder when several consumers - a SCADA, a historian, an analytics pipeline - all need the stream, because one publish serves them all instead of each polling independently. Pairing it with change-driven publishing keeps the wire quiet, much like report by exception versus polling at the device level.
Polling wins when the fleet is bounded and the master's control over timing matters. A modest set of devices on a reliable network, where you want deterministic request timing and a simple mental model, is well served by polling - there is no broker to run and the failure of a poll is itself a clean liveness signal. Polling also wins where a device simply cannot publish and must be read, which is the majority of legacy Modbus and DNP3 equipment; there you poll at the edge even if you publish upstream.
The scaled architecture is usually a hybrid: poll legacy devices at an edge gateway, then publish their changes northbound over MQTT so the enterprise side scales by subscription rather than by poll. That gives you polling's device reach where you have no choice and MQTT's fan-out where the growth actually lives. The decision is per layer, not per system.
Pitfalls at Scale
The polling pitfall at scale is silent poll-cycle inflation: every device you add lengthens the cycle, and eventually the freshest data is minutes old without anyone deciding to accept that. Adding masters helps but multiplies operational surface, and bolting a second consumer onto a polling system tempts you into duplicate polling that doubles the load on the field. Watch the round-trip time in SCADA polling as the list grows, because that is where the ceiling first shows.
The MQTT pitfall at scale is treating the broker and topic design as afterthoughts. A flat or badly named topic space makes subscriptions and access control painful, oversized retained-message use bloats memory, and a single broker with no clustering becomes the fan-out bottleneck you were trying to avoid. Choosing a sane QoS per stream matters too, since QoS 2 everywhere buys ordering guarantees you rarely need at a cost you always pay. Design the topic hierarchy deliberately, as covered in the guide on MQTT topic hierarchy and wildcards.
In practice a cloud platform such as Merobix sits on the consuming side of either model - subscribing to an MQTT broker or polling devices and gateways - and presents the fleet as one set of live tags. The architecture choice is about how field data gets to that boundary efficiently at your scale, not about the platform. Poll where you must, publish where you grow, and let the change-driven path carry the fan-out.
Frequently Asked Questions
Does MQTT always beat polling for large fleets?
For fan-out and growth, usually yes, but not automatically. MQTT lets each device publish once and any number of consumers subscribe, so load does not multiply with device or consumer count the way polling does. But MQTT adds a broker to operate, a topic design to get right, and QoS choices to make. If the fleet is small and bounded and the master controls timing well, polling can be simpler with no broker to run.
Can I use MQTT if my devices only speak Modbus?
Yes, through an edge gateway. The gateway polls the Modbus devices locally, then publishes their changes northbound over MQTT so the enterprise side scales by subscription instead of by poll. This hybrid is the common scaled architecture: you keep polling where the device forces it, and gain MQTT fan-out where the fleet actually grows. The device never needs to speak MQTT itself.
What breaks first when a polling architecture scales up?
The poll cycle. Each device you add lengthens the time to read the whole list, so the freshest data quietly ages until the newest value is minutes old. Adding a second consumer tempts duplicate polling that doubles field load. Watching round-trip time as the poll list grows shows the ceiling approaching before data staleness becomes a visible problem on the screens.
Sources and verification
This page references the protocol specifications published by the organizations below. Editions, product capabilities, and documentation change over time - confirm current requirements and specifications directly with the source.
- Modbus Application Protocol Specification - Modbus Organization
- Overview of DNP3 (IEEE Std 1815) - DNP Users Group
- MQTT Version 5.0 (OASIS Standard) - OASIS (v5.0, 2019)
Merobix is not affiliated with, endorsed by, or sponsored by these organizations; their names are used only to identify the standards and products discussed.
Automation services
Need help turning this into a working system?
Merobix integrates SCADA, programs Allen-Bradley and Siemens PLCs, and designs and fabricates industrial control panels.
Meeting requests are reviewed before confirmation.