I/O List Columns Explained. What Each One Is For.
A column-by-column guide to the instrument I/O list. What each field contains, who reads it downstream, where the data comes from, and the common mistakes.
The columns on an I/O list are not arbitrary. Each one exists because a specific person downstream needs the information it carries. The PLC programmer needs the signal class and channel assignment, the commissioning technician needs the range and fail position, the safety auditor needs the BPCS, SIS classification and the SIF identifier. A column that is blank, missing, or filled with the wrong kind of data is work that somebody will have to do again, later, under more time pressure.
Identity columns
The identity columns are the spine of the list. Every other column qualifies a row. These columns name it.
Tag number
The tag number is the unique identifier for a field instrument. It follows the ISA 5.1 convention on most projects. Function letters followed by a loop number, with optional suffixes for voted sets or multiple instruments on the same loop. PT-101 is a pressure transmitter on loop 101. FCV-302 is a flow control valve on loop 302. PT-101A, PT-101B, PT-101C are three pressure transmitters in a 2oo3 voted arrangement on the same loop.
The tag number must be unique across the entire list. Duplicates are the single most common cause of incorrect wiring and incorrect PLC tag mapping. Every duplication that is caught in the spreadsheet takes minutes to fix. Every duplication that makes it to the PLC program or the loop drawing takes hours.
What goes wrong. Engineers add rows by copying an adjacent row and forgetting to change the tag number. The result is two rows for PT-101 with different P&ID references and different signal classes. Neither is obviously wrong. A reviewer has to recognise that the tag appears twice.
Instrument type
The instrument type column carries the ISA function letters without the loop number. PT, FCV, TT, XV, LIC. It exists separately from the tag number because it is the field the system uses for grouping, filtering, and statistics. A project manager who wants to know how many transmitters are in the current revision can filter on the instrument type column in seconds. A programmer who is building tag naming conventions for the PLC checks this column to confirm the function code.
On a list that only carries tag numbers without a separate type column, answering "how many control valves do we have. " requires a text parse of a single column. That is a spreadsheet formula problem that should not exist.
Description
The description is a plain-language statement of what the instrument measures or controls. "Suction Header Pressure," "Reactor Outlet Temperature," "Feed Flow," "Scrubber Outlet Gas Pressure Differential." The audience for the description column is the broadest. Operations, maintenance, commissioning, and anyone who opens the list without already knowing the process.
The description should match what appears in the instrument index and on the loop drawing. Three documents using three different descriptions for the same tag cause confusion during commissioning and in the as-built package.
What goes wrong. The description column is copied from the P&ID drawing title and reads "PID-001 Sheet 3." That is a P&ID reference, not a description. It happens when the person building the list does not have enough process knowledge to write the description and copies the nearest available text instead.
P&ID reference and P&ID revision
The P&ID number is the drawing where the instrument appears. PID-001, PID-022, PID-034. Every row must have one. When a reviewer questions whether a tag is correct, the P&ID reference is how they verify it.
The P&ID revision is the column that makes the P&ID reference useful. The number alone tells you which drawing. The revision tells you which version of that drawing the row was built from. If PID-001 is at revision C when the I/O list is issued, every row that originated from PID-001 should show revision C. When PID-001 is revised to revision D and an instrument is added, the new row carries revision D, and any changed rows are updated to revision D as well.
Without the revision column, the I/O list has no way to record that a particular row is current or stale. A reviewer comparing the list against the latest P&ID has to check every row against every revision of every drawing. With the revision column, they only have to check rows whose revision is earlier than the current drawing revision.
On projects under management of change, a mismatch between the P&ID revision on the I/O list and the current issued revision is a formal finding that requires a documented justification or a list update. The revision column is not optional on those projects.
Loop number
The loop number groups all the instruments that participate in a single control or measurement loop. On loop 101, you might have PT-101, pressure transmitter, AI, PIC-202, pressure indicating controller with no I/O channel of its own, just a function block in the PLC, and PCV-304, pressure control valve, AO. The loop number column is what ties them together in the list.
Without loop numbers, the list cannot be sorted to show a complete loop at a glance, and the loop folder cross-reference is manual. With loop numbers, a commissioning engineer can filter the list to loop 101, see every instrument, and confirm that the field installation and the PLC program are aligned before running the loop test.
Signal columns
The signal columns are the engineering heart of the list. They drive hardware selection, PLC scaling, and hazard review.
Signal class
Signal class is AI, AO, DI, or DO, Analog Input, Analog Output, Digital Input, Digital Output. Every wired instrument on the list has exactly one signal class. This is the field that determines which type of I/O card the instrument lands on. An AI lands on an analog input card. A DO lands on a digital output card. Mixing signal classes on cards that do not support them is a wiring error, and the signal class column is the first check.
The signal class follows from the instrument type by well-established rules. Transmitters, PT, FT, LT, TT, AT, PDT are AI. Continuous control valves and positioners, FCV, TCV, PCV are AO. Switches, alarms, and run feedbacks, PSH, PSHH, LSL, FSL, ZSO, ZSC are DI. On, off valves and discrete actuators, XV, SDV, ESDV are DO.
A valve that has both a solenoid, DO and a limit switch confirming open position, DI from ZSO and a limit switch confirming closed position, DI from ZSC is three channels and three rows on the list. The valve body is one instrument. The I/O representation has three rows because there are three distinct electrical signals.
What goes wrong. The signal class column is left blank because the person building the list did not know whether a particular instrument was AI or AO, and left it to be filled in later. Later never comes. The card count runs at procurement is based on a list with 15 blank signal class cells, and the hardware order is wrong before a single cable is pulled.
I/O type
The I/O type column carries the signal detail within the class. 4-20 mA, HART, 4-20 mA with digital overlay, 0-10 V, dry contact, voltage-free, 24 VDC digital, 120 VAC digital, Pt100, thermocouple type K. This is the column the electrical engineer needs for cable selection and the PLC programmer needs to confirm that the card input type matches the transmitter output type.
A HART transmitter like PT-101 carries two things on its two-wire loop. The 4-20 mA analog signal and a HART digital signal layered on top. If the I/O card does not have HART capability and the design requires HART for device configuration or diagnostics, the I/O type column is where that requirement is documented. Without it, the programmer sees "4-20 mA" and selects a non-HART card that forces a site visit every time device configuration needs to change.
Range and units
For an analog instrument, AI or AO, the range column carries the calibrated measurement span. 0-100 kPa, -10 to 110 degrees C, 0-500 L, min. The units column carries the engineering unit. KPa, degC, L, min. Together, these two fields drive the PLC scaling table. The value at 4 mA and the value at 20 mA.
For a discrete instrument, DI or DO, the range column carries the state labels as described in the FAQ above. This is not numeric, but the column is not blank.
What goes wrong. The range column is blank on AI rows because the transmitter datasheet has not been received yet. The PLC programmer uses a placeholder scaling of 0-100 that nobody updates before commissioning. The first loop test reveals that the flow indication in the control system shows 78% when the flowmeter says 390 L, min, and the cause is a range that was never corrected from 0-100 to 0-500. Fixing a scaling error after the PLC program is compiled and downloaded takes a programmer, a code review, and a download procedure. Filling in the range column before the list is issued for the PLC build takes ten seconds.
Protocol
The protocol column records the communications protocol where it departs from the default hardwired 4-20 mA or dry contact. HART, Foundation Fieldbus, Profibus PA, Profinet IO, Modbus RTU. Most instruments on a standard project are hardwired and this column is blank or "hardwired." When it is not blank, it drives I/O card selection, network topology, and configuration tool requirements. A Profibus PA transmitter cannot be connected to a standard 4-20 mA card. The protocol column makes that constraint explicit.
Assignment columns
The assignment columns connect each instrument row to a physical location in the control system. They start blank and are progressively filled as detailed design advances.
Controller
The controller column identifies which PLC or DCS controller the instrument is assigned to. On a project with a BPCS controller and a separate SIS controller, this might be PLC-1 and SIS-1. On a large plant with multiple control rooms and multiple distributed controllers, there may be a dozen controller identifiers.
The controller column is related to but distinct from the BPCS, SIS classification column. An instrument is classified as BPCS or SIS based on its function, and assigned to a controller based on the hardware architecture. On a well-designed system they align perfectly. On a project where the hardware architecture is still being finalised when the classification is already set, they may not align yet. Keeping them in separate columns makes the mismatch visible.
Rack, slot, and channel
Rack, slot, and channel are the three-coordinate address that locates a signal in the PLC hardware. Rack PLC-1, Slot 4, Channel 3 means the fourth card in the first rack, third input on that card. These three columns must be separate, see FAQ above and must be filled before the list is issued to the electrical designer for cable routing and to the systems integrator for PLC programming.
An I/O list column that reads "PLC-1 R2 S4 CH03" as a single value works for humans reading it. It fails for every automated process. Import into a PLC configuration tool, pivot table to show card utilisation, comparison between two list revisions to find what moved. Separate columns cost nothing to create and prevent a category of problems that are invisible until they hit.
What goes wrong. The assignment columns are filled at the start of the project with placeholder values because the controls engineer wants to show that the column exists. The placeholders survive through multiple revisions because nobody updates them. At FAT, the PLC address in the program does not match the assignment column on the list, because the assignment was revised in the PLC configuration without being reflected in the spreadsheet. Tracing which document is correct takes time the FAT schedule does not have.
Classification columns
Classification columns tell a reviewer what system a row belongs to and what safety requirements apply to it.
BPCS, SIS
Every row on the list must carry BPCS or SIS. There is no third option. An instrument is either wired to the basic process control system or to the safety instrumented system. Instruments that appear to be "shared" are two separate instruments. One BPCS instrument and one SIS instrument, each with its own tag, its own I/O row, and its own physical wiring run. IEC 61511 requires the separation. The BPCS, SIS column is how the I/O list demonstrates it.
A safety auditor reviewing the list for a pre-startup safety review will filter this column to SIS and verify that every SIS row is assigned to an SIS-rated controller with SIS-rated I/O cards. If the column is blank, the auditor cannot perform the filter and must manually cross-reference the list against a separate SIS instrument register. Blank columns do not make the auditor's job impossible. They make the review take three times as long and generate a finding that requires a corrective action. See SIL-rated I/O list structure for the full set of safety columns.
SIL target and SIF identifier
For SIS rows, the SIL target column carries the Safety Integrity Level assigned to the Safety Instrumented Function the instrument participates in. SIL 1, SIL 2, SIL 3. The SIF identifier column carries the reference for that function. SIF-101, SIF-102.
These two columns allow a reviewer to trace an instrument row to a specific protection function and verify that the device capability, from its SIL certificate meets the loop requirement. Without them, the SIS I/O list is a hardware document without a safety design reference. With them, the I/O list becomes a summary of the functional safety design that stands on its own.
Status columns
Status columns carry the current state of each row through the project lifecycle. They do not contain engineering data. They contain process data. Where is this tag in the review and commissioning workflow.
Review status
The review status column records whether a row has been reviewed and accepted or whether it still needs attention. Needs review, accepted, needs revision, added from markup. On a project where instruments are extracted from P&IDs and then reviewed by an engineer before the list is issued, this column tracks which rows have been through the review and which have not.
What goes wrong. Review status is not used because the project team considers it overhead. The list is issued for construction with 40 rows that were added at the last P&ID revision and never reviewed. Three of those rows have incorrect signal classes. The errors are not caught until commissioning.
Loop tested
The loop tested column is the commissioning record at the row level. It is blank until the field loop test is completed, then marked with the test date and the technician's initials. A project manager can open the list, filter on blank rows in the loop tested column, and see immediately how many loops remain to be tested. This column is not filled by the engineers who build the list. It is filled by the field team. The column must exist in the workbook before field commissioning starts, or the test record goes into a separate document that may or may not stay in sync with the list.
Notes
The notes column is the open-text field for anything that does not fit another column. "transmitter location changed from East nozzle to West nozzle per field markup," "hold pending process hazard review," "HART configuration required for remote diagnostics," "fail position to be confirmed against P&ID revision D." Notes are how individual rows communicate context to every discipline that reads the list. A notes column with no entries is suspicious. Most real projects have at least a few rows with conditions that need to be recorded somewhere.
Worked example. Two rows fully populated
The following table shows one transmitter row and one valve row from a small unit, populated to the level of detail an issued-for-construction list should carry.
| Field | PT-101, AI | XV-301, DO |
|---|---|---|
| Tag number | PT-101 | XV-301 |
| Instrument type | PT | XV |
| Description | Feed Suction Header Pressure | Feed Isolation Valve |
| Loop number | 101 | 101 |
| P&ID reference | PID-001 | PID-001 |
| P&ID revision | C | C |
| Signal class | AI | DO |
| I/O type | 4-20 mA HART | 24 VDC |
| Range | 0-1000 kPa | 0 De-energised, Valve Closed, 1 Energised, Valve Open |
| Units | kPa | n, a |
| Fail position | n, a | Fail Closed, FC |
| Protocol | HART | hardwired |
| BPCS, SIS | BPCS | BPCS |
| Controller | PLC-1 | PLC-1 |
| Rack | 1 | 1 |
| Slot | 2 | 5 |
| Channel | 4 | 8 |
| SIL target | n, a | n, a |
| SIF identifier | n, a | n, a |
| Review status | Accepted | Accepted |
| Loop tested | n, a | n, a |
| Notes | HART asset management required | Limit switches ZSO-501 and ZSC-502 on separate DI rows |
Note the XV-301 row. The range column carries state annotations, the fail position column carries FC, and the notes column explicitly states that the limit switches on this valve appear on two additional DI rows. Those two additional rows are for ZSO-501, valve open confirmation, DI and ZSC-502, valve closed confirmation, DI. Three rows for one physical valve assembly. Three distinct electrical signals.
Row convention. One row per instrument or one row per channel
The choice of row convention determines how multi-channel devices appear on the list. Two conventions are in use on real projects.
One row per instrument is the simpler convention. Each physical instrument is one row. A shutdown valve with a solenoid, an open limit switch, and a closed limit switch is one row on the instrument index, so it is one row on the I/O list. The signal class column has to carry three entries, DO, DI, DI, or only the primary signal, DO and the limit switches are noted elsewhere. This convention makes the row count equal the instrument count, which is useful for tracking design completeness against the equipment list.
One row per channel is the more precise convention and the one that most PLC programmers and commissioning engineers prefer. Each I/O channel is one row. A shutdown valve with three signals is three rows. A 2oo3 pressure voting set, PT-101A, PT-101B, PT-101C is three rows. The row count is the I/O channel count, which is what drives card sizing. This convention is unambiguous. Each row has exactly one signal class, one rack, slot, channel address, and one loop test record.
Both conventions work. The project must use one consistently. A list that uses one row per instrument for transmitters and one row per channel for valves is the worst outcome. A reviewer cannot tell how many channels are in the list without manually examining every multi-output device.
What goes wrong
Range column blank on AI rows. This is the most common error on lists built before instrument datasheets are available. The blank propagates through to PLC configuration, and the scaling is wrong at commissioning. The fix is to populate the range column from the P&ID notes, the process data sheet, or the preliminary instrument data sheet, even if the value is provisional. A provisional range that is later confirmed is one change. A blank range that is discovered at commissioning is a PLC change under a formal change management procedure.
Missing units on AI rows. A range of 0-500 means nothing without the unit. KPa, bar, psi, and MPa all carry 0-500 ranges on different projects. The commissioning engineer who trusts the range without the unit and configures the wrong engineering unit in the PLC will have a process value that is numerically correct but in the wrong unit, which most alarm systems do not catch.
Rack, slot, channel filled with placeholder values before cards are assigned. Placeholders like "TBD" are acceptable. Placeholder values that look like real addresses, "R1, S1, Ch1" for every row are dangerous. A programmer who imports the list and trusts the addresses will build a PLC program with every instrument at R1, S1, Ch1. The resulting correction is a full address reassignment in the program, the loop drawings, and the termination schedule simultaneously.
BPCS, SIS column omitted. Without this column, a safety auditor cannot filter the list. They must cross-reference every row against a separate system classification document. This does not prevent the audit from completing. It adds hours to it and generates a finding that the list should be corrected to include the column before the next revision is issued.
Column order changed between revisions. The list is issued at revision B with 18 columns. At revision C, an engineer inserts a "Hazardous Area Classification" column between signal class and I/O type, shifting every subsequent column one position to the right. Every tool that reads the list by column position, a PLC import, a custom Excel macro, a downstream database feed is now reading the wrong column. Insert new columns at the right edge of the list. If a new column genuinely belongs between two existing columns for readability, add it at the right edge and note its logical position in the column header. Do not shift columns that have already been issued.
The full guide to building an I/O list from P&IDs, including the workbook structure, the column order, and the issued-revision protocol, is at I/O list creation guide.
For the downstream use of the columns covered here, see what goes into a TIA Portal export, which shows how rack, slot, channel, and signal class columns map to Siemens import fields, and instrument index vs I/O list vs line list, which places the I/O list in the context of the broader project document set.