Managing Your PCB Bill of Materials

The PCB Bill of Materials view allows you to manage the list of components to be placed on your PCB during assembly, while also detailing costs and any potential issues in one place.

This view will not be populated until you’ve uploaded your bill of materials, either by uploading an XYRS file, or by uploading a supported EDA source file. For more information on file formats and what files we support, see Required Design Files.

The Bill of Materials Summary

At the top of the Bill of Materials view is a summary, showing you the number of components populated on the board, not populated, a total and per unit parts cost along with total and per unit labor charges.

Clicking on the count of components populated, not populated, or no parts selected will automatically filter your bill materials to component groups which match that description.

The part and labor costs will automatically update as you change the quantity to manufacture or alter the components you’re using in your bill of materials.


Component Groups

All of the components in your bill of materials are grouped into Component Groups based on the Footprint and Value of the component supplied in your bill of materials. Each component group will look similar to this:


The Package, Value, and MPN fields are editable – simply click on their contents to go into edit mode.

If a part has been selected to use for this group of components (either by searching for a market part or specifying a consignment part), the manufacturer part number for that part will be displayed in the Selected Part field. Clicking on the part number will bring up details about that part for market parts.


Below the selected part field is the list of components included in this group. Clicking on the list will bring up the ability to move components to other groups, create a new group, or indicate whether individual components should be populated.


On the right side of the component group are the following items:

  • Cost summary: This displays the total parts and labor costs for the component group for the current quantity being built. These costs automatically update as you adjust the quantity to manufacture at the top of the screen. Mousing over any price will display a pop-up with the individual component price, which can be handy if you have multiple units of a part, or are building multiple copies of a board.
  • Populate/Do Not Populate/Information Icon: These buttons control whether or not the component group will be populated on the PCB. Component groups that are not populated will not be placed on the PCB and do not incur any charges. Clicking the information icon will expand the component group to allow more granular control over which components are populated on the PCB.
  • Market/Consign/Inventory: These buttons control where the component group’s selected part is sourced from. When market is selected, MacroFab will purchase the selected part on the market. When consignment is selected, you will ship MacroFab the selected part after placing an order. When inventory is selected, the part will be sourced at MacroFab from the inventory you own.

Consignment requires an MPN to be specified. You cannot select to consign a part unless there is already a selected market part, or you have provided an MPN.  If the consignment option, or inventory option are not available, make sure that you specify an MPN for this part.

  • House Part Detail Icon/Supply Detail Icon/Source Detail Icon: These icons provide a visual reference for house part details, supply availability details, and source details.
  • Search for Parts: This link opens the part search interface for market parts.


Clicking on a part number in the search results will display details about the part:


Clicking on Price/Risk Matrix will yield a matrix of the search results that compares pricing and availability in order to provide assistance in choosing the most cost-effective, low-risk part.


Clicking on Compare Part Attributes will yield a table of the search results separated by the most common attributes. These attributes can be sorted to provide assistance in choosing the part that most closely reflects your needs.


Suggested Parts

In many cases, we can automatically identify candidates for your component groups by matching their type and/or part number. For House Parts, we can often infer viable candidates from the footprint and value of, for example, resistors and capacitors. For market parts, we suggest parts whose manufacturer part number exactly match the MPN or Value field specified.

If a House Part is matched for the component group, it will automatically be selected, otherwise any Market Part that is matched will be selected. You can always change the selection by searching for a new part, or by using the Suggested Parts link.

Moving Components Between Groups, Creating New Groups

To move a component from one group to another, for example when changing the value of a resistor to that of another set of resistors, simply click on the component list. The display will include a drop-down for assignment. Select the new component group to assign this component to.

If you want to create a new group for the component (i.e. give it a value and footprint combination not shared by other components), use the Assignment drop-down to select “Create a new Component Group.” Once you select this option, a new component group will be displayed, and the Package and Value fields will be started in edit mode. Simply input the new values and save them.