KKS Coding Explained. How to Read KKS Tags.
A working reference for KKS, Kraftwerk-Kennzeichensystem tag structure in power generation. The function key, equipment unit, and component breakdown levels, worked example tags, and how KKS relates to IEC 81346 and RDS-PP.
KKS is the dominant identification system in thermal power generation. Anyone working on coal-fired stations, combined-cycle plants, or large district-heating installations runs into it within the first day. The encoding is dense, hierarchical, and unforgiving of mistakes, but once decoded it carries more usable information than any other tag system in industrial practice.
This is a working reference, not a marketing piece. If you spend your days squinting at tags like 10LAB10CT001, this is what each character is doing.
The five-block structure
A full KKS code is built from five blocks, each with a defined character width.
| Block | Width | Purpose |
|---|---|---|
| 0, total plant | 1-3 chars | Plant or station identifier, often omitted on internal drawings |
| 1, system | 4 chars | Unit, system, and subsystem |
| 2, equipment unit | 4 chars | Function key plus equipment numbering |
| 3, component | 4 chars | Component identification within the equipment unit |
| 4, signal | optional | Connection or signal point on the component |
In practice, internal plant documentation usually drops block 0 and starts at block 1. The string 10LAB10CT001 reads as three blocks. 10, LAB10, and CT001.
KKS documentation also talks about breakdown levels, which map straight onto those blocks. Level 1 is the system, block 1, Level 2 is the equipment unit, block 2, and Level 3 is the component, block 3. Reading a tag left to right walks down the plant hierarchy one level at a time. The system it belongs to, then the equipment it is part of, then the individual device. That is the whole idea behind the encoding, and it is why a KKS tag sorts and filters cleanly by level.
Block 1. Where in the plant
The first two characters typically identify the unit or block. Position 3 is sometimes used for further subdivision. Common patterns.
10,20,30for unit 1, unit 2, unit 3 in a multi-unit station00for plant-common systems shared across all units01,02for the first and second auxiliary blocks
A coal station with two boilers and two turbines might have systems 10, unit 1, 20, unit 2, and 00, common services such as water treatment, fuel handling, and stack.
Block 2. The function key
This is where KKS earns its reputation for density. The first letter is the main process group. The second letter narrows it to a system. The third letter narrows it further. Then comes a two-digit number.
A short walk through common main groups.
| First letter | Main group |
|---|---|
| L | Steam, water, gas cycle |
| M | Main machine sets, turbine, generator |
| H | Conventional fuel supply |
| E | Fuel handling and ash |
| Q | Auxiliary systems |
| R | Cooling water |
| S | Ancillary systems |
| B | Auxiliary energy supply |
| C | Instrumentation and control |
| G | Water supply and disposal |
So LAB reads as steam-water-gas cycle, L, feed water, A, feed water pumping, B. LAC would be feed water heating. LBA would be main steam piping. The trailing 10 numbers the equipment instance within that subsystem.
The KKS coding manual published by VGB PowerTech runs to several hundred pages and assigns codes for every plausible subsystem. New projects often customize the lower-tier letters for plant-specific needs while keeping the main groups stable.
Block 3. The component
The component block names what the specific device is within its equipment unit. Two characters followed by a three-digit serial number. Some common component letters.
| Code | Component |
|---|---|
| AA | Manual valve |
| AC | Throttle, control valve |
| AT | Trip, safety valve |
| AN | Damper |
| AP | Pump |
| BB | Vessel, tank |
| BR | Heat exchanger shell |
| CF | Flow measuring instrument |
| CP | Pressure measuring instrument |
| CT | Temperature measuring instrument |
| CG | Position measuring instrument |
| CL | Level measuring instrument |
| CY | Analysis measuring instrument |
So in 10LAB10CT001, the CT001 says this is the first temperature instrument on equipment unit LAB10 of unit 1. Most engineers reading KKS pattern-match the component letters first because they answer the most common question. Is this an instrument, a valve, or a pump.
Block 4. Signal point
When required, a signal block extends the tag to identify a specific connection on a component. The format is typically a letter plus three digits, separated from block 3 by a space or hyphen depending on project convention. This is usually only seen on detail drawings and termination diagrams, not on top-level P&IDs.
Worked example
10LAB10AP001 reads as.
10, unit 1LAB, feed water pumping system10, equipment unit 10, first feed water pumpAP001, the pump itself
10LAB10CT001 on the same drawing is the temperature instrument on that same pump.
10LAB10CP002 is the second pressure instrument on that same pump.
10LAB20AP001 is a different feed water pump, equipment unit 20 on the same unit.
20LAB10AP001 is the matching feed water pump on unit 2.
The internal consistency is the appeal. Once you have the function key memorized for the systems you work on, the drawings read themselves.
For quick reference, the same tags decoded field by field.
| KKS tag | Unit | System | Equipment unit | Component |
|---|---|---|---|---|
10LAB10AP001 | 1 | LAB, feed water pumping | 10, first pump | AP001, the pump |
10LAB10CT001 | 1 | LAB, feed water pumping | 10 | CT001, temperature instrument |
10LAC01CT001 | 1 | LAC, feed water heating | 01 | CT001, temperature instrument |
20MAL10AA001 | 2 | MAL, turbine lube oil | 10 | AA001, manual valve |
The pattern holds across every system. Fix the unit, the system, and the equipment number, and the component code is the only field that changes between the instruments and valves on one piece of equipment.
Where KKS gets used today
Thermal power plants are the historical home. Most coal-fired, oil-fired, and combined-cycle plants built outside North America since 1985 are coded in KKS. Increasingly the same convention shows up in.
- Large biomass and waste-to-energy plants
- Concentrated solar power and large PV installations using IEC 81346-10, RDS-PP, which is the formalized successor
- District heating networks
- Some chemical and petrochemical plants where the EPC is German or Austrian
North American power generation tends to stay on its own conventions, often with ISA 5.1-style instrument tags on a project-specific equipment numbering scheme.
KKS vs IEC 81346 and RDS-PP
KKS and IEC 81346 answer the same question, how to give every part of a plant a stable name, in two different grammars.
KKS encodes meaning by position. The block a character sits in tells you whether it is a system, an equipment unit, or a component. A classic KKS string carries no separator signs inside it. You read 10LAB10CT001 by knowing where each field starts and stops.
IEC 81346 encodes meaning by aspect prefix. A leading = marks the function aspect, + marks location, and - marks product, so the split is written out rather than implied by position. The single-letter object codes for the product aspect come from IEC 81346-2, which is the counterpart to the KKS component letters. The full reference-designation rules of IEC 81346 cover how those aspect blocks chain together.
RDS-PP, Reference Designation System for Power Plants, published by VGB as the successor to KKS, is an application of IEC 81346 for power generation. It keeps the power-plant vocabulary an engineer already knows from KKS but expresses it in the 81346 aspect structure. New thermal and renewable plants increasingly specify RDS-PP, while existing KKS-coded stations stay on KKS for the life of the asset. Anyone fluent in KKS reads RDS-PP with little friction, because the system and component logic carries across.
The practical upshot on a modern EPC project. You may see KKS on the legacy units, RDS-PP on the new build, and IEC 81346 aspect designations on the electrical and building-services drawings, all on the same site. An instrument index that keeps each full designation string intact, rather than flattening it into a plain tag, is what lets those conventions coexist without a rename every revision.
Common decoding errors
A few traps that cost projects time.
- Confusing the function key with the component code.
LABandLBAare different systems, not different orderings. ALBA10does not containLABcomponents. - Stripping leading zeros.
01and1are not the same in KKS. Tooling that parses tags numerically silently corrupts the unit identifier. - Treating the system block as a free-text prefix. It is structured. A drawing that suddenly uses
1instead of10is either wrong or following a different revision of the project coding manual. - Mixing project coding manuals. Two units of the same station built by different EPCs will sometimes have subtly different coding manuals. The drawings look the same. The tag semantics are not.
Mapping KKS to instrument index columns
If you maintain an instrument index alongside KKS-coded drawings, the typical column layout is.
- Full KKS tag, master identifier
- Process group, extracted from block 2 first letter
- System, block 2 second and third letters
- Equipment unit number, block 2 numeric
- Component class, block 3 letters
- Component serial, block 3 numeric
- ISA 5.1 equivalent, derived from component class, optional
- Service description, range, signal class, and the rest of the standard instrument index columns
That column split makes it possible to filter by system, by unit, or by instrument type without parsing the tag string at query time.
Preserving KKS structure downstream
A KKS tag carries process group, system, unit instance, equipment instance, and component class in twelve characters. That is more structural information than any other tag system in common use. Whether you are building an I/O list, a maintenance database, or a digital twin, the value comes from keeping the structure intact all the way through. How to structure a multi-standard instrument index that preserves both the KKS string and the ISA-equivalent columns is covered in the instrument index master class guide.
Further reading
- VGB PowerTech KKS Application Explanations
- IEC 81346-10 Reference designation system. Power plants
- RDS-PP Application Guideline, VGB-S-823
- VGB-B 102 Identification Systems for Power Plants