Features/02 · Your price book

Simple to fill in. Deep enough to hold how you really price.

Two ideas do all the work. Resources are the things you buy or use — a membrane, a fastener, an hour of labour, a crane for the day — each with a code, a unit and a rate. Templates are the recipes: what one square foot of a roof system actually consumes.

Give a template a quantity and it works out the cost. That is why a measurement off a drawing is enough to price a job.

5 resource typesMaterial · labour · plant · subcontract · other
Recipes, not ratesTemplates used as assemblies
Readable factorsCoverage, layers and laps stay visible
Snapshot versionsA sent quote never moves

Resources

A row is a code, a unit and a rate. Nothing more to it.

Make a group — Membranes, Insulation, Labour — and add rows into it. Type a description and a code is suggested; pick the type, the unit and the rate. Add & next keeps the dialog open so a list goes in as a list, not as twenty round trips.

Master Library · MembranesLive — every edit saved
CodeDescriptionTypeUnitRateWaste %
MEM-TPO60TPO membrane 60 mil, mechanically fixedMaterialSF1.845.0
INS-PIRPIR insulation 140 mm, tapered to fallsMaterialSF3.187.5
ADH-BONDBonding adhesiveMaterialGAL42.002.0
LAB-ROOFRoofer, installationLabourHR58.00—
PLT-HOISTMaterial hoist, weeklyPlantWK640.00—
Double-click any cell to edit it · labour and plant never carry waste
Edits in placeNo form
Double-click a cell, type, Enter. It saves as you go and the strip above the grid says so. There is nothing to submit and nothing to lose.
Waste, onceMaterials only
A Waste % on the resource is the default uplift for that material everywhere it is used. Labour and plant never carry it, because that is not what waste means. It can still be overridden on a job.
Groups and subgroupsTab / Shift+Tab
Tab nests a row into the group above it, Shift+Tab lifts it back out, and indenting with nothing to nest under offers to create a subgroup. Move to group… shows where a row is now and everywhere it could go.
RenamingDouble-click
Group names rename in place, on the band in the grid or in the category column. Deleting a group offers to move its contents out first rather than taking them with it.
Several databasesEach with its own currency
One book per region, or per business, or per client if you price that way. A project is pinned to one of them, and sales tax belongs to the database — because a database knows its region.
Bring your own ratesSpreadsheet import
Import what you already have. Large libraries come in chunks and resume if the connection drops; duplicates are caught on the way in rather than found later.

Templates & assemblies

The recipe for one unit of a system you build.

Give the template a name, a code and a unit — what one of it covers, SF, LF or EA. Then pick resources off your own list and say how much of each one unit uses. The rates fill themselves in and the template totals itself.

Template · TPO-MF-140 — Warm roof, TPO mechanically fixedUnit: 1 SF
ResourceQty / unit× A× B÷ ByNet qtyRateLine total
MEM-TPO601.0011.0311.0301.841.895
INS-PIR1.002112.0003.186.360
ADH-BOND1.0011600.01742.000.700
LAB-ROOF0.0181110.01858.001.044
Lap allowance 1.03 · two layers of insulation · adhesive at 60 SF per gallon · template total 9.999 / SF
Why the factors are separate columns Anyone can multiply four numbers together and type 0.0172. Nobody can read it six months later. Coverage, layers and laps each get their own column so the build-up reads the way the data sheet does — and so the estimator who inherits the job can see which allowance to change when the detail changes.
Net qtyThe formula
Qty per unit × Multiply By A × Multiply By B ÷ Divide By. All three factors default to 1, so a simple line stays simple.
Divide ByCoverage
Adhesive at 60 SF per gallon is quantity 1, divide by 60. Primer, sealant, paint — anything sold by the tin and used by the area.
Multiply By ARepeats
Two layers of insulation is 2. Two coats, two passes, two fixings per board.
Multiply By BThe allowance
A second, independent factor for the thing you want to stay visible — a lap, a slope, a pattern loss. 1.03 in the column beats 1.03 buried in a quantity.
Waste comes afterMaterials only
Waste is not one of the factors. It comes from the resource, applies to material lines, and is added on top — so it is always clear which part of a quantity is design and which part is allowance.
Tags and long descriptionsFor later
System tags make a template findable in a library of hundreds. A long description is the wording that prints on a client document, so the proposal reads in your voice, not in codes.

Versions

There is no Publish button, and that is deliberate.

The database is live: every edit is saved the moment you make it, so your book is never out of date because somebody forgot the final step. Versions are separate — a snapshot you take on purpose, when you want a line drawn.

  • An estimate pins its versionA job is priced against the database as it stood. Put a supplier increase through tomorrow and last month's quote does not move a cent.
  • Snapshots are deliberateTake one before a price round, at the start of a season, or whenever you want to be able to point at what the book said on a date.
  • Local edits stay localChanging a build-up inside an estimate never reaches back into the template. Promoting one to the library is its own explicit action.
  • Your book is yoursScoped to your business, never pooled with another customer's, never used to train a model, and exportable whenever you want it.
The failure this prevents The version pin is the difference between "our price went up in March" and re-opening a bid you have already sent to find it now says something else. Every estimating package claims to price accurately. What matters at least as much is that a price you gave someone stays the price you gave them.

Questions

The questions people ask about this.

Can I import the rates I already have?

Yes, from a spreadsheet. Large libraries are imported in chunks and resume where they left off if the connection drops, and duplicates are caught on the way in rather than discovered later. For a bigger migration we will do it with you.

What if I only have a handful of rates to start with?

Start anyway. Templates carry the trade knowledge — ask for a warm roof build-up and the membrane, insulation, vapour control, fixings, trims and labour come back as a draft you can edit or throw away. And every supplier quote you feed in gets read and matched, so the book grows as a by-product of quoting instead of as a winter project you never get to.

If I update a rate, does it change quotes I have already sent?

No. Each estimate pins the version of the database it was priced against, so publishing new prices tomorrow leaves last month's quote exactly as you sent it. That pin is the single most important rule in the system.

Can I keep more than one price book?

Yes. One per region, per business, or per client if that is how you price. Each database has its own currency and its own sales tax treatment, because a database knows its region, and each project is pinned to one of them.

Do I have to build templates before I can quote?

No. You can type a bill item and build it up line by line from resources, and a build-up you would use again can be promoted into a template afterwards. Templates just stop you retyping the same recipe on every job.

Can other customers see my rates?

No. Your library sits in your own business's space. It is not pooled with other customers, not visible to them, and not used to train any model. You can export the whole thing whenever you want it.

Get started

See it on a job of your own.

Send us a real set of tender documents. We will load whatever rates you have, run it through, and you can see what it comes back with before you decide anything. Thirty minutes, no slide deck.

Start now Book a walkthrough

We reply personally. No sequences, no drip campaign.