Copper sliver

Diagnostic signature

Copper sliver

The Copper sliver DRC violation in KiCad detects extremely narrow, wedge-shaped protrusions of copper. These tiny slivers pose a hazard during PCB manufacturing because they can detach and cause electrical shorts.

What it means

A 'Copper sliver' violation indicates that a copper shape on the printed circuit board ends in an extremely fine point or narrow wedge. In KiCad, the design rule checker analyzes the geometry of all copper features—most commonly intersecting traces, teardrops, or filled zones—to ensure they do not taper off too sharply. If the DRC encounters a polygon region whose width drops below internal manufacturability thresholds before terminating, it flags the area as a copper sliver. This rule explicitly enforces limits on acute angles and converging copper edges.

Why it happens

Slivers are typically caused by zone fills (copper pours) squeezing into tiny clearances between pads, vias, and tracks, or by routing tracks at highly acute angles. When an intersection between a trace and a pad—or between two intersecting traces—creates a sharp inner corner, the resulting geometry can trigger this violation. In modern KiCad versions, automated teardrop generation and complex zone outlines are frequent triggers [1]. From a manufacturing perspective, slivers are problematic because the photoresist might not adhere properly to the narrow tip during fabrication, or the thin copper could flake off (often called 'floating copper' or an 'acid trap') during the etching process and inadvertently bridge adjacent nets.

Minimal reproduction

(kicad_pcb (version 20240108) (generator "pcbnew")
  (general (thickness 1.6))
  (paper "A4")
  (layers
    (0 "F.Cu" signal)
    (31 "B.Cu" signal)
  )
  (net 0 "")
  (net 1 "Net-(Acute)")
  (segment (start 100 100) (end 120 100) (width 0.5) (layer "F.Cu") (net 1))
  (segment (start 100 100) (end 120 101) (width 0.5) (layer "F.Cu") (net 1))
)

How to fix it

To resolve copper slivers, avoid routing at highly acute angles and adjust copper zone or teardrop settings to prevent pours from squeezing into unmanufacturable clearances.

```lisp
(kicad_pcb (version 20240108) (generator "pcbnew")
  (general (thickness 1.6))
  (paper "A4")
  (layers
    (0 "F.Cu" signal)
    (31 "B.Cu" signal)
  )
  (net 0 "")
  (net 1 "Net-(Fixed)")
  (segment (start 100 100) (end 100 110) (width 0.5) (layer "F.Cu") (net 1))
  (segment (start 100 100) (end 120 100) (width 0.5) (layer "F.Cu") (net 1))
)
```

Step 1

Step 2

Step 3

Step 4

Step 5

Upstream references

PCB Editor | 8.0 | English | Documentation

drc_test_provider_sliver_checker.cpp · master