How to Label Cables and Ports
By VJ Ries · Published 2026-07-12 · Updated 2026-08-01 · 9 min read
Label every cable with two things: a permanent cable ID that matches the physical tag on the wire, and a signal name that says what the cable carries. Assign IDs by signal family: V for video; A for audio; N for network; C for control. Zero-pad the numbers. Print the ID on both ends of every run. Label the ports you land on at each device and patch panel so the endpoint on the cable matches the endpoint on the drawing. Keep IDs dumb and stable so a re-patch changes the paperwork and leaves the label alone; the whole scheme feeds straight into your cable schedule.
Why label cables at all?
Not decoration. A label is the one part of your documentation that has to work in a dark rack. At the back of a hot room, at 2am, held by a tech who was not in the design meeting. The diagram lives on a laptop. The schedule lives in a binder. The label is the only piece of documentation physically attached to the thing you are troubleshooting, which makes it the piece that gets used the most and tested the hardest.
Labeling is what turns a working system into a maintainable one. You label for the version of yourself who shows up tired, at a strange venue, to a problem you did not create, because an unlabeled patch works exactly as well as a labeled one until the moment something breaks, and then the difference is a two-minute fix versus ringing out cables by hand while the client watches.
The two-part label: cable ID plus signal name
Every run carries two pieces of text, and they do different jobs:
- Cable ID: unique, permanent, and identical to the tag heat-shrunk on the wire. This is how you find the cable. V007 is V007 whether it is coiled in a case or buried in a bundle.
- Signal name: plain language for what is on the wire right now, like 'Cam 2 ISO', 'PGM A', or 'Lectern Mic 1'. This is how you reason about the system without tracing it.
Keep them separate on purpose. The ID is stable and the signal name can change. Conflating the two is the single most common labeling mistake, and it is the one that makes labels lie after the first re-patch. The ID answers 'which cable is this'. The signal name answers 'what is it doing'. You need both, and you need to be able to change one without touching the other.
A cable-ID scheme that scales
Without a rethink, a scheme that works for a two-camera stream should also work for a touring rig. The one below scales because it is boring. A family prefix. A zero-padded number. Printed on both ends. It is the same scheme the signal-flow diagram assigns as you draw: the ID on the drawing, the ID in the schedule and the ID on the cable are one and the same.
| Part | Rule | Example |
|---|---|---|
| Family prefix | One letter for the signal family | V video, A audio, N network, C control |
| Number | Zero-padded, unique within its prefix | V001, V002, A014 |
| Full cable ID | Prefix plus number, printed on both ends | V007 |
| Signal name | Plain-language contents, kept separate from the ID | Cam 1 SDI to Switcher In 3 |
Pick a number width that covers your biggest job and stick to it. Three digits (V001) leaves room for 999 runs in a family, which outlasts most systems you will ever build. Padding also keeps IDs sorting correctly on paper and on screen, so V002 lands before V014 instead of after it. If you run a lot of fiber or power, give each its own prefix rather than bending an existing one. One consistent namespace beats a clever exception.
IDs are permanent, patches are temporary
Golden rule: the ID names the cable and not the job the cable is doing today. When V007 gets repurposed mid-tour from a camera feed to a prompter feed, the tag on the wire stays V007. Only its signal-name entry in the schedule changes. Schemes that encode the destination into the ID, like 'CAM1-SW3', die the first time anything gets re-patched: now the label on the cable and the reality of the patch disagree. A wrong label is worse than no label.
Label both ends, every time
Both ends of every run get the same ID. No exceptions. Not even for a short jumper. You trace from whichever end you can physically reach. The far end is reliably the one buried in a rack, run through a wall, or dressed into a bundle across the room. A cable labeled at one end only is a cable you have to walk or ring out to identify, which is exactly the work the label was supposed to save. The signal name can also note direction, so a return feed or mix-minus path is not mistaken for the send it parallels.
Label the ports, not just the cables
Cables land on ports, and the ports need labels too. On a device, that means the port you actually use is identifiable as the same port named in the diagram and the schedule: 'SDI IN 3'; 'HDMI OUT 1'; 'Dante primary'. On a patch panel, every position gets a number and the numbering matches the drawing, so a punch-down or a re-patch does not turn into a guessing game. The goal: three endpoints all name the same physical hole. The one printed on the cable. The one on the device or panel. The one in the port-to-port documentation.
Here is where a port-aware tool does the bookkeeping for you. When each device carries its real ports, as they do in the WireFlow device library, the endpoint you draw is a real port on a real device. It flows into the schedule and the printed label without being retyped. For the mechanics of assigning and reading ports, see working with ports. The same discipline applies to internal patching inside a rack elevation.
Physical labels that survive the show
The scheme is only as good as the tag that carries it. A few practices, kept at the concept level, since the exact product is a shop preference:
- Heat-shrink sleeves printed and shrunk over the cable near each connector: permanent, low-profile, and they survive coiling and repeated load-ins. Best for runs that live in a rack or travel in a case.
- Wrap-around or flag labels: a printed tail that folds back on itself and stays readable from any angle. Fast to apply, good for field adds and for cables that are already terminated.
- Placement: put the label the same distance from the connector on every cable, close enough to read once the cable is dressed. A tech who knows where to look does not have to hunt.
- Printed over handwritten: a label printer gives legible, consistent, durable tags that match the schedule exactly. Handwriting is fine for a genuine one-off, but it fades, smears, and never quite matches the paperwork.
Label a system end to end
Order matters: assign before you cut; print before you dress; verify against the schedule as you go.
- Assign a family prefix to each signal type in the system: V, A, N, C, plus any others the job needs.
- Number every run on the diagram within its family, zero-padded, before a single cable is cut or pulled.
- Print two tags per run, one for each end, plus a handful of spares for the runs you will inevitably add on site.
- Fix the tag the same distance from each connector: heat-shrink at the connector for permanent runs, wrap-flags for field adds.
- Label the ports you land on at each device and patch panel so every endpoint on the cable matches an endpoint on the drawing.
- As you dress and patch, tick each run off the cable schedule. A run with no tick is a run nobody has verified.
- When anything gets re-patched, update the signal name in the schedule and leave the cable ID alone.
From labels to the cable schedule
If the IDs already live on the diagram, the schedule is not a second document you maintain by hand; it is a view of the first one. Every labeled run is one row in the cable schedule: ID; signal name; from device and port; to device and port; type; length. Assign the ID once. It appears on the drawing, in the schedule and on the printed tag, with nothing retyped and nothing to drift out of sync.
WireFlow derives the cable schedule from the port-to-port connections you draw, so labeling stops being separate busywork and becomes a byproduct of drawing the system correctly. This is what a port-aware diagram buys you. Bundle several labeled runs and they roll up into a cable loom or snake with the member IDs preserved. If you want the columns without the tool yet, start from a cable schedule CSV template, or see the whole chain on a fully documented sample show. The product mechanics live in cable labels and schedules.
Frequently asked questions
- Should the cable ID include the source and destination?
- No. Keep the ID dumb. Encoding endpoints into the ID, like 'CAM1-SW3', means the tag lies the moment you re-patch. A wrong label costs more time than no label. Put the endpoints in the signal-name and schedule columns (they are cheap to update) and keep the printed ID stable.
- Do I really need to label both ends?
- Yes. You trace from whichever end you can reach, and the far end is usually the one buried in a rack or run across the room. Both ends carry the same ID, so you can identify the cable without walking it or ringing it out.
- Printed labels or handwritten?
- Print whenever you can. Printed tags are legible and durable, and they match the schedule exactly. Handwrite only for a temporary field add, then replace it with a printed tag at strike or on the next build. Handwriting fades and rarely matches the paperwork.
- How do I label power and fiber?
- Same scheme, their own prefix. Give power a P and, if you run enough fiber to track it separately, its own letter as well. Then number within each. The point is one consistent namespace, not a special case per cable type.
- What is the difference between a cable label and a cable schedule?
- The label is the physical tag on the wire. The schedule is the document that lists every labeled run with its endpoints, type and length. They share the same IDs and stay in sync, which is the whole reason to assign IDs once and derive the schedule rather than type it twice. See how to build a cable schedule.
Generate your cable schedule from the diagram
WireFlow derives the cable schedule from your signal-flow diagram, every run labeled end-to-end, exportable for the shop and the truck.