A missing placement starts upstream.
The checker can show that a populated BOM reference has no matching placement. It cannot tell whether the part was intentionally omitted, filtered out during export or taken from a different board revision. Resolve that intent in the CAD project before editing a CSV.
Which export choices can remove a component?
KiCad documents a footprint's position-file exclusion attribute and export options for SMD-only selection, through-hole exclusion and DNP filtering. These choices can produce different reference sets. Confirm the required component scope with your assembler. See the official PCB Editor manual; available labels vary by KiCad version.
Work through a missing C2
In this synthetic case, the BOM groups two fitted capacitors into one row. The placement file contains only C1:
Designator,Quantity,Populate "C1 C2",2,yes Designator,Mid X,Mid Y,Rotation,Layer C1,12.4,8.2,90,Top
These are two separate CSV snippets, not one combined file. Read the columns, map the reference and quantity fields, select millimeters and run the neutral check. C2 is missing a placement. The grouped BOM line remains its source evidence; a count of one BOM row and one CPL row would have concealed the mismatch.
- Confirm the intended build. Is C2 fitted on this revision and variant? Compare the schematic, board and assembly notes.
- Inspect its footprint attributes. A part can exist on the board yet be excluded from a position export. Record why any exclusion is present.
- Review the export selection. Check the component scope and board sides. A bottom-side placement cannot be recovered by copying the top-side coordinates.
- Regenerate a coherent pair. Export the BOM and CPL from the same saved project and intended assembly variant.
- Rerun and inspect the result. A newly matched C2 fixes this reference-set discrepancy only. It does not validate its centroid, polarity or physical orientation.
If C2 is intentionally not fitted
Express the population intent explicitly in the checker input. Split the synthetic grouped row into C1 with quantity 1 and Populate yes, and C2 with quantity 0 and Populate DNP. Keep actual part details in your real BOM. This is an input example, not a universal factory submission format.
A Boolean column called DNP commonly expresses the inverse of Populate. Do not map it as Populate without converting the values. Review the population conventions and worked variants.
Keep quantity, position and physical approval separate
For a ten-board order containing two capacitors per board, the per-board grouped quantity is 2, not 20. The checker compares that quantity with the expanded designator list. It does not prepare procurement quantities or model assembly attrition.
After reference reconciliation, inspect units, origin, bottom-side conventions and physical rotation in your design and the factory preview. JLCPCB's file-preparation recommendations ask for consistent references and both sides in one CPL. The neutral check is not an emulator of that uploader.
Save the discrepancy report with the original exports and record the source-project revision used for the replacement pair. Filtering the issue queue changes the view only; downloaded reports retain every issue.
Open the checker or review placement-data limits.