{"id":2922,"date":"2026-09-16T10:39:24","date_gmt":"2026-09-16T08:39:24","guid":{"rendered":"https:\/\/www.inray.de\/hub\/?p=2922"},"modified":"2026-09-17T10:41:35","modified_gmt":"2026-09-17T08:41:35","slug":"opc-ua-vs-mqtt-why-the-question-is-actually-misposed","status":"publish","type":"post","link":"https:\/\/www.inray.de\/en\/hub\/opc-ua-vs-mqtt-warum-die-frage-eigentlich-falsch-gestellt-ist\/","title":{"rendered":"OPC UA vs. MQTT: Which Protocol Is Best for What?\u00a0"},"content":{"rendered":"<p class=\"wp-block-paragraph\"><strong>In short: OPC UA connects, while MQTT decouples.<\/strong> OPC UA is a service-oriented protocol for standardized, secure access to machine and plant data\u2014a client makes a targeted request to a server. MQTT is an event-driven publish\/subscribe protocol: data sources and data recipients are not aware of each other; a broker mediates between them. Both protocols are open standards, and both transmit structured data\u2014the difference lies in the communication pattern, not in their value.\u00a0<br><br>That is why the practical answer is rarely \u201eeither\u2014or\u201c: <strong>OPC UA for access and data acquisition at the machine, MQTT for distribution and integration with IT and the cloud.<\/strong> Combining the two results in an architecture that provides end-to-end support, from the shop floor all the way to the cloud.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/youtu.be\/oBqASkZwDg4\" target=\"_blank\" rel=\"noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"1280\" height=\"720\" src=\"https:\/\/www.inray.de\/wp-content\/uploads\/2026\/09\/inray-youtube-opcua-mqtt-1280x720-play.jpg\" alt=\"Two men present a comparison of OPC UA and MQTT.\" class=\"wp-image-2934\" srcset=\"https:\/\/www.inray.de\/wp-content\/uploads\/2026\/09\/inray-youtube-opcua-mqtt-1280x720-play.jpg 1280w, https:\/\/www.inray.de\/wp-content\/uploads\/2026\/09\/inray-youtube-opcua-mqtt-1280x720-play-300x168.jpg 300w, https:\/\/www.inray.de\/wp-content\/uploads\/2026\/09\/inray-youtube-opcua-mqtt-1280x720-play-663x373.jpg 663w, https:\/\/www.inray.de\/wp-content\/uploads\/2026\/09\/inray-youtube-opcua-mqtt-1280x720-play-18x10.jpg 18w, https:\/\/www.inray.de\/wp-content\/uploads\/2026\/09\/inray-youtube-opcua-mqtt-1280x720-play-768x432.jpg 768w\" sizes=\"(max-width: 1280px) 100vw, 1280px\" \/><\/a><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>The external link to the video accompanying the article:<\/strong> <a href=\"https:\/\/youtu.be\/oBqASkZwDg4\" target=\"_blank\" rel=\"noopener\">Lunch Talk \u2013 OPC UA vs. MQTT on YouTube<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>The key question: Who is addressing whom?<\/strong>&nbsp;<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The key difference between the two protocols is the question of who initiates the communication and who needs to know whom.\u00a0<br><br>At <strong>OPC UA<\/strong> There is a directed relationship: A client establishes a session with a server, navigates through its address space, reads values, writes parameters, and subscribes to changes. The client knows which machine it is communicating with. This is ideal when you want to access a specific system, and it requires that both sides be accessible.\u00a0<br><br>At <strong>MQTT<\/strong> This relationship does not exist. A publisher sends data to a topic on the broker and does not know who is reading it. A subscriber subscribes to a topic and does not know where the data comes from. The sender and receiver are decoupled in terms of time, space, and technology. New data recipients can be added without having to make any changes at the source.\u00a0<br><br>It is precisely this decoupling that makes MQTT the foundation of modern data architectures such as the <strong>Unified Namespace<\/strong>, in which the broker maps a company's structured, semantically named data space. MQTT is thus much more than just a transport protocol.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>The Strengths of OPC UA \u2013 With Real-World Examples<\/strong>&nbsp;<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Semantics Instead of Raw Data<\/strong>&nbsp;<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">An OPC UA server does not just return the number 73.4, but also the following information: spindle temperature, degrees Celsius, timestamp, quality code, and associated machine. This structure is part of the protocol and does not need to be maintained later in a mapping table.\u00a0<br><br><strong>Example:<\/strong> A machine tool manufacturer provides its equipment via the umati Companion Specification. An MES can retrieve order status, tool life, and malfunctions without having to develop a separate data model for each machine.\u00a0<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Writing, not just reading<\/strong>&nbsp;<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">OPC UA is bidirectional and supports method calls. You can set setpoints, transfer recipes, and initiate processes.\u00a0<br><br><strong>Example:<\/strong> A production order is created in the ERP system; the recipe parameters are sent to the filling line via OPC UA; the plant operator acknowledges receipt\u2014eliminating the need for paper and manual data entry entirely.\u00a0<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Safety Right from the Factory<\/strong>&nbsp;<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Certificate-based authentication, encrypted communication, and fine-grained access control are integral parts of the specification, not additional work for the project.\u00a0<br><br><strong>Example:<\/strong> In a regulated production environment, it must be possible to trace which service changed which parameter. With OPC UA, this can be achieved without an additional intermediate layer.\u00a0<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Alarms, Events, and Diagnostics<\/strong>&nbsp;<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Conditions, limit violations, and acknowledgments are provided for in the model.\u00a0<br><br><strong>Example:<\/strong> A maintenance system subscribes to alerts from multiple systems and automatically generates tickets that include system context and error codes.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>The Strengths of MQTT \u2013 With Real-World Examples<\/strong>&nbsp;<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>One data stream, any number of recipients<\/strong>&nbsp;<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">A value is published once and is immediately available to all interested systems. New recipients are added without any changes being made at the source.\u00a0<br><br><strong>Example:<\/strong> The production figures for a line are first sent to the broker. From there, they feed the shop floor dashboard, the cloud data platform, and the quality analysis system\u2014three consumers, one connection.\u00a0<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Reliable Even on Unstable Networks<\/strong>&nbsp;<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Low overhead, quality-of-service levels, and buffering make MQTT resilient in situations where connections are unstable or bandwidth is limited.\u00a0<br><br><strong>Example:<\/strong> A fleet of machines at multiple locations transmits energy and status data to headquarters via cellular networks. If a connection is briefly lost, no data is lost.\u00a0<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Scaling Across Plants and Locations<\/strong>&nbsp;<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">A uniform topic tree reflects the organizational structure\u2014company, plant, division, line, machine, key metric.\u00a0<br><br><strong>Example:<\/strong> In the Unified Namespace, the OEE values for all plants are organized under the same topic logic. This means that a cross-site analysis is simply a matter of setting up a subscription, not a new integration project.\u00a0<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Event-driven rather than cyclical<\/strong>&nbsp;<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">It is sent when something changes\u2014not because a polling interval expires. This reduces load and shortens response times.\u00a0<br><br><strong>Example:<\/strong> A fault report reaches the maintenance team on their mobile device the moment it occurs, without the system checking every second.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>When do you use which protocol?<\/strong>&nbsp;<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>OPC UA, if\u2026<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>You need structured access to machine and plant data\u00a0<\/li>\n<\/ul>\n\n\n\n<ul class=\"wp-block-list\">\n<li>You need semantic information\u2014entities, alerts, statuses, methods\u00a0<\/li>\n<\/ul>\n\n\n\n<ul class=\"wp-block-list\">\n<li>You want to write data back to the system, configure parameters, or trigger processes\u00a0<\/li>\n<\/ul>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Security and user management should be integrated\u00a0<\/li>\n<\/ul>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Focus on engineering, diagnostics, or commissioning\u00a0<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><br><strong>MQTT, if\u2026<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>You want to distribute data efficiently to many recipients\u00a0<\/li>\n<\/ul>\n\n\n\n<ul class=\"wp-block-list\">\n<li>You need to connect numerous systems, plants, and locations\u00a0<\/li>\n<\/ul>\n\n\n\n<ul class=\"wp-block-list\">\n<li>You are working with low bandwidth or unstable networks\u00a0<\/li>\n<\/ul>\n\n\n\n<ul class=\"wp-block-list\">\n<li>You implement cloud, IoT, or analytics scenarios\u00a0<br><\/li>\n\n\n\n<li>You need an architecture that can scale without modifying the source code<br><\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\"><br><strong>Interaction in Practice<\/strong>\u00a0<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">In most production environments, a robust architecture results from the combination of both protocols:\u00a0<br><br><strong>Field level<\/strong> \u2013 Sensors, PLCs, robots, CNC machines \u2192 <strong>OPC UA Server<\/strong> \u2013 Structured, semantic access to machine data \u2192 <strong>Edge \/ Gateway<\/strong> \u2013 Processing, aggregation, contextualization \u2192 <strong>MQTT Broker<\/strong> \u2013 Distribution based on the publish\/subscribe principle \u2192 <strong>Cloud &amp; Data Platform, MES\/ERP, Dashboards, AI &amp; Analytics<\/strong>\u00a0<br><br>This is exactly where our products come into play: <strong>kepware<\/strong> and the <strong>OPC Router<\/strong> connect the systems and translate between the protocol worlds, <strong>manubes<\/strong> and <strong>pronubes<\/strong> make the data usable\u2014as real-time visualizations, as data models, and as a basis for decision-making. The protocol issue thus becomes an architectural decision, not a matter of faith.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Conclusion<\/strong>&nbsp;<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">OPC UA and MQTT are not competitors. They address different needs: OPC UA addresses the need for structured, secure access to machinery, while MQTT addresses the need for decoupled, scalable distribution within an enterprise. <strong>OPC UA connects. MQTT decouples.<\/strong> Those who use both in the right places lay the foundation for seamlessly connected, intelligent production\u2014and thus for smart production.&nbsp;<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Would you like to learn more?<\/strong>&nbsp;<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><br>In our <strong>Lunch Talk Video: \u201eOPC UA vs. MQTT\u201c<\/strong> Let's walk through the topic using specific architectural examples and answer your questions live. Reserve your spot now\u2014or contact our experts directly.\u00a0<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">\ud83d\udc49 <a href=\"https:\/\/youtu.be\/oBqASkZwDg4\" target=\"_blank\" rel=\"noopener\">Watch the full video now<\/a><\/p>\n\n\n\n<figure class=\"wp-block-table has-copy-xs-font-size\"><table class=\"has-bg-opacity-gray-background-color has-background\"><thead><tr><th><strong>Criterion<\/strong>&nbsp;<\/th><th><strong>OPC UA<\/strong>&nbsp;<\/th><th><strong>MQTT<\/strong><\/th><\/tr><\/thead><tbody><tr><td><strong>Communication Patterns<\/strong><\/td><td>Client\/server, service-oriented (plus PubSub starting with OPC UA 1.04)<\/td><td>Publish\/Subscribe via a Broker<\/td><\/tr><tr><td><strong>Coupling<\/strong>&nbsp;<\/td><td>Point-to-point connection; client knows the server<\/td><td>Completely decoupled via topics<\/td><\/tr><tr><td><strong>Data Model<\/strong>&nbsp;<\/td><td>Semantic Information Model in the Address Space: Types, Units, Status, Alarms, Methods&nbsp;<\/td><td>Topic Structure; Semantics via Conventions or Sparkplug B<\/td><\/tr><tr><td><strong>Security<\/strong><\/td><td>Integrated: Certificates, Encryption, Authentication, Rights Management&nbsp;<\/td><td>TLS encryption, authentication at the broker; permissions per topic<\/td><\/tr><tr><td><strong>Overhead<\/strong>&nbsp;<\/td><td>Higher \u2013 detailed protocol, binary over TCP&nbsp;<\/td><td>Very small\u2014minimal header, ideal for low bandwidths<\/td><\/tr><tr><td><strong>Scaling<\/strong><\/td><td>Per connection; a large number of clients increases the server load<\/td><td>Very good\u2014one data stream, any number of subscribers&nbsp;<\/td><\/tr><tr><td><strong>What to Do in Case of Power Outages<\/strong><\/td><td>Session has been terminated; reconnection is required<\/td><td>Buffering, QoS Levels, Last Will &amp; Testament<\/td><\/tr><tr><td><strong>Typical location of use<\/strong>&nbsp;<\/td><td>Field and Control Levels, Close to OT<\/td><td>Across locations, edge, cloud, IT-centric<\/td><\/tr><tr><td><strong>Standard<\/strong><\/td><td>IEC 62541 (OPC Foundation)<\/td><td>ISO\/IEC 20922 (OASIS)<\/td><\/tr><tr><td><strong>Standard Port<\/strong>&nbsp;<\/td><td>4840<\/td><td>1883 (8883 with TLS)&nbsp;<\/td><\/tr><tr><td><strong>In a nutshell<\/strong><\/td><td>Connects specifically and describes completely<\/td><td>Decoupled, clean, and efficiently distributed<\/td><\/tr><\/tbody><\/table><\/figure>","protected":false},"excerpt":{"rendered":"<p>In short: OPC UA connects, MQTT decouples. OPC UA is a service-oriented protocol for standardized, secure access to machine\u2026<\/p>","protected":false},"author":5,"featured_media":2929,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[1],"tags":[20,19,23,22,21],"class_list":["post-2922","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-allgemein","tag-mqtt","tag-opc-ua","tag-opc-ua-mqtt-unterschied","tag-opc-ua-vs-mqtt","tag-unified-namespace"],"acf":[],"ase":null,"_links":{"self":[{"href":"https:\/\/www.inray.de\/en\/wp-json\/wp\/v2\/posts\/2922","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.inray.de\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.inray.de\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.inray.de\/en\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/www.inray.de\/en\/wp-json\/wp\/v2\/comments?post=2922"}],"version-history":[{"count":22,"href":"https:\/\/www.inray.de\/en\/wp-json\/wp\/v2\/posts\/2922\/revisions"}],"predecessor-version":[{"id":2961,"href":"https:\/\/www.inray.de\/en\/wp-json\/wp\/v2\/posts\/2922\/revisions\/2961"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.inray.de\/en\/wp-json\/wp\/v2\/media\/2929"}],"wp:attachment":[{"href":"https:\/\/www.inray.de\/en\/wp-json\/wp\/v2\/media?parent=2922"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.inray.de\/en\/wp-json\/wp\/v2\/categories?post=2922"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.inray.de\/en\/wp-json\/wp\/v2\/tags?post=2922"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}