๐ฐ Budget & Funding ยท Engineer ยท Intermediate
Onshape BOM for VRC
Your CAD model already contains everything needed to build a cost table. This guide walks through opening the BOM panel, structuring it for VRC, adding cost data, exporting to CSV, and what to do when your Education account doesn't have custom properties.
Why this matters for your notebook: Cost is a real design constraint. Judges score Criteria & Constraints โ a BOM with per-subsystem totals that preceded your mechanism decisions is direct evidence you treated budget as an engineering input, not an afterthought.
๐ What the BOM Panel Is
Every Onshape assembly has a Bill of Materials panel โ a live table that lists every part in your assembly with quantity, part number, and description. It updates automatically as you add or remove parts. You don't build it manually. You open it, fill in cost data, and export.
The BOM icon is the table grid icon on the right edge of the graphics area, below the View tools. Click it and the panel slides out from the right.
๐ Choose the Right BOM View
The BOM type dropdown at the top of the panel has three options. For VRC, use Structured Multi-Level.
| View Type | What It Shows | Use For |
| Flattened | All parts in one flat list, no hierarchy | Quick part count, not useful for cost by subsystem |
| Structured Top-Level | Top-level sub-assemblies only, no parts inside them | Overview โ doesn't show individual parts |
| Structured Multi-Level | Sub-assemblies with all nested parts expanded | Use this. Shows drivetrain, intake, arm separately with their own parts and quantities. |
โ Export warning: Before exporting, click the three-dot menu โ Expand All. If sub-assemblies are collapsed, the CSV export will only contain the top-level rows โ you'll lose all the part detail.
๐ Step-by-Step: Add Cost Data
1
Open the BOM Panel
In any assembly, click the BOM table icon on the right side of the graphics area. The panel opens. Select Structured Multi-Level from the BOM type dropdown.
2
Check Your Account Type
Education accounts cannot create custom properties (that requires Pro or Enterprise). Custom columns like "Unit Cost" are not available. Workaround: use the Description field for cost โ format it as V5 Smart Motor | $40.00. The pipe separator makes it easy to parse when you export to Sheets. More detail below.
3
Fill In Part Numbers
Double-click any Part Number cell to edit it. Use the VEX catalog number: 276-4840 for the V5 Smart Motor, 276-4810 for the V5 Brain, etc. This makes it searchable and cross-referenceable. Grey cells are read-only (released parts) โ only white cells are editable.
4
Add Cost to Description
Double-click the Description cell for each part. Format: Part Name | $XX.XX | Supplier. Example: V5 Smart Motor | $40.00 | VEX, M5 Screw 10-pack | $3.50 | VEX, 5/32 Axle 12" | $4.00 | VEX. Entering this once saves it for that part across your entire Onshape document.
5
Add Virtual Parts for Non-CAD Items
Zip ties, wire, shaft collars, and screws often aren't modeled. Right-click in the BOM panel โ Add virtual part. Name it, set quantity, and add cost to the Description field. These appear in the BOM and export with the rest.
6
Expand All, Then Export
Click the three-dot menu โ Expand All (mandatory). Then three-dot menu โ Export to CSV. Save the file. Open in Google Sheets. See the next guide for how to format it into a notebook-ready cost table.
๐ก Education Account Workarounds
This is the most common confusion. Students search for "Add column โ Cost" in Onshape and can't find it. Custom properties (which add real typed columns like Unit Cost, Supplier, etc.) require a Pro or Enterprise account. Education accounts do not have this. You have two clean workarounds:
- Workaround A โ Description field encoding: Put cost and supplier in the Description field using a consistent separator:
V5 Motor 11W | $40.00 | VEX | 276-4840. When you export to CSV, each Description column value is one string you parse in Sheets with SPLIT().
- Workaround B โ Post-export Sheets column: Export the basic BOM (Item, Qty, Part Number, Description), then in Google Sheets add Unit Cost and Total Cost columns manually next to it. This is actually cleaner for the notebook since you control the formatting entirely in Sheets.
- Workaround C โ Google Sheets Add-on: The free Onshape BOM for Google Sheets add-on (Google Workspace Marketplace) pulls your BOM directly into Sheets in one click with live sync. It doesn't add cost columns but it eliminates the export step. Install once per team Google account.
๐ Example: VRC Robot BOM Structure
This is what a well-structured Structured Multi-Level BOM looks like for a typical VRC robot. Your sub-assemblies should match your Onshape assembly hierarchy.
| # | Part / Assembly | Part Number | Qty | Description (includes cost) |
| 1 | Drivetrain Assembly | โ | 1 | โ |
| 1.1 | V5 Smart Motor 11W | 276-4840 | 4 | V5 Motor | $40.00 | VEX |
| 1.2 | 4" Omni Wheel | 276-3526 | 4 | 4" Omni Wheel | $15.00 | VEX |
| 1.3 | 2"ร35-hole C-Channel Alum | 228-3540 | 4 | Alum C-Channel | $6.50 | VEX |
| Drivetrain Subtotal | โ | ~$242 |
| 2 | Intake Assembly | โ | 1 | โ |
| 2.1 | V5 Smart Motor 11W | 276-4840 | 2 | V5 Motor | $40.00 | VEX |
| 2.2 | Flex Wheel 2.5" | 393-0014 | 8 | Flex Wheel | $5.00 | VEX |
| Intake Subtotal | โ | ~$120 |
| 3 | Electronics | โ | 1 | โ |
| 3.1 | V5 Robot Brain | 276-4810 | 1 | V5 Brain | $350.00 | VEX |
| 3.2 | V5 Smart Motor Battery | 276-4811 | 1 | V5 Battery | $60.00 | VEX |
| 3.3 | V5 IMU Sensor | 276-4855 | 1 | IMU | $30.00 | VEX |
| Electronics Subtotal | โ | ~$440 |
| GRAND TOTAL | โ | ~$950 |
โ Common VRC Part Prices (2025โ26)
Reference pricing for the most common parts. Always verify against vexrobotics.com โ prices change between seasons.
| Part | VEX Part # | Approx. Price | Notes |
| V5 Smart Motor 11W | 276-4840 | ~$40 | Most expensive consumable โ protect thermal |
| V5 Robot Brain | 276-4810 | ~$350 | District-provided โ not in your build budget |
| V5 Battery | 276-4811 | ~$60 | Budget 2+ per team |
| V5 Controller | 276-4820 | ~$90 | District-provided |
| IMU Sensor | 276-4855 | ~$30 | Essential for PID turns |
| GPS Sensor | 276-4866 | ~$80 | Absolute position โ trade-off vs. odometry pods |
| Optical Encoder | 276-4850 | ~$30 | For tracking wheels |
| Pneumatics Kit | 276-0342 | ~$80โ150 | Includes reservoirs, solenoid, fittings |
| Aluminum C-Channel (35h) | 228-3540 | ~$6โ8 | Lighter than steel, more expensive |
| Steel C-Channel (35h) | 276-2170 | ~$3โ5 | Heavier, cheaper โ good for low-stress structure |
| Gear Set (various) | 276-2164 | ~$10โ15 | Per set โ budget per stage |
| 4" Omni Wheel | 276-3526 | ~$15 | Common drivetrain wheel |
| 3.25" Traction Wheel | 276-2162 | ~$12 | Middle wheels on 6-wheel drive |
| Flex Wheel 2.5" | 393-0014 | ~$5 | Per wheel for intakes |
Save your BOM as a template: Once you've set up your columns exactly how you want them, click the three-dot menu โ Save as Template. (Requires admin on the Onshape account.) Next season, apply the same template to your new assembly and all your column formatting carries over. This is a 30-second one-time setup that saves 20 minutes every build.
A Bill of Materials is the foundational document of configuration management — ensuring the physical system matches its design documentation. BOM discrepancies trigger a corrective action: update the model to match physical reality or update the build to match the design intent. Unresolved discrepancies create ghost configurations — systems that cannot be reproduced from their documentation.
🎤 Interview line: “We keep our Onshape BOM synchronized with the physical robot. When we found a 3-screw discrepancy, we updated the CAD and noted the change in our build log. Our BOM across all design versions is in the notebook Appendix. Anyone on the team can order replacement parts from the current BOM without asking anyone else — that is what accurate configuration management enables.”
Your Onshape BOM shows 48 M4 screws. Your physical robot uses 51. What is the correct action?
⬛ The BOM is wrong — ignore it and use the physical count
⬛ Update Onshape to match the physical build, then regenerate the BOM — discrepancies mean the model and reality have diverged
⬛ Order 3 extra screws and move on
📝Notebook entry tip: Appendix — Grey slide — Export your Onshape BOM and paste it into the Appendix at the end of each major build phase. Note which items are custom-fabricated vs purchased and show the total estimated cost. A BOM updated across multiple design versions — V1 BOM, V2 BOM — shows how parts and costs evolved with the design and demonstrates cost-conscious engineering throughout the season.