Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.


There are several different types or scopes of Tags you can create in Ignition: Gateway Executed Tags, System Tags, and Client Tags. Each Tag belongs to a scope, and each scope plays a role in how Tags behave. All these Tag types are available in the Tag Browser.

When discussing "Tags", we commonly mean Gateway Executed Tags, but System and Client Tags also play an important role in the overall design of a project.

Let's examine the different types of Tags.

Gateway Executed Tags

Tags executed in the Gateway support all of the primary features of Tags: scaling, alarming, history, and role-based permissions. These Tags are all Gateway scoped, and the values of the Tags are shared among all running clients. They are identical in their configurations, apart from defining how the value is generated.

You can create each of these Tags in the Tag Browser by right clicking on the Tags folder, scroll down to New Tag and select the desired Gateway Executed Tag.

OPC Tags

An OPC Tag is an OPC server and address which drives values. The OPC server is typically a PLC or device, such as Ignition's OPC-UA server, or any third party POC-UA server. 

In the Tag Browser, double click on any existing OPC Tag, to see the the OPC Server name and Item Path.  

Memory Tags

The Memory Tags are simply values. The value is specified during configuration, and is stored when written (if the Tag allows writing).

Expression Tags

The Expression Tags are driven by an expression, and its values are derived from a calculation. The expression syntax is the same as for property bindings, and allows mathematical operations, references to other Tags, logic operations, functions, and more. This expression example converts Celsius to Fahrenheit.

SQL Query Tags

The SQL Query Tags execute a SQL Query, whose result provides the value for the Tag from the SQL database. Like SQL binding in Vision, SQL Query tags Tags can reference other Tags to build dynamic queries. This SQL query example is getting the average of Ramp 1 Ramp1 from the History table. 

Complex Tags (UDTs)

Complex Tags are created out of standard Tag types, but offer a variety of additional features. In simple terms, you can think of them as a way to create "data templates", where a particular structure of Tags is defined, and can then be created as if it were a single Tag. This UDT example shows 2 Motor instances, the data type Motor, and all the Tags that make up the structure (i.e., AMPS, HI SP, HOA, RUN_CMD, AND STATUS). 

Image Added



Scroll html ignore



NameTypes of Tags





System Tags

The Gateway System tags provide status about the system, such as memory usage, performance metrics, and so on. They exist for the Client and the Gateway. You can modify the Gateway System tags to use alarmingTags are status Tags that Ignition provides about the Client and the Gateway.  You cannot create any new Tags in the Client or Gateway scoped folders.  The Tag names and folder structure are managed by the Ignition Gateway. However, you can modify Gateway-scoped Tags to perform alarming, history, and scaling but additional System tags cannot be added to the System folder. The tag names and folder structure is managed by the Ignition Gateway..  You cannot modify Client-scoped Tags.

Image Added

Client-scoped Tags

Client-scoped Tags provide status information about the client's system.  Every individual client is going to have their own values like IP address, hosting name, username, etc,. 

Image Added 

Gateway Scoped Tags

Gateway-scoped Tags  provide status information about the Gateway like alarming, database, throughput, memory usage, performance of the server, and much more.

Image Added


Client Tags

The Client tagsTags, as the name implies, are only available for use in Clients. They are scoped at the client level unlike the Gateway executed tagsExecuted Tags. All clients will have the same client tags Tags, however, the actual values the client tags represent will be are unique and independent of each other. In other words, even though they client Tags are created in the Designer, each client will create their own instances. This makes them very useful as in-project variables, for passing information between screens, and between other parts of the clients, such as scripting.

Client tags Tags are a hybrid of memory, expression, and SQL Query Tags and do not have a scan class. When set to run as an expression or query, a poll rate is specified dictating how often the value should be calculated.

Client tags Tags support datasets in addition to all the other datatypes such as integers and date-times.

Image Added