← All Posts

S7 Protocol vs OPC UA for Siemens PLCs: Direct or Standardized

To read data out of a Siemens S7-1200 or S7-1500, you have two paths. The S7 protocol is the native, direct way: speak Siemens' own protocol at the controller on port 102, address memory areas and data blocks, and read. OPC UA is the standardized way: enable the UA server built into S7-1500 CPUs (and S7-1200 CPUs from firmware V4.4) and read structured, self-describing nodes through a cross-vendor protocol. The OPC UA server needs a Siemens runtime license. Both work. They are not redundant: each is the right answer for different jobs.

This guide compares the two so you pick the right interface for a given integration. For the S7 internals, see the protocol guide; for enabling the direct path, enabling PUT/GET.

The Core Difference

S7 protocol is native to Siemens. It is direct and needs no extra server: you talk to the CPU directly. The cost is that it is Siemens-specific and the data model is raw memory (DB numbers, offsets, data types you must decode yourself).

OPC UA is vendor-neutral. S7-1500 CPUs (and S7-1200 CPUs from firmware V4.4) run a UA server internally that exposes selected tags and data blocks as structured, self-describing nodes. The cost is a Siemens runtime license, setup in TIA Portal and a protocol with more layers (sessions, security, subscriptions), but you get security, subscriptions, and a client that works across every vendor.

One-line summary: S7 is the fast, direct door into a Siemens PLC. OPC UA is the standardized, secure lobby that every visitor can use.

Feature Comparison

Factor
S7 Protocol
OPC UA
Native to Siemens
Yes
Built into S7-1500 and S7-1200 (FW 4.4+)
Cross-vendor
Siemens only
Universal
Extra server needed
No
No (built in)
Setup
Enable PUT/GET
Configure UA server, runtime license
Data model
Raw DB/offset
Self-describing nodes
Security
Protection levels
Certs + encryption
Subscriptions
Cyclic read only
Monitored items
Licensing
No extra license
SIMATIC OPC UA runtime license

When to Use S7

When to Use OPC UA

They Coexist

Most modern Siemens plants run both. The same S7-1500 exposes its data over S7 (for tight machine-level integrations and ad-hoc reads) and over OPC UA (as the standardized interface to SCADA, MES, and cloud). Enabling one does not disable the other. The choice per integration is: am I a Siemens-native tool reading specific DBs fast, or a general client that wants structured, secure, subscribe-able data?

Reading S7 Directly on macOS

MacTools S7 Explorer takes the direct S7 path: connect to the PLC on port 102, read data blocks and memory areas, decode types: no TIA Portal, no OPC UA server, no Windows. For the standardized UA path from macOS, MacTools OPC UA Explorer covers that side. The two tools reflect the same either/or this article describes.

Read Siemens S7 on macOS

MacTools S7 Explorer: native macOS S7 client. Read S7-1200/1500 data blocks and memory areas directly, no TIA Portal or Windows.

Get MacTools S7 Explorer

Frequently Asked Questions

Should I use S7 protocol or OPC UA to read a Siemens PLC?

Use S7 for fast, direct access to specific data blocks and memory areas on a Siemens-only network: it needs no extra server and minimal setup, just PUT/GET enabled. Use OPC UA when you need a cross-vendor standard, structured self-describing data, subscriptions, or built-in security. Most Siemens sites run both: S7 for tight integrations and ad-hoc reads, OPC UA as the standardized northbound interface to SCADA and IT.

Does Siemens S7-1200/1500 support OPC UA?

Yes, with a paid license. S7-1500 CPUs from firmware V2.0 and S7-1200 CPUs from firmware V4.4 (with STEP 7 V16 or later) have an OPC UA server built in, so no external OPC server is needed, but Siemens requires a SIMATIC OPC UA runtime license to run it. For the S7-1500 the license size (small, medium or large) depends on the CPU; the S7-1200 has its own OPC UA S7-1200 Basic license. You enable the server in TIA Portal, configure the endpoint and security, and select which data to expose.

Is the S7 protocol secure?

Classic S7 communication (rack/slot, port 102) has no authentication or encryption beyond optional protection levels: it relies on the network being trusted. Siemens offers CPU protection levels and, on newer firmware, TLS-based secure PG/HMI communication, but the cross-vendor secure choice is OPC UA with SignAndEncrypt. Keep S7 on an isolated OT subnet regardless.

Can I read Siemens S7 data without OPC UA or TIA Portal?

Yes. With PUT/GET access enabled on the controller, any client that implements the S7 protocol can read data blocks and memory areas directly over port 102. MacTools S7 Explorer does this natively on macOS: no TIA Portal, no OPC UA server, no Windows.

Related: Continuous Monitoring

Voltrus SCADA reads Siemens S7 and OPC UA (plus Modbus, EtherNet/IP, DNP3): dashboards, alarms, historian. Free open source core.

Further Reading