In high-speed PCB design, timing control and signal integrity are increasingly important. Mismatched bus timing is a common problem. Serpentine routing is not only a layout appearance choice. It is a practical method for matching length and improving timing performance.
A serpentine, or accordion, adds a controlled amount of trace length where the route would otherwise be short. On a parallel bus, that extra length brings data nets to a common arrival time. On a differential pair, a short serpentine on the shorter member removes intra-pair skew. The geometry has to add length without adding so much coupling or so many corners that the waveform is worse than the skew it was meant to fix.
The steps below use single-ended and differential serpentine length-matching in Altium Designer, with a figure reference for the pattern and amplitude settings.
Single-Ended Serpentine Routing
In high-speed parallel bus designs such as DDR SDRAM, multiple data signals must be sampled together, so precise timing matching is required. Matched-length serpentine routing is used for that purpose. A data bit that arrives early, because its route was shorter, narrows the window in which the whole bus is valid. Length tuning makes the electrical lengths agree so the receiver samples a bus that was launched together.
For matched-length routing, first create a net class and complete the basic RF routing. The class is what gives the tuning command a shared target. Then press the shortcut UR to start the length-tuning command.

Parameter details
- Target Length: set the target length manually, from a net class, or from a design rule.
- Pattern: select the accordion style—mitered (recommended), mitered with arcs, or semicircle.
- Max Amplitude: maximum serpentine amplitude. Increase it gradually in 2 mil steps .
- Space: follow the 3W rule. The spacing can also be increased in 2 mil steps.
Target length should come from the longest net in the matched group, or from a rule that already encodes that budget. Tuning every net to a hand-typed number that no net actually meets only spreads the mismatch.
Mitered corners are the recommended pattern because they turn the accordion without the sharp inside angle of a square fold. Mitered with arcs and semicircle patterns smooth the corner further. Any of the three adds length. The mitered style is the usual starting point because it packs length into a predictable outline and avoids the field concentration of an acute corner.
Max amplitude is how far the accordion swings off the original route. A large amplitude consumes channel space and places the folds next to other nets. Increasing it in 2 mil steps keeps the growth visible and stops the tuner from jumping to a swing that no longer fits the channel.
Space follows the 3W rule: clearance between adjacent legs of the serpentine on the order of three trace widths. Folds that sit closer than that couple into each other. The serpentine then behaves partly as a set of coupled stubs rather than as extra delay, and the length that was added does not translate cleanly into timing. Increasing space in 2 mil steps is the same controlled growth used for amplitude.

Operating Techniques
Move the mouse to generate the serpentine trace. The interactive tuner lays the accordion along the segment under the cursor, up to the target length and within the amplitude and space limits.
Use the keyboard keys > and < to adjust serpentine amplitude in real time. Each press increases or decreases the amplitude by 2 mil. That is the same step used in the Max Amplitude setting, applied while the fold is still being drawn.
Numeric keypad shortcuts adjust the fold without leaving the command:
- 1: decrease corner amplitude
- 2: increase corner amplitude
- 3: decrease trace spacing
- 4: increase trace spacing
Corner amplitude and leg spacing are the two dimensions that decide whether the accordion fits and whether the 3W clearance survives. Changing them from the keypad is faster than reopening the parameter dialog for every net in a DDR byte lane.
Fine-Tuning After Routing
After the serpentine section is complete, it can still be optimized. Click a routed segment and drag the adjustment handles to change the serpentine shape and correct unsatisfactory regions.
Interactive tuning rarely lands every fold clear of a via, a keepout, or a neighboring pair. The handles move an existing accordion instead of deleting it and retuning the whole net. Use them to pull a fold off a congested spot or to flatten a region whose amplitude was larger than the channel allows. After the drag, recheck length. Reshaping a serpentine changes the path length that the original command had just met.

One-Sided Serpentine with a Blocking Trace
Place a blocking trace on the opposite side of the serpentine. This forces the accordion onto one side and saves space. Delete the blocking trace after the length matching is finished.
A free accordion grows on both sides of the original trace. In a crowded breakout only one side is open. A temporary blocking trace on the closed side tells the tuner not to fold that way, so the added length stays in the open channel. The blocker is a construction aid, not part of the net. Leaving it in the design adds copper that was never in the schematic and can couple to the serpentine it was meant only to steer. Delete it once the length is met.
Differential Serpentine Routing
For serial differential signals such as USB, SATA, and PCIe, synchronous sampling across a wide bus is not required. Matched-length routing of the differential pair is still necessary to maintain differential signal integrity and impedance matching.
A differential pair does not need every lane on the board to share one length. It does need the two members of the pair to stay equal. Intra-pair skew converts part of the differential signal into common mode, which is more easily radiated and more easily converted back into noise at the next discontinuity. Length tuning on the pair is how that skew is removed.
Use the shortcut UP to start differential-pair length tuning. The settings are similar to those used for single-ended serpentine routing: target length, pattern, amplitude, and spacing. The command treats the pair as the object being lengthened, so the accordion is applied in a way that keeps the pair together rather than stretching one member independently across a long run.
For intra-pair length matching, use ordinary single-ended length tuning on one of the two traces and keep the mismatch within 5 mil. The short member receives a small serpentine; the long member is left alone. A 5 mil intra-pair budget is tight enough to limit skew on these serial links and small enough to be absorbed in a short accordion near the place where the mismatch was created. A large serpentine far from that mismatch leaves a long unequal segment in between.
Appearance and Performance
The techniques above cover the core serpentine routing methods in Altium Designer. UR starts single-ended tuning after the net class and the base route exist. UP starts differential-pair tuning. Mitered folds, amplitude and space grown in 2 mil steps, the 3W spacing rule, keypad adjustments, post-route handles, and a temporary blocking trace are the controls that keep the accordion inside the channel.
For both single-ended high-speed buses and high-speed differential signals, matched-length routing plus flexible adjustment is what removes the routing bottleneck. Layout appearance and electrical performance can be controlled together when the length-matching parameters are set correctly. A serpentine that meets the target length but violates spacing, or that is left with its blocking trace in place, has only solved the number in the length report.