All guides

Manufacturing

Design for manufacture: the mistakes we see

The 25 file checks grouped into families, with for each the mistake, why it fails in production and how to fix it.

Updated 2026-11-108 min read

Design for manufacture (DFM) means designing a board so that a factory can build it reliably. Most DFM failures are not exotic. They are the same dozen mistakes, made by people in a hurry. This article walks through the 25 checks that run when you upload your files, grouped by what they are about. For each family it says what goes wrong, why it fails in production, and what to do.

The limits that the checks measure against are on the capabilities page. This article gives no numbers for them, because they are set there.

Each row shows one family as a small before and after. Amber is the mistake, and the picture after the arrow is the fix.

Seven rows, one per family, each with a mistaken picture on the left and a corrected one on the right
  1. Family 1: a layer is missing from the set.
  2. Family 2: the outline does not close.
  3. Family 3: the hole is off its pad.
  4. Family 4: copper thinner and closer than the process makes.
  5. Family 5: too little copper left round a hole.
  6. Family 6: legend over a pad.
  7. Family 7: the files and the order disagree, here in the number of layers.

Family 1. The files must be readable and complete

Checks: the archive cannot be opened safely; a layer is missing; a layer is empty or there twice; a file cannot be read.

The mistake. A zip file with a corrupt member, a missing mask or drill layer, a copper layer exported twice under two names, or a file in a format that is not Gerber.

Why it fails. The factory cannot build what it cannot read. A missing layer is worse than an error: if the missing layer is the bottom mask, the board could be built with no mask on one side.

The fix. Export again from your design tool with a plot list that names every layer. Open the result in a viewer and count the layers. See Files for fabrication and assembly.

Family 2. The board outline and units must make sense

Checks: the outline is missing or not closed; the units or the scale look wrong; the bottom side looks mirrored.

The mistake. An outline made of separate line segments that do not meet, or drawn on a mechanical layer in a different units setting; a board that looks ten times too big; a bottom layer exported mirrored.

Why it fails. The router needs one closed path to cut. A wrong scale makes the wrong board. A mirrored layer means the copper on the bottom does not match the holes or the mask.

The fix. Draw the outline as a single closed shape on its own layer. Set units and decimals explicitly in the export. Export all layers with the same options.

Family 3. Holes must land on their pads

Checks: holes do not land on their pads.

The mistake. The drill file has a different origin from the Gerber files, or was exported in different units.

Why it fails. The holes are drilled in the wrong places, and the board is scrap.

The fix. Use the same origin (a common one is the lower-left corner of the board) and units for all files. Check the overlay in a viewer.

Family 4. Copper features must be within what the process makes

Checks: tracks thinner than we make; copper closer together than we make; copper too close to the board edge; a hole too close to other copper; the board is too large or too small.

The mistake. Tracks, gaps or distances to the edge taken from a design rule that is looser than the factory's. Copper pours with sharp slivers. A board outside the panel sizes the factory can handle.

Why it fails. Etching removes copper sideways, so features thinner than the limit break or merge. Copper near the edge is cut by the router, and exposes copper. Where holes or copper are too near, drills break through, or insulation fails.

The fix. Load the factory's rules into your design tool before routing. Leave margin over the minimum where you can. For a dense board, ask before you go to the limit.

Family 5. Holes must be drillable and platable

Checks: a hole size we cannot drill; too little copper around a hole; holes too close to each other; a hole too small for this board thickness; a slot or unplated hole we cannot make as drawn.

The mistake. Holes smaller than the smallest drill; pads with too small an annular ring; holes with walls that are too thin between them; a small hole in a thick board; a slot drawn in a way the router cannot follow; a mounting hole that has a pad and is therefore plated by mistake.

Why it fails. A drill has a minimum diameter and has some positional error; the ring must be big enough that the error does not break out the hole. A hole whose depth is many times its diameter (a high aspect ratio) cannot be plated all the way through. Walls between holes that are too thin break. A hole drawn as plated or non-plated in the wrong way is not as you meant.

The fix. Use the smallest drill and the ring the factory gives. Check the board thickness against the smallest hole. Keep holes apart. Mark non-plated holes clearly, and draw slots as slots.

Family 6. Solder mask and legend must be printable

Checks: solder mask between pads too thin to hold; silkscreen on pads or too thin to print.

The mistake. Fine-pitch pads whose mask web is thinner than the process can print; text across pads or lines too fine to be printed.

Why it fails. A thin mask web peels off or is removed, and solder bridges form between pads. Ink on pads blocks solder. Thin legend lines smear or break.

The fix. Shrink mask openings a little, or accept no web between pads on a part where that is the only option and tell the factory. Move text off pads and use thicker strokes. See Solder mask, silkscreen and via treatments.

Cross-section of two pads: copper on the board, the mask open round each pad with a narrow web between them, a stencil above with openings a little smaller than the pads, and legend ink on the mask away from the pads
  1. The pad is copper.
  2. The mask opening is larger than the pad.
  3. The mask web between two pads. If it is too thin it is lost and solder can join the pads.
  4. The stencil opening is a little smaller than the pad.
  5. The legend sits on the mask, away from the pads.

Family 7. The files must match the order

Checks: the files have another number of layers than ordered; the files have another size than ordered; the files need a process that is not ordered; an ordered process is not in the files; impedance control needs a stack-up.

The mistake. Ordering a two-layer board with four-layer files, or ordering with different dimensions from the board. Files with gold fingers, via-in-pad or blind vias on an order that did not ask for them. An order that asks for impedance control but gives no stack-up.

Why it fails. Either the factory builds what you ordered and it does not work with your files, or an engineer must stop and ask, and the order waits. The detected features the check reports are: plated half-holes on the board edge, an edge connector (gold fingers), vias inside pads, blind or buried vias, a BGA footprint, and several boards in one file.

The fix. Compare the result of the check with the options you chose, and change one or the other. For impedance, give the target values and a stack-up. See Copper weight, stack-ups and impedance.

The check does not know your circuit

All of these are about whether the board can be built from the files. None says that the board is right. A board with the wrong footprint for a part, a swapped pin, a missing pull-up or a wrong power rail passes every check here. The check shows that files are complete, consistent and buildable; it cannot show that a circuit works. A review of the schematic and a test of the first boards are yours.

Some checks cannot run on every upload: for example, a check that needs a netlist, or assembly files, or an outline. The result says which checks ran and which did not, and why. A result of "no problems found in the checks run" is not the same as all checks run.

A short pre-upload routine

  1. Run the design rule check with the factory's rules.
  2. Export all layers with one plot list.
  3. Open the output in a separate viewer; compare with the design.
  4. Check the layer count, the size and the outline.
  5. Note anything unusual in a short text for the engineer.
  6. Upload, read the result, and fix errors before warnings.

How this shows up when you order here

The checks run at upload, before you pay. For each problem the result gives the number of places, the measured value against the limit, and a suggested action: choose the option that covers it, fix the files and upload again, accept a proposed correction, or send it to an engineer with the order. An engineer confirms every order before production. Upload at the upload page, or read what the file check covers.

Try it on a real board

Upload a board and see the 25 checks on it.

Upload a board