How glass cloth affects signal quality: a PCB is not uniform

A board specified as er = 4.3 is, underneath, a weave of er = 6 glass bundles and er = 3 resin. A 0.15mm trace crosses that pattern at a 0.5mm pitch, and if the two lines of a differential pair sit on different parts, you get skew.

Last updated: 2026-10-28 Glass clothFiber weaveDifferential skewHigh-speed signals

FR-4 is a woven cloth impregnated with resin

An FR-4 dielectric layer is prepreg: woven glass cloth impregnated with epoxy. Glass (E-glass) has a relative permittivity of around 6 and epoxy around 3; their volumetric average is the datasheet's "er = 4.2-4.5".

The problem is that this average is not the same everywhere on the board. The cloth is woven from glass bundles (yarns), with resin alone in the gaps (windows). Er is higher (slower) over a bundle and lower (faster) over a window. The weave pitch is set by the cloth style.

Common glass cloth styles (values vary by manufacturer and resin content)
StyleWeave pitch (warp x fill)Prepreg ply thicknessNotes
106approx. 0.45 x 0.45mm0.04-0.05mmThin, wide windows, high variation
1080approx. 0.42 x 0.54mm0.06-0.08mmCommon in thin stack-ups, wide windows
3313approx. 0.42 x 0.41mm0.08-0.09mmTightly woven, fairly uniform
2116approx. 0.42 x 0.44mm0.10-0.12mmMid-range, standard choice
7628approx. 0.58 x 0.79mm0.17-0.20mmThick, wide bundles and windows

Across these styles the bundle pitch is 0.4-0.8mm. A 50 ohm trace is 0.1-0.35mm wide and a pair's pitch is 0.3-0.6mm, so trace and weave are at almost the same scale, and whether a trace lands on a bundle or a window is chance.

PCB traces crossing a glass-fibre weave
PCB traces crossing a glass-fibre weave. AI-generated conceptual illustration; see the article’s diagrams and text for circuit details and conditions.

Speed differs by a few percent between bundle and window

The effective er under a trace is higher over a bundle and lower over a window. For wide-window styles like 1080 or 106, an effective-er difference of 0.3-0.6 (8-15% of 4.0) has been reported. Delay scales with sqrt(er), so the delay difference is 4-7%, or 0.25-0.45ps/mm at 6.5ps/mm: 25-45ps over 100mm.

Characteristic impedance shifts by roughly ±2-4 ohm. The variation is periodic, so reflections build at a matching frequency, but that is in the tens-of-GHz range and negligible for ordinary digital signals.

One trace alone is no problem: if the clock and data cross the same board, it cancels. What matters is a difference between two signals.

Speed difference between over a bundle and over a window, and delay difference versus trace lengthLeft: a cross-section along the trace. Over a glass bundle, er is higher and the signal is slower; over a resin-only window, er is lower and it is faster. Right: the delay difference grows to 25-45ps at 100mm. Speed differs between over a bundle and over a window Left: cross-section along the trace. The material under the trace sets the effective er Over a bundle: slower higher er Over a window: faster lower er GND plane Trace Glass bundle (er ~6) Resin-only window (er ~3) Effective er gap 0.3-0.6 → delay gap 4-7% Reported for wide-window cloth such as 1080 or 106 Length vs. delay gap 0 50 100mm 45ps 25ps 0.45ps/mm 0.25ps/mm The longer the trace, the more it adds up Delay gap [ps]
Figure 1: what lies under the trace, bundle or window, changes the speed, and the difference accumulates with trace length.

One side of a differential pair on a bundle creates skew

A differential pair runs two traces in parallel at a 0.3-0.6mm pitch, close to the cloth's 0.4-0.5mm bundle pitch. So one line can run the whole length over a bundle while the other runs over a window, and the delay difference becomes intra-pair skew.

Say that gives 30ps of skew over 100mm. At 5Gbps (200ps per bit) that is 15%, tolerable. At 10Gbps (100ps) it is 30% and the eye closes. At PCIe Gen4 (16GT/s, 62.5ps) it is half a bit.

Skew converts part of the differential signal to common mode (less amplitude at the receiver, plus EMI) and softens the edge.

It also varies by manufacturing lot. The alignment depends on where the board sits on the panel, so a prototype that looks fine can turn hit-or-miss in production.

A differential pair over glass cloth, and the resulting skew at the receiverA top-down view of the glass weave (lengthwise and crosswise bundles with resin windows between them), overlaid with a pair routed parallel to a bundle and another routed at 10 degrees. On the right, receive-end waveforms showing the edge offset between the line over the bundle and the line over the window. Routed parallel to the weave, the two lines keep seeing different conditions Top-down view of the weave (bundle pitch 0.4-0.5mm) with a differential pair over it Over a bundle (slower) Over a window (faster) 10° pair: both see the average Brown: glass bundle. Light green: resin-only window Bundle pitch Edge at the receiver Skew 30ps Time -> 25-45ps of skew over 100mm. 30-40% of a bit at 10Gbps.
Figure 2: one line stays over a bundle while the other stays over a window; angled 10 degrees, both average out.

Mitigation: don't route parallel to the weave

The basic fix is to make both lines see the same conditions, or to average bundle and window within each line.

Angle the routing. At 10 degrees or more to the weave, a trace crosses bundles and windows alternately and averages out, and both lines of a pair see the same average. Either have the whole board rotated 10-15 degrees on the panel (fewer boards per panel, so higher cost), or zig-zag the routing (uses more board area).

Use spread glass. Cloth with the bundles flattened to remove the windows (spread 1078, 1067, 3313, etc.) reduces the er variation. The extra cost is small, and it is becoming standard on 10Gbps-class boards.

Use two thin plies. Two plies of 1080 instead of one of 2116 offset the two weave patterns and average out.

Match pair pitch to weave pitch. If one line is on a bundle, so is the other. This depends on the cloth, so use it once the stack-up is locked in.

Low-Dk glass. NE-glass (around 4.4) narrows the glass-resin gap and shrinks the weave effect itself. It is used with low-loss resin at 25Gbps and above.

At what point does this start to matter

A rough guide is bit rate times trace length. Taking skew as visible beyond 10% of a bit period, with a worst case of 0.5ps/mm, the allowable length is (bit period in ps) × 0.2mm. That is 40mm at 5Gbps (200ps), 20mm at 10Gbps (100ps), and 12mm at 16GT/s (62.5ps). Beyond that you need a mitigation above, or receiver-side skew compensation (built into many SerDes).

Conversely, for USB 2.0 (480Mbps, 2ns), 1Gbps Ethernet, or DDR3, even 100mm is only 2-5% of a bit, and the weave effect is not worth worrying about.

Take 5% of the delay from trace length to delay as the worst-case skew.

Allowable trace length by bit rateAllowable length is the bit period in ps times 0.2mm: 40mm at 5Gbps, 20mm at 10Gbps, 12mm at 16GT/s. For USB 2.0 and similar, even 100mm is only 2-5% of a bit. At what point does it matter: the bit period sets the length Skew starts to show beyond 10% of a bit. Worst case 0.5ps/mm Allowable length [mm] = bit period [ps] × 0.2 5Gbps Bit period 200ps 40mm 10Gbps Bit period 100ps 20mm 16GT/s Bit period 62.5ps 12mm Longer traces need a fix USB 2.0 and similar 480Mbps = 2ns per bit Also 1Gbps Ethernet, DDR3: 100mm is 2-5% of a bit. Ignore it For longer traces, add a mitigation or rely on receiver skew compensation (many SerDes have it).
Figure 3: allowable length is the bit period in ps times 0.2mm.

Frequently asked questions

What should I tell the fab?
Say "this board carries high-speed differential signals; please use spread glass (or a two-ply construction)," or "rotate 10 degrees on the panel."
Can this be predicted by simulation?
Not deterministically, because the alignment varies lot to lot. Assume the worst case (one line on a bundle, the other on a window) and compare the skew with the receiver's tolerance. Many SerDes compensate skew up to tens of percent of a bit period.
Does this matter for single-ended signals too?
It can, where signals such as a clock and data must arrive aligned, but parallel signals tend to see similar conditions, so it is rarely as extreme as for a pair. DDR byte lanes matched to a few ps can be affected.
Is a 10-degree angle enough?
At 10 degrees a trace crosses one bundle every 3mm (0.5mm pitch / tan 10 degrees), which averages well over tens of mm. The literature recommends 7-15 degrees.

Standards and references

  • IPC-4412 — Specification for PCB glass cloth: weave density and thickness by style
  • Intel, "Fiber Weave Effect" design guides / white papers — Measured differential skew and recommendations for angled routing
  • Isola, Panasonic, and other laminate manufacturers' technical documents — Characteristics of spread glass and low-Dk glass
  • IPC-2141A — Propagation delay and effective relative permittivity calculations

← All design guides