Industrial protocols

OPC UA vs Modbus vs MQTT: which protocol for which job

OPC UA carries values with structure and built-in security, Modbus carries raw registers, and MQTT publishes data to a broker. When to use each one.

Topic
Industrial protocols
Updated
13 November 2026
Reading time
6 min
Sections
6
An industrial Ethernet switch with eight ports mounted on a DIN rail in a cabinet.
Overview

OPC UA (IEC 62541) is a standard for industrial data exchange that carries values together with their structure, units and built-in security; Modbus sends only register values, while MQTT is a lightweight publish/subscribe protocol often used to send data to the cloud.

The three are not rivals for the same job. Modbus is the simplest way to read a field device. OPC UA describes a whole system, from a tank to its gauge, alarms and history, in a model that other software can browse. MQTT moves messages efficiently over unreliable or expensive links. Choosing well means matching the protocol to the distance, the data and the people who will maintain it.

At a fuel terminal the split is easy to see. Tank gauges, flow computers and valve actuators answer Modbus on RS-485 or Ethernet. The terminal automation system, SCADA and historian need named, timestamped values. A head office or a cloud dashboard needs a compact stream from many sites over links that are not always up.

So the useful question is not which protocol is best, but which protocol serves which link. The answer is almost always a combination, and the meeting point is a gateway or server that translates one protocol into another.

What OPC UA adds on top of raw values

OPC UA

What OPC UA adds on top of raw values

OPC UA lets a client ask a server what a value belongs to, which unit it uses and whether it can be trusted, along with the value itself.

OPC Unified Architecture is maintained by the OPC Foundation as the OPC 10000 series and published by the IEC as IEC 62541. Part 1, Overview and Concepts, release 1.05.06 of October 2025, describes an AddressSpace of nodes linked by references. A tank can be an object with child variables for level, temperature and alarm state, each with a data type, an engineering unit and a quality status.

Security is part of the standard rather than an add-on. Clients and servers authenticate with certificates and exchange messages over a secure channel that can sign and encrypt. Clients can subscribe to changes instead of polling, and since newer releases the specification also defines a PubSub model alongside client/server. IANA registers TCP port 4840 for the OPC UA connection protocol.

The previous generation, classic OPC such as OPC DA, was built on Microsoft COM/DCOM, which tied it to Windows and made it hard to pass through firewalls. OPC UA was redesigned to run independently of the operating system, on Linux servers, PLCs and small gateways, and to carry its own security inside the protocol.

The cost is complexity. An OPC UA server needs certificate management, a designed information model and engineers who understand both. For a single meter on a serial line, that effort rarely pays back.

  • Information model

    Objects, variables, types and units that clients can browse.

  • Built-in security

    Certificates, signing and encryption on a secure channel.

  • Subscriptions

    The server reports changes; the client does not poll every value.

  • History and alarms

    Standard services for historical data, events and conditions.

  • Client/server and PubSub

    Both communication patterns are defined in the specification.

  • Platform independent

    Runs on servers, PLCs, gateways and embedded devices.

OPC UA vs Modbus vs MQTT side by side

Comparison

OPC UA vs Modbus vs MQTT side by side

The quickest way to see the difference is to ask what each protocol knows about the data it carries.

Modbus knows addresses and 16-bit words. OPC UA knows objects, types, units and quality. MQTT knows topics and payloads; the payload format is left to the application unless a convention such as Sparkplug from the Eclipse Foundation defines it. Network behaviour differs too. Modbus and OPC UA client/server are request-driven, while MQTT clients keep one connection to a broker and send only when they have something new.

That difference shows up on the bill and on the screen. Polling one hundred Modbus registers every second sends the same unchanged values again and again. An OPC UA subscription or an MQTT publisher with a deadband sends a level only when it moves by more than a set amount. On a cellular link the saving is real; on a plant LAN it matters less than simplicity.

CriterionModbusOPC UAMQTT
PatternRequest/reply, client pollsClient/server with subscriptions; PubSub optionPublish/subscribe through a broker
Data modelCoils and 16-bit registers onlyObjects, types, units, quality, historyTopics; payload defined by the application or Sparkplug
SecurityNone in classic Modbus; Modbus/TCP Security adds TLSCertificates, signing and encryption built inTLS on the connection plus broker authentication
Registered port502 (TCP)4840 (TCP)1883; 8883 for TLS
Network loadGrows with poll rate and tag countModerate; subscriptions send changes onlyLow; report by exception
Typical useField devices, meters, gauges, drivesPLC, SCADA, MES and historian linksRemote sites, telemetry, cloud dashboards
Where MQTT fits

MQTT

Where MQTT fits

MQTT suits sites where the network is slow, metered or often down, because a device sends a small message only when something changes.

The OASIS MQTT Version 5.0 standard, approved on 7 March 2019, defines a client/server publish/subscribe transport that is light and simple to implement. Publishers send messages to a topic on a broker. Subscribers receive every message on the topics they asked for. Neither side needs to know the address of the other.

Three quality-of-service levels set the delivery promise: at most once, at least once and exactly once. A Will message lets the broker announce that a device dropped off unexpectedly, which is useful for remote telemetry. The MQTT standard does not define what a payload means. Plants that need interoperable tags often add Sparkplug, whose version 3.0 of October 2022 defines a topic namespace, payload and session state for industrial data.

Standard
OASIS MQTT 5.0 (2019)
Pattern
Publish/subscribe via broker
QoS 0
At most once
QoS 1
At least once
QoS 2
Exactly once
Ports (IANA)
1883; 8883 secure
Bridging Modbus to OPC UA or MQTT

Gateways

Bridging Modbus to OPC UA or MQTT

A protocol gateway reads field devices in Modbus and offers the same values upward as OPC UA nodes or MQTT messages.

The gateway polls each Modbus device on its own schedule, decodes the registers with the vendor map, and gives each value a name, a unit and a timestamp. Upward, it either acts as an OPC UA server that SCADA browses, or as an MQTT client that publishes to a broker. Many industrial gateways can do both.

The tag mapping inside the gateway becomes a critical document. It records which register became which tag, with which scale and word order. Without it, nobody can tell whether a wrong value on the dashboard started in the device, the map or the upper system.

Two gateway settings deserve attention. Timestamps should come from the moment the gateway read the device, not from the moment the server received the message, or delayed data looks current. And on remote links the gateway should buffer readings while the connection is down and send them in order once it returns, so the history has no silent gaps.

From Modbus devices to OPC UA and MQTT
Field
Control
Application
Enterprise
Modbus devices

Gauges, meters and drives on RS-485 or Ethernet.

Hover, focus or tap a step to read its note.
How to choose the protocol for each link

Decision

How to choose the protocol for each link

Choose the protocol per link, not per project: the cable from a gauge, the link between control systems and the path to a remote server each have different needs.

Keep Modbus where the device only speaks Modbus and the link is short and local. Use OPC UA where several systems on site must share structured data and the owner wants security that an auditor can verify, for example under the IEC 62443 series. Use MQTT where sites are remote, links are cellular, and the receiving side is a central server or cloud platform.

Two cautions apply to every choice. Never expose Modbus TCP directly to the internet, since it has no authentication. And check what the software at the other end actually supports before writing it into a specification.

Think about the team that will run the system after commissioning. A Modbus line can be checked by a technician with a laptop and the vendor map. An OPC UA server needs someone who can renew certificates and edit the information model. An MQTT broker needs someone who manages accounts, topics and backups. Pick a design the site can maintain.

  1. List what each device speaks

    Field devices often offer only Modbus; newer PLCs may offer OPC UA too.

  2. Mark where data must travel

    Local SCADA, a site historian, a head office server or a cloud platform.

  3. Check the link quality

    Plant LAN, fibre, radio or cellular with data limits and outages.

  4. Set the security level

    Who may read, who may write, and which zone each system sits in.

  5. Pick the bridge and document it

    Gateway model, tag map, certificates and broker accounts.

In the field: mixing protocols at Citia sites

In the field

In the field: mixing protocols at Citia sites

In Citia projects, Modbus usually stays at the device, and a gateway or server moves the data to the system that needs it.

At Rich machine connectivity in Serang, the acquisition path links PLCs, ECUs and Advantech EdgeLink over the plant network to the iFactory platform for OEE dashboards. INTEGRA TMS follows a similar pattern at fuel terminals: a gateway in the server room passes ATG readings to an SQL database for live levels, history and tank tickets.

For spread-out sites, CATALYST Telemetering carries river level, pipeline pressure and panel readings to a cloud server and dashboard. INTEGRA CTP, still in development, puts gateways and edge software at each site and keeps PLC control and safety permissives in the local control system. Security for these links follows the layered approach described in Citia's note on secure system integration.

Terms to know

OPC UA
OPC Unified Architecture, the IEC 62541 standard for secure, structured data exchange between industrial systems.
OPC DA
Classic OPC Data Access, built on Microsoft COM/DCOM and therefore tied to Windows.
OPC server
Software that exposes data from PLCs or devices so OPC clients such as SCADA can read it.
Information model
The structure of objects, variables and types that an OPC UA server exposes.
MQTT broker
The server that receives published messages and forwards them to every subscriber of the topic.
Topic
The name under which an MQTT message is published, such as site/tank01/level.
QoS
Quality of service in MQTT: at most once, at least once or exactly once delivery.
Sparkplug
An Eclipse Foundation specification that defines topics, payloads and session state for industrial MQTT.

Frequently asked questions

Does OPC UA replace Modbus?

No, OPC UA usually sits above Modbus rather than replacing it. Many field devices will keep speaking Modbus for years. A gateway or PLC reads them in Modbus and serves the values as OPC UA to SCADA, historians and business systems.

What is the difference between OPC DA and OPC UA?

OPC DA is the classic OPC standard built on Microsoft COM/DCOM, while OPC UA is platform independent with built-in security. OPC UA also carries a full information model, events and history, where OPC DA covers current values only.

When is MQTT a better choice than OPC UA?

MQTT is a better choice when many remote devices send data over cellular or other limited links to a central server. Devices publish only on change, and the broker handles distribution. OPC UA fits better between systems on the same site.

What is an OPC server?

An OPC server is software that reads data from PLCs or devices and exposes it to OPC clients in a standard way. In OPC UA the server also publishes the structure of the data, so clients can browse tanks, meters and alarms by name.

Is MQTT secure enough for industrial data?

MQTT can be secure enough when the connection uses TLS and the broker enforces authentication and topic permissions. The protocol itself does not encrypt payloads. Treat the broker as a critical server and place it according to your IEC 62443 zone design.

How do I convert Modbus to OPC UA?

Convert Modbus to OPC UA with a protocol gateway or an OPC UA server that polls the Modbus devices. You configure the register map, data types and scaling once, and the gateway exposes each value as a named OPC UA node with a unit and timestamp.

Next step

Prepare the technical discussion for your facility.

Bring the equipment list, diagrams and symptoms you have. The Citia team helps map the next step.

Related products and solutions

Keep reading