How it works
Four things to set up, once
Most of this is work you have already done in your head or in a spreadsheet. The difference is that here it stays done.
Describe what you buy
Add your materials with the attributes your trade actually cares about — species and thickness, alloy and gauge, width and repeat. You define the fields; nothing is preset for a warehouse.
Set how it gets consumed
Tell it that you buy a 4×8 sheet and use square feet, or buy a 20 ft stick and use inches. Add the waste factor you already assume. The conversion happens once here instead of every time you quote.
1 sheet = 32 sq ft · waste 12% → usable 28.2 sq ft
Price your time and your overhead
Separate rates for the operations that genuinely cost different amounts — machine time, bench time, finishing, install. Then an overhead rate so the building, the insurance and the truck end up in the number.
Write the formula once
Combine them into the pricing rule your shop already uses, including minimums, quantity breaks and margin. From then on, quoting is filling in quantities.
(material × waste) + (hours × rate) + overhead → ÷ (1 − margin)
The payoff
One change updates everything downstream
This is the part a spreadsheet cannot do without you opening every file.
Material price changes
Update one number. Every product, quote and job that uses it reprices, and you can see which customers are affected before they call.
You raise your shop rate
Change the rate, and every future quote reflects it consistently — not just the ones you remembered to adjust.
A customer changes the spec
Swap the material or the quantity and get the new price immediately, with the breakdown to show why it moved.
Then stop setting up
Once it's configured, just ask
The setup above is what makes the chat trustworthy. With your materials, rates and formulas defined, asking for a price runs your rules — not a guess at what a table ought to cost.
Called 4 tools
find_job("Henderson table")swap_material(from: "walnut 8/4", to: "white oak 8/4")recalculate_job()price_quote(margin: 0.32)
Every number here came from your costing engine. The model picked the tools and filled in the arguments — it never does the arithmetic.
Set it up once, quote from it for years
Founding pricing is locked for accounts opened during early access.
Founding accounts lock their price for life. No card required.