The complete guide

What is OPC UA?

OPC UA (Open Platform Communications Unified Architecture) is the open, platform-independent standard for exchanging industrial data between machines, controllers and enterprise software: securely, reliably, and with the meaning of the data carried alongside it. It is maintained by the OPC Foundation and has become the backbone protocol of Industry 4.0.

A precise definition

OPC UA is a service-oriented, platform-independent machine-to-machine communication standard. Two things make it different from older industrial protocols:

  • It is platform-independent. Unlike OPC Classic (which relied on Windows COM/DCOM), OPC UA runs on any operating system, from a PLC or edge gateway to a Linux server or the cloud.
  • It carries meaning, not just values. OPC UA doesn't only transfer a number: it transfers a model that says what the number is (a temperature, a set-point, a machine state), its data type, units, and how it relates to other things.
In one line: OPC UA moves industrial data and a description of that data, securely, between any systems that speak the standard.

Why OPC UA exists

Factories run dozens of vendors' equipment, each historically speaking its own dialect. Integrating them meant custom, brittle, one-off engineering. OPC UA solves this by giving every device a common, self-describing way to expose its data, so a SCADA system, an MES, a historian or a cloud analytics platform can all read the same machine the same way. Typical uses include equipment monitoring, production data collection, remote control, predictive maintenance, historical data access, and OT/IT integration.

The client-server model

In the classic OPC UA model, a server exposes data and sits waiting; clients connect to it, browse its data, and read, write or subscribe to changes. A single server can serve many clients, and a single client can connect to many servers.

CLIENTS SCADA / HMI Historian Cloud session read · write · subscribe · browse OPC UA SERVER Address Space PLC · sensors · machines Machine AOPC UA Machine BOPC UA
Client-server: clients open a secure session with a server that exposes an address space.

Core interactions ("services") include browse (discover what's there), read/write (get or set values), and subscribe (be notified when a value changes, instead of polling).

Publish-subscribe (PubSub)

Client-server is a one-to-one, request/response relationship. For one-to-many, high-scale telemetry, OPC UA added a publish-subscribe model. Publishers push messages to a middleware layer; any number of subscribers receive them. PubSub can run over UDP multicast for real-time local traffic, or over a broker such as MQTT for edge-to-cloud fan-out.

Publishermachine / server Broker / BusMQTT · UDP Subscriber · Cloud Subscriber · MES Subscriber · Analytics
PubSub: one publisher, many subscribers, decoupled through a broker or bus.
Rule of thumb: use client-server for control and rich, on-demand access; use PubSub when you need to fan the same data out to many consumers or push it to the cloud.

The address space & information model

Everything a server exposes lives in its address space, a graph of nodes connected by references. A node can be an object (a pump), a variable (its pressure), a method (start/stop), or a type definition. Because nodes are typed and related, a client can browse and understand a server it has never seen before. This self-describing structure is the "information model", defined in Part 3 and Part 5 of the OPC UA specification.

Objects
 └─ Pump_17            (Object, type: PumpType)
     ├─ Pressure       (Variable, Double, unit: bar)
     ├─ Status         (Variable, enum: Run/Stop/Fault)
     └─ Start()        (Method)

Companion specifications

On top of the base information model, industry groups publish companion specifications: standard models for a domain (robotics, machine tools, packaging, energy, and many more). When a vendor implements a companion spec, their device describes itself the same way as every other vendor's device in that category, turning integration from a custom project into something closer to plug-and-play. Companion specs are distributed as standardized NodeSet XML files that both servers and clients can load.

Security, in brief

Security is built into OPC UA rather than bolted on. It provides encryption (confidentiality), signing (integrity), authentication (certificates and/or user credentials) and authorisation. A connection negotiates a security mode (None, Sign, or Sign&Encrypt) and clients and servers exchange X.509 certificates that must be mutually trusted.

The #1 gotcha: most first-connection failures are certificate trust problems. See OPC UA security & certificates and connection troubleshooting.

OPC UA vs OPC Classic

AspectOPC ClassicOPC UA
PlatformWindows only (COM/DCOM)Any OS / device
SecurityRelies on Windows/DCOMBuilt-in (encrypt, sign, auth)
Data modellingValues onlyRich, typed information model
Comms modelClient-serverClient-server + PubSub
TransportDCOMTCP, WebSockets, MQTT

Got the data flowing over OPC UA? The next step (turning it into ranked, costed actions operators can use) is what Jemba was built for.

See Jemba →

FAQ

Is OPC UA free to use?
The specification is open and there are free/open-source stacks (e.g. open62541, opcua-asyncio). Commercial SDKs and tools also exist. Membership in the OPC Foundation is separate.
What port does OPC UA use?
The OPC UA binary (opc.tcp) protocol commonly uses TCP port 4840, though servers can be configured to use others. Firewalls blocking this port are a frequent cause of connection failures.
Do I need PubSub?
Only if you need one-to-many distribution or edge-to-cloud streaming. Many deployments run perfectly on client-server alone.

Last updated 4 September 2026 · OPC UA Connect is an educational resource and is not affiliated with the OPC Foundation.

Next: OPC UA vs MQTT →

Free download
OPC UA Machine Data → OEE Mapping Kit
Which nodes to subscribe to, how they become Availability, Performance and Quality, and which companion specification already gives you the answer, so you stop inventing tags.
Get the free mapping kit →
Free, no course, no login