Altium Designer users work in a polished, integrated environment — and that is precisely the risk at ordering time. The board looks right in the editor, the output job runs, and the ZIP goes to the board house, but nobody has actually looked at the fabrication files as files. Altium’s Gerber output has more format choices than most tools — units, coordinate precision, zero suppression conventions inherited from older workflows — and a mismatch in any of them produces files that are internally valid and geometrically wrong. An independent check in Gerbv, a free viewer for Gerber RS-274X and Excellon drill files, is how you catch that before it costs a board run. This guide describes the export at a general level — dialog names and layouts vary between Altium versions — and then the verification workflow in the viewer. The general viewer workflow is in how to open and view Gerber files, and Gerbv itself is on the download page.
Exporting from Altium: Gerber setup and fabrication outputs
In Altium, Gerber files are produced as a fabrication output: you open the Gerber setup for the board, choose which layers to include, set the format options, and generate. Many teams capture this in an output job file so every release uses the same recipe — a good practice, because it makes the checks below comparable from revision to revision. The layer set for a typical board mirrors every other EDA tool: all copper layers, solder mask, silkscreen, solder paste where assembly needs it, and the board outline — in Altium workflows the outline may travel as its own layer, so make sure the set you generate actually contains a file that draws the board edge, because the factory cannot guess it. The format options deserve a deliberate look before you generate: the units the files will be written in, the coordinate precision (how many integer and decimal places positions carry), and the zero-suppression convention. None of these has a universally right answer — what matters is that the Gerber files and the drill file, generated next, tell the same story.
NC Drill output: the second half of the set
Drill data is a separate fabrication output in Altium — NC Drill — with its own format settings, and it must be generated as part of the same release as the Gerbers. The classic Altium-specific failure lives exactly here: the Gerber files written with one combination of units and precision, the drill file written with another, so the artwork is correct and the holes arrive at a different scale or offset. Set the drill output’s units and format to match the Gerber setup’s choices, generate both outputs in the same pass from the same saved board, and keep them in one folder. If the board will be assembled, export the pick-and-place data in the same pass as well; Gerbv views it as a CSV centroid layer alongside the artwork and drills.
Verifying in Gerbv: units and format first
Load the set in Gerbv in the order described in loading and aligning Gerber layers — copper, mask, silkscreen, paste, with outline and drill file on top. Before judging any detail, settle the units question with measurement: measure the board outline and compare it with the size the mechanical design calls for. This single check exposes the classic catch of Altium exports. If the Gerber files were written with one zero-suppression or precision convention and read back under another assumption, positions come out scaled by a factor of ten in one direction or the other; a board that measures ten times too large or too small is not a design error, it is a format conversation gone wrong between export and reader. The remedy is at the export: align the format settings, regenerate, and reload. Do not try to compensate anywhere else.
The drill overlay: where the mismatch shows itself
With the artwork verified at the right size, stack the NC Drill file over the copper, following viewing Excellon drill files. Because the drill output has its own format settings, it can disagree with the artwork even when the artwork is self-consistent: holes uniformly too large or too small point at a units disagreement between the two outputs; the whole hole pattern shifted points at an origin disagreement; a pattern that is correct in one corner and drifts across the board points at precision being dropped somewhere. Work area by area — every hit centred in its pad, mounting holes inside the outline where the enclosure expects them — and read the drill statistics Gerbv reports against the board’s intent: the sizes present should be the sizes the design uses, with no near-duplicate pair betraying one footprint specified in different units from the rest. Altium libraries accumulated over years are exactly where such a pair hides.
Layer-by-layer pass, then the checklist
Finish with the pairwise pass. Mask over copper: every pad that should be exposed is opened, nothing else is. Silkscreen over mask and pads: reference designators legible, the right way up, and not printed across exposed pads. Paste over the top copper: openings match the surface-mount pads they serve. Aperture usage reporting in Gerbv can corroborate that the set of shapes in the files is the set you expect. Remember the viewer’s limits while you work: Gerbv shows and measures fabrication data and reports the codes in use, but it runs no design-rule or DFM checks — the visual and numerical pass is yours, backed by the board house’s own checks after upload. When the Altium set passes, run the complete PCB pre-order checklist as the final gate before ordering.
Frequently asked questions
What is the most common problem in Altium Gerber exports?
A format mismatch between outputs — the Gerber files and the NC Drill file generated with different units, precision or zero-suppression settings. It shows up in Gerbv as a board measuring a factor of ten off, or holes at the wrong size or offset relative to correct artwork.
How do I check the mismatch in Gerbv?
Measure the board outline first: if the size is wrong by a clean power of ten, the format conversation between export and reader is the problem. Then overlay the drill file on the copper — disagreement between the two outputs localises which one’s settings to fix.
Should the outline be a separate file in an Altium export?
The set must contain a layer that draws the board edge — board houses cannot infer it reliably from copper. Whether it travels as a dedicated outline layer or within another file, confirm in Gerbv that a closed outline exists and measures correctly.
