Assemblies
An assembly is a recipe: a bigger thing you build out of the inventory items you already track. Tell the app what parts go into it and how many, and it works out how many you can build, what each one costs, and which part is holding you back.
Open your dashboardWhy assemblies exist
Most operations don’t just buy and sell single items; they combine them. A gift basket is made of products. A finished birdhouse is made of wood, screws and paint. A catering tray is made of ingredients. You don’t want to track the basket’s stock by hand and the stock of everything inside it, because they’d drift out of sync immediately.
Assemblies solve that. You define the recipe once, and the app answers the questions that actually matter: “How many can I make right now?” and “What does one cost me to build?”, always based on the live counts of the underlying parts.
The mental model: assemblies sit on top of inventory
This is the part that trips people up, so it’s worth saying plainly: an assembly is not a new pile of stock. It has no count of its own. It is purely a calculation over the inventory items it’s built from. Change the stock of a part, and every assembly that uses that part updates automatically.
The columns you’ll see
At the top of each assembly, and as columns in the Assemblies list, the app shows these calculated figures:
- Cost per build: what one assembly costs to build, added up from its parts: for each component, (quantity needed × that item’s unit cost), summed together.
- Can build now (the Can build column): how many complete assemblies you could build right now from the Stock you have on hand.
- After incoming parts arrive (the With incoming column): how many you could build if everything currently on order also arrived (Stock + Receiving).
- Finished (list only): the Stock of the finished item you chose when recording a build.
A worked example
Say you sell a Deluxe Gift Box assembly that contains:
- 1 × Box, and you have 40 in stock
- 3 × Chocolate Bar, and you have 50 in stock
- 2 × Greeting Card, and you have 12 in stock
The app does the math per part:
- Box: 40 ÷ 1 = 40 possible
- Chocolate Bar: 50 ÷ 3 = 16.6 → 16 possible
- Greeting Card: 12 ÷ 2 = 6 possible
Can build now = 6, because the greeting cards run out first. If a card costs $0.50, a bar $1.00 and a box $2.00, the Cost per build of one box is (1×$2.00) + (3×$1.00) + (2×$0.50) = $6.00. That instantly tells you the bottleneck (buy more cards) and your build cost.
Building an assembly, step by step
- Make sure the parts already exist in Inventory. An assembly can only be built from items you already track.
- Open Assemblies in the sidebar (on a phone, Sections, then Assemblies), click New assembly, give it a name (e.g. “Deluxe Gift Box”), add notes if useful, and click Save and add parts.
- The assembly opens on its Parts list, ready to edit. Under Add a part, choose an inventory item, enter how much one build uses, and click Add part. Repeat for each part.
- Click Done editing. Later, use Edit parts to change an amount (press Enter) or remove a part with its ×.
As soon as quantities are set, Cost per build, Can build now and After incoming parts arrive fill in automatically, and each row of the Parts table shows that part’s cost per build, how much is In Stock, and how many builds that part alone is Enough for, so the bottleneck is easy to spot.
Negative amounts: parts a build creates
The Used per build amount accepts negative numbers, and this is one of the most useful (and most overlooked) features. A normal, positive quantity means the assembly consumes that part. A negative quantity means building the assembly creates that item. In Edit parts, these are under Advanced: parts a build makes.
That lets you model processes that produce outputs or by-products, not just consume inputs. For example, a “Cut Plywood Sheet” assembly might consume 1 × Full Sheet (count 1) and produce 4 × Half Panel (count −4). When you record a build, the full sheet is deducted and the half panels are added, all in one step.
Recording a build (using up the parts)
When you actually make some, open the assembly, enter How many did you make? under Record a build, and click Record build. Optionally pick the inventory item that holds the finished product under Finished item goes to; the app remembers it for next time. A preview line shows what the build will use and add before you click. After you confirm, it adjusts your inventory in one go:
- For each positive part, it subtracts (amount × number built) from that item’s Stock.
- For each negative part, it adds the created items to Stock instead.
- If you chose a finished item, its Stock goes up by the number built.
- Every change is written to each item’s History (“Used to build 12 × Sourdough loaf”), so the build is fully traceable.
If any part is short, nothing changes and the app tells you which part and how much is missing.
Keeping an assembly accurate over time
- New inventory items appear in the Add a part list automatically.
- The part that limits how many you can build is marked Limits builds.
- Costs update on their own: change a part’s unit cost in Inventory and every assembly that uses it re-totals automatically.
Components can be measured, not just counted: 0.5 kg of flour per loaf makes the assembly a recipe, and “Can build now” is floored to whole loaves. See the bakery example.
Common questions
Can an assembly contain another assembly? Recipes are built from inventory items, not from other assemblies. If you have sub-builds, track the sub-build’s output as an inventory item (using the negative-quantity trick above), then use that item in the bigger recipe.
Why is “Can build now” lower than I expect? It’s capped by your scarcest part. Open the assembly and check the “Enough for” column in the Parts table; the part dragging the number down is marked Limits builds.
Why is a part not in the recipe? Only parts with an amount are listed. Click Edit parts and add it under Add a part.