---
title: "Creating a Tag"
description: "General steps for creating a new tag"
source_url: https://ai-ops.com/docs/tags/creating-getting-started
---

# Creating a Tag

To create a tag, navigate to the **Tags** page and click the **+ Add Tag** button. This opens a form where you choose the tag's **source type** (Device, Expression, or In Memory) and configure its settings.

This guide covers **device tags**: tags that read from and write to a connected device. For the other source types, see [Expression Tags](https://ai-ops.com/docs/tags/expressions.md) and [In-Memory Tags](https://ai-ops.com/docs/tags/introduction.md#in-memory-tags).

> [!NOTE] You can also add tags from a device
> When viewing a device's detail page, you can add tags directly to that device. The create form will have the device pre-selected so you can skip straight to naming the tag.

## Form Fields

### Name

A unique identifier for the tag. This is how you'll reference the tag throughout the platform: in trends, models, expressions, and exports.

- **Required**
- Must be unique across all tags
- Examples: `Chiller-01/Supply-Temp`, `AHU-3 Damper Position`, `Warehouse Zone 1 Humidity`

### Description

An optional free-text field for notes about the tag: what it measures, where the sensor is located, or any context that helps your team.

### Device

The device this tag belongs to. Tags inherit their protocol from their device, which determines which protocol-specific fields appear in the form.

- **Required**
- Devices are grouped by protocol in the dropdown for easy browsing
- Cannot be changed after creation. To move a tag to a different device, create a new tag and delete the old one

### Usage

Whether this tag is read-only or read/write.

| Usage | Description |
|-------|-------------|
| **Input** | Koios reads this tag's value from the device on each scan (default) |
| **Output** | Koios can also write values back to the device through this tag |

Choose **Output** when an AI model, mapping, or component needs to push a value to the device. For example, a setpoint that a model adjusts.

### Range Min / Max

The expected value range for this tag. Defaults to **0–100**.

- Used by AI models for **normalization**. Models expect input values within a known range
- Accepts negative values
- Set this to match the real-world range of the data point (e.g. -20 to 50 for a temperature sensor in °C, or 0 to 500 for a pressure sensor in PSI)

### Units

The engineering units displayed alongside the tag's value (e.g. °C, PSI, RPM, kW). This is a display label only. It doesn't affect the raw value.

Select from common units in the dropdown or type a custom unit.

## Protocol-Specific Fields

The create form shows additional fields based on the selected device's protocol. These fields tell Koios _where_ to find the data point within the device.

You can fill these in during creation, or leave them blank and configure them later on the tag's **Configuration** tab, where you'll also have access to device browsers that can auto-populate these fields for you.

| Protocol | Fields on Create Form |
|----------|----------------------|
| **OPC-UA** | Namespace, identifier type, identifier, data type |
| **Modbus TCP** | Register type, register address, data type, byte/word swap, bit number |
| **EtherNet/IP (Logix)** | Logix tag name, tag type |
| **EtherNet/IP (Generic CIP)** | Assembly instance, byte offset, data type, bit number |
| **SOAP (RDM)** | RDM device, RDM parameter |
| **REST (BOSS)** | Device address, variable code, variable type |
| **Microsoft SQL** | SQL query |

For detailed guidance on each protocol's fields, see the protocol-specific tag creation guides:

- [Creating an OPC-UA Tag](https://ai-ops.com/docs/tags/creating-opc-ua.md)
- [Creating a Modbus TCP Tag](https://ai-ops.com/docs/tags/creating-modbus-tcp.md)
- [Creating an EtherNet/IP Tag](https://ai-ops.com/docs/tags/creating-ethernet-ip.md)
- [Creating a SOAP Tag](https://ai-ops.com/docs/tags/creating-soap.md)
- [Creating a REST Tag](https://ai-ops.com/docs/tags/creating-rest.md)
- [Creating a Microsoft SQL Tag](https://ai-ops.com/docs/tags/creating-mssql.md)

## After Creation

Once you click **Create Tag**, Koios creates the tag and navigates you to its **Configuration** tab. From here:

1. **Review protocol settings**: if you left protocol fields blank during creation, fill them in now. Use the **Browse** button (available for OPC-UA, Modbus TCP, EtherNet/IP, SOAP, and REST) to discover and select data points directly from the device.

2. **Test the tag**: click the **Test** button to verify Koios can read a value from the device for this tag (see [Testing a Tag](https://ai-ops.com/docs/troubleshoot/connection.md#testing-a-connection))

3. **Configure advanced settings**: set up [value mapping](https://ai-ops.com/docs/tags/value-mapping.md), enable test output mode, or configure redundancy if needed

4. **Enable the tag**: flip the enable switch in the tag header

> [!TIP] Enable the device first
> A tag won't collect data until its parent device is also enabled and running. If this is a new device, make sure you've configured and enabled it before enabling its tags.

## Using Device Browsers

For most protocols, you don't need to type protocol settings manually. The **Configuration** tab includes a **Browse** button that connects to the device and lets you discover available data points:

- **OPC-UA**: browse the server's node tree, expand folders, and select the node you want. The namespace, identifier, identifier type, and data type are auto-populated.
- **Modbus TCP**: browse registers on the device and select one. Register type, address, and data type are auto-populated.
- **EtherNet/IP (Logix)**: browse the controller's tag database. Tag name and type are auto-populated.
- **EtherNet/IP (Generic CIP)**: browse the device's EDS file to see assemblies and fields. Assembly instance, byte offset, and data type are auto-populated.
- **SOAP (RDM)**: browse available RDM devices and parameters.
- **REST (BOSS)**: browse available BOSS devices and variables.

> [!NOTE] The device must be reachable to browse
> Device browsers connect to the device in real time. The device must be powered on and reachable on the network, but it does not need to be enabled in Koios. Browsing uses a one-time connection separate from the scan cycle.

## Duplicating a Tag

If you need a tag similar to an existing one, you can **duplicate** it instead of starting from scratch. Right-click a tag in the list and select **Duplicate**, or use the duplicate action on a tag's detail page.

Duplicating copies:

- All protocol-specific configuration (node ID, register address, expression, etc.)
- Range, units, decimal places, and usage
- Advanced settings (value mapping, write always, redundancy)

It does **not** copy:

- The enabled state: the duplicate is always created disabled

You'll be prompted to enter a new **name** and optionally update the **description** before confirming.

## Importing Tags

For bulk tag creation, you can import tags from a CSV file. On the Tags page, click the import button in the toolbar.

The import process has two stages:

1. **Preview**: upload your CSV file and Koios validates it, showing you which tags will be created, updated, or skipped, and flagging any errors. No changes are made yet.
2. **Confirm**: review the preview and click confirm to apply the changes.

To get a CSV template with the correct column format, export your existing tags first using the export button.
