What this error means
ERC groups placed symbols by reference designator. For each group it
compares the number of placed instances against the unit count the
library symbol defines; when they match, the group is skipped. Otherwise
it subtracts the placed unit numbers from the defined ones and reports
one warning per reference naming the leftovers:
Symbol U1 has unplaced units [ B ]. The bracketed list stops at three
units and trails off with "...".
This warning is the umbrella check of a family: each unplaced unit is
also inspected pin by pin, and units holding power input, input, or
bidirectional pins additionally raise missing_power_pin (an error) or
missing_input_pin / missing_bidi_pin (warnings). The family exists
because an unplaced unit puts no pins in the netlist, so nothing else
in ERC will ever look at them. This warning is the only trace the unit
leaves.
Common causes
1. Spare units were left unplaced
Quad gates, dual op-amps, resistor networks: you placed the two sections you needed and the package has four. Whether the others were skipped on purpose or forgotten, ERC cannot tell — that judgment call is yours (see when to exclude).
2. A unit is annotated into a different package
Units belong together purely because they share a reference designator. A hand-edited reference or a reannotation that turned the fourth section into U2 instead of U1 leaves U1 short one unit, with every section plainly visible on the sheet.
3. An updated library symbol defines units the schematic predates
The comparison runs against the symbol's current library definition, so a schematic nobody edited starts warning after Update Symbols from Library pulls in a revision with a new unit.
How to fix it
Place the unit the message names
- Press A (Add Symbol) and place another copy of the same symbol.
- Right-click the new copy → Symbol Unit → the unit from the message.
- Set its Reference to the existing package (U1, not the fresh U?).
- Wire it — or, for a spare gate, tie the inputs off per the datasheet and no-connect the output — and re-run ERC (Inspect → Electrical Rules Checker).
Use when: The unit genuinely is not on the schematic. KiCad 9 and 10 share these menu paths.
Fix the reference on the stray unit
- Find the section carrying the wrong reference — same symbol, different number (U2B among U1A/U1C/U1D).
- Double-click it and change the Reference to the package it belongs to.
- If references are scrambled sheet-wide, run Tools → Annotate Schematic… instead, then re-run ERC.
Use when: Every unit is visibly placed but the warning persists — the group is split across reference designators.
When it’s safe to exclude
This is the one member of the missing-unit family where exclusion is sometimes a decision rather than a mistake: it is warning-level, and a deliberately unused spare gate is a real situation. If your practice is to handle spare sections in layout, excluding the marker (right-click → Exclude) records that choice.
Know what you are silencing first. The unplaced unit's pins are in no net, so no other check will flag them; on the assembled board the spare gate still exists, and floating CMOS inputs oscillate and waste power. Placing the unit and tying its inputs off costs two minutes and makes the decision visible. Downgrading the whole check in Schematic Setup → Electrical Rules → Violation Severity also silences the forgot-a-unit case, which is the one this check earns its keep on.
Gotchas
- The check counts placed instances, not distinct units. Place unit A of a two-unit part twice under one reference and the count matches the unit count, so a missing unit B is never reported (verified, KiCad 10.0.7). Two copies of the same unit satisfying ERC's headcount is working as coded, if not as hoped.
- Current 9.x and 10.x releases print bare unit letters ("[ B ]"); older builds printed "[ Unit B ]", and a symbol with named units prints those names. Match on "has unplaced units" when grepping reports.
- The same unplaced unit can raise up to four rows: this warning plus the per-pin-type checks. Placing it clears them all at once — and typically trades them for pin_not_connected errors until it is wired, which is progress.
Minimal reproduction
Place one unit of any multi-unit symbol — one gate of a 74HC00, one amplifier of an LM358 — annotate it, and run ERC. The report names the units you did not place:
[missing_unit]: Symbol U1 has unplaced units [ B ]
; warning
The checked-in file data/erc/samples/missing_unit.kicad_sch
reproduces this with one embedded two-unit symbol: unit A placed with
its two passive pins wired, unit B (also all-passive, so none of the
pin-type companion checks fire) never placed. KiCad 9.0.9 and 10.0.7
both report exactly the line above, plus one lib_symbol_issues
warning about the missing repro library — an artifact of the
self-contained sample. Adding a unit-B instance under the same
reference makes missing_unit disappear, replaced by
pin_not_connected errors until its pins are wired.
Related errors
- Symbol has power input pins that are not placed
- Symbol has input pins that are not placed
- Symbol has bidirectional pins that are not placed
- Symbol has more units than are defined (reference page coming soon)
FAQ
Is there a way to make sure every single unit of a symbol is used?
This warning is that mechanism: any reference whose placed units do not cover the library definition gets flagged, naming the missing units. It only counts placements — a unit placed but left unwired passes this check and fails others. To avoid the situation up front, tick "Place all units" in the Add Symbol dialog.
Every section is on the schematic and wired — why does ERC still report unplaced units?
Because one of them is annotated into a different package. KiCad ties units together only by reference designator, so a section renamed to U2 leaves U1 short a unit even though nothing is missing visually. Check the number on each section of the flagged symbol; hand-edited references and reannotation are the usual culprits.
Do I have to place the op-amp units I'm not using?
KiCad wants the whole package accounted for, and it is worth doing: the spare amplifier exists on the chip whether or not it is drawn, and unconnected inputs float. Place the unit, tie its inputs per the datasheet, and no-connect the output. If you have firm reasons to leave it off the sheet, exclude the marker — it is a warning, not an error.