⚙️ Bill of Materials (BOM) Generator

Build a structured parts list with quantities, suppliers, and unit costs — download it as a PDF, entirely inside your browser.

Create a Bill of Materials Online Free

🚀 Fill In Your Parts List

Add every part with quantity and unit cost below — the total build cost updates live. Nothing leaves your device.

🏢 Company / Project

Logo preview

📄 BOM Details

🔩 Parts List

Part NamePart #/SKUSupplierCategoryQtyUnitUnit CostExt. Cost
Total Parts0
Total BOM Cost₹0.00
0Line Items
0Total Qty (units)
0Distinct Suppliers

✍️ Notes & Sign-Off

🖼️ Live Preview

Project—
Assembly—
BOM No.—
Revision—
Date—
Prepared By—
Checked By—
Total Cost—
#Part NamePart #/SKUSupplierCategory QtyUnitUnit CostExt. Cost
Total Line Items0
Total BOM Cost₹0.00
Prepared By
 
Checked / Approved By
 

Quick answer: Enter your project and assembly details, then add every part with its part number, supplier, category, quantity, unit, and unit cost - the extended cost per line and the grand total build cost calculate automatically. Click Download PDF to get a print-ready Bill of Materials with a blueprint-style title block. Everything happens locally in your browser using jsPDF and jsPDF-AutoTable to draw real vector text - not a screenshot image. Nothing is ever sent to a server.

  • Cost: Free, unlimited BOMs, no signup.
  • Where it runs: 100% in your browser — no upload, no server storage.
  • Output: A real text-based PDF (selectable, searchable, small file size).
  • Per-line fields: Part name, part number/SKU, supplier, category, quantity, unit, unit cost.
  • Automatic calculation: Extended cost per row and total build cost roll-up.
  • Version control: Dedicated BOM number and revision fields.
⚠️ Good to Know Before You Start

🔧 Flat Parts List: This tool builds a single-level BOM (all parts in one list) rather than a multi-level, nested sub-assembly tree.

🏷️ Track Suppliers Per Part: Filling in the Supplier and Part Number fields for every row makes re-ordering and sourcing much faster later.

🖨️ Real Text, Not a Screenshot: The PDF is built from actual vector text using jsPDF, so it stays sharp at any zoom, the text is selectable/searchable, and the file stays small.

🔒 Privacy: Your parts data, including any logo you upload, is processed locally — it is never uploaded, transmitted, or stored anywhere.

✅ 100% Private: Your BOM, including your logo, is generated locally in your browser using JavaScript. No data is ever uploaded to a server or stored anywhere.

Note: Your document data will be cleared once your session ends or you clear the app.


How to Create a Bill of Materials PDF

1

Enter Project Details

Add the project name, assembly/product name, BOM number, and revision.

2

Add Each Part

List every part with its part number, supplier, category, quantity, unit, and unit cost.

3

Review the Cost Roll-Up

Check the automatically calculated extended costs and grand total.

4

Download the PDF

Add sign-off details, then click Download PDF to save the BOM.


🔒 Your Parts Data Never Leaves Your Device

This tool builds the entire Bill of Materials — including your logo — using jsPDF and jsPDF-AutoTable running entirely inside your browser tab. There is no upload step, no server-side processing, and no network request that contains your part numbers, suppliers, or costs.

Common Uses for a BOM Generator

🔌

Electronics Prototyping

List every component in a PCB build with part numbers and supplier references.

🪵

Furniture & Woodworking

Track raw materials, hardware, and finishes needed for a custom build.

🏭

Small-Batch Manufacturing

Plan procurement and estimate per-unit cost before committing to a production run.

🧵

Product & Textile Makers

List fabrics, trims, and accessories needed per finished product.

🛠️

Maker & Hobbyist Projects

Keep a clean parts list for a 3D-printing, robotics, or DIY electronics project.

📦

Kit & Bundle Assembly

Document exactly what goes into a packaged kit before it ships.


Why Use This BOM Generator?

  • Fully Client-Side: jsPDF and jsPDF-AutoTable both run in your browser — no upload.
  • Real Vector Text: Sharp, selectable, searchable PDF output — not a flattened screenshot.
  • Live Preview: See the parts table and cost roll-up exactly as it will appear in the PDF.
  • Built for Small Teams: No PLM/ERP subscription needed - just a clean, structured parts list.
  • Automatic Cost Roll-Up: Extended cost per row and grand total calculate as you type.
  • Supplier & Part Number Tracking: Dedicated fields to keep sourcing information organized.
  • Revision Control: BOM number and revision fields to track changes over time.
  • 100% Free & Private: No account, no watermark, no server storing your data.

Bill of Materials (BOM) Generator – Complete Guide

Every physical product, from a hobbyist's 3D-printed enclosure to a small factory's production run, is really just a list of parts assembled in the right order. Keeping that list loose in a spreadsheet or scattered across supplier invoices makes ordering slow and error-prone. A proper Bill of Materials fixes that - one structured document listing exactly what's needed, how much, from where, and at what cost.

What Makes a Good Bill of Materials?

A useful BOM identifies the assembly it belongs to, carries a BOM number and revision for version control, and lists every part with enough detail to actually order it again - part name, part number or SKU, supplier, category, quantity, unit of measure, and unit cost. This tool covers all of that, plus automatic extended cost per line and a grand total, so you always know the real cost of building one unit.

How This Generator Actually Works

As you fill in the form, every field is read directly into a JavaScript object representing your BOM, and a live HTML preview - styled with an engineering-style title block similar to a technical drawing - re-renders instantly so you can check the layout before downloading anything. Every time you change a part's quantity or unit cost, the tool multiplies the two to get that row's extended cost, then sums every row into a grand total, updating both the stats strip and the preview immediately. When you click Download PDF, that same data is handed to jsPDF, which draws the title block, company details, and totals as genuine vector text - not a picture of text - directly onto a PDF page. The parts table itself is built with jsPDF-AutoTable, which handles column widths, borders, and automatic pagination if your parts list runs long. The finished document is then handed back to your browser as a file to save - at no point does any of this data leave your device or touch a server.

BOM vs Purchase Order vs Inventory List

AspectBill of Materials (this tool)Purchase OrderInventory List
PurposeDefines what's needed to build one unitRequests specific parts from a supplierTracks what's currently in stock
ScopePer product/assemblyPer order placedAcross the whole warehouse
Changes withDesign revisionsEach new orderEvery stock movement

Flat BOM vs Multi-Level BOM

TypeStructureBest For
Flat BOMSingle list of all partsSimple products, small assemblies, this tool
Multi-Level BOMParts nested under sub-assembliesComplex products with many sub-assemblies

Security and Privacy Considerations

Browser Compatibility and Technical Requirements

This BOM Generator works in modern browsers that support:

Supported Browsers:

Troubleshooting Common Issues

Problem: "Add at least one part before downloading" message

Explanation: The PDF needs at least one row with a part name filled in to be a meaningful BOM. Solution: Fill in at least one row under Parts List, then try downloading again.

Problem: My logo doesn't appear in the PDF

Explanation: Only PNG and JPG logo files are supported; other image formats or corrupted files may fail to embed. Solution: Re-save your logo as a PNG or JPG and upload it again.

Problem: I need multi-level sub-assemblies, not a flat list

Explanation: This tool intentionally keeps to a single flat parts list to stay quick and simple for small manufacturers and makers. Solution: For complex nested assemblies, generate a separate BOM per sub-assembly, or note the parent assembly in the Category or Part Name field.

Problem: The extended cost for a row shows as zero

Explanation: The extended cost is quantity multiplied by unit cost - if either field is empty or zero, the result will be zero. Solution: Make sure both the Qty and Unit Cost fields are filled in for that row.

Frequently Asked Technical Questions

Question 1: What actually builds the PDF - is it a known library?

Answer: This tool uses jsPDF, a widely used open-source JavaScript library for generating PDF documents in the browser, together with its jsPDF-AutoTable plugin for the parts table - both loaded directly in your browser.

Question 2: How is the extended cost and grand total calculated?

Answer: For each row, the tool multiplies the quantity by the unit cost to get that row's extended cost, then sums every row's extended cost to produce the grand total - recalculating instantly as you type in any field.

Question 3: How are the stats like "Distinct Suppliers" calculated?

Answer: The tool collects the supplier field from every filled-in row into a set, which automatically discards duplicates, and reports the resulting count - all done in memory as you edit the form.

Question 4: How is my logo embedded in the PDF?

Answer: The uploaded image is read as a Base64 data URL using the FileReader API, then passed directly to jsPDF's image-embedding function, which places it in the title block area of the document.

Question 5: Does this tool need an account, server, or API key?

Answer: No. jsPDF, jsPDF-AutoTable, and the live preview all run as ordinary JavaScript already loaded by this page — you never need an account or any API key to use it.


Glossary of Terms

Bill of Materials (BOM)
A structured list of every part, component, and raw material needed to manufacture or assemble a product.
Part Number / SKU
A unique identifier assigned to a specific part or component for tracking and ordering purposes.
Extended Cost
The total cost of a line item, calculated by multiplying the quantity needed by the unit cost.
Revision
A version marker on a BOM used to track changes to a parts list over time.
Unit of Measure
The quantity unit a part is counted or ordered in, such as pieces, kilograms, meters, or boxes.

Frequently Asked Questions

Yes, completely free with no watermark, no signup, and no limit on how many BOMs you create.

No. The entire BOM, including your logo if you add one, is built and turned into a PDF entirely inside your browser using JavaScript. Nothing is transmitted over the network.

A Bill of Materials (BOM) is a structured list of every part, component, or raw material needed to build a product, along with quantities, suppliers, and costs - used by manufacturers, makers, and hobbyists to plan procurement and estimate build cost.

Yes. Each line item has dedicated fields for Part Number/SKU and Supplier/Vendor, so you can quickly trace where every component comes from.

Yes. As you enter quantity and unit cost for each part, the tool calculates the extended cost per row and rolls everything up into a grand total automatically.

Yes. There's a dedicated Revision field alongside the BOM number and date, so you can track changes across multiple versions of the same assembly's parts list.

Yes. This tool is built specifically for small manufacturers, workshops, and individual makers who need a clean parts list without the cost or complexity of full PLM/ERP software.

Final Thoughts

A clean Bill of Materials turns "I think we need some screws and a board" into an actual, orderable, costable parts list. This tool builds a structured BOM with automatic cost roll-up and a live preview using jsPDF and jsPDF-AutoTable — all without your part numbers, suppliers, or costs ever leaving your device.

Start listing your parts above and download your first BOM!



✓ Copied!