Skip to content
← All resources
Guide

Setting up your Codebook

The Codebook is your company's library of labor, equipment, materials, crews and assemblies. Every estimate is priced from it, so the time spent setting it up is repaid on every bid.

By Ryan Lindsey, founder of AggradoHow we write

How the Codebook works

In Bid, open Settings › Codebook. It is organized into tabs: Assemblies, Crews, Labor, Equipment, Materials, Concrete mixes, Cost codes, Wage scales and rate books, Bond tables, Proposal clauses and Review rules. A new company starts with Aggrado's starter crews; check them against yours.

The pieces build on one another, so they are easiest to set up in this order:

  1. Wage scales and rate books
    the labor and equipment rate sets your prices are based on.
  2. Labor and equipment
    each trade and machine, with its hourly cost.
  3. Materials
    each material, with its delivered cost.
  4. Crews
    the trades and machines that work together, and how much they produce.
  5. Assemblies
    the activities that make up each kind of bid item, priced from crews and materials.

Wage scales and rate books

A wage scale is a set of labor rates and a rate book a set of equipment rates, for example standard wages and prevailing wages. Each trade and machine has a rate in every one, and each crew uses one wage scale and one equipment rate book.

On Wage scales and rate books, add them under Wage scales (labor) and Rate books (equipment). Select Make default on the one new crews should use. If your company uses one set of rates, one of each is enough.

Labor

On Labor, enter a trade name, such as Pipe Layer, and select Add. For each wage scale, enter the Wage an hour and the Burden %: payroll taxes, insurance and benefits as a percentage of wages. Aggrado shows the resulting Loaded rate.

Equipment

On Equipment, enter a machine name, such as Excavator 320, and select Add. For each rate book, enter the hourly Own cost (depreciation, interest and insurance) and Operating cost (maintenance, oil and wear parts). Aggrado shows the Total an hour. You can also record the machine's Operator trade and whether it is a Rental.

Machine rates are without fuel
Leave fuel out of the rate. Fuel is rarely metered machine by machine, so Aggrado models it from each machine's hours and fuel burn and prices it as its own Fuel line on every estimate. A rate that still has fuel in it would count fuel twice.

Fuel burn

The Fuel burn, gal/hr columns on Equipment are how many gallons a machine burns in a running hour at a Light, Medium and Heavy load. A crew says which load each of its machines works at, and an estimate's fuel is each machine's running hours times its burn at that load, times the price of a gallon.

  1. Set each machine's burn.

    Type the three figures. A machine with none set shows typical figures in gray, from its name — select Use typical to take them. They are typical figures for that kind and size of machine, not yours: set your own from your fuel records or the manufacturer's handbook when you have them.

  2. Give one machine its own burn if it differs.

    This machine's own is a machine's own burn at medium load when it isn't its class's — an older unit that burns more. Light and heavy scale from it.

  3. Set the fuel price.

    An owner or admin sets the Fuel price per gallon at the top of the Codebook's Equipment tab. An estimate can use its own price on Pricing, under Fuel.

When a burn or the price is missing
The estimate's Fuel line says which machines have no burn, or that there's no price, instead of counting their fuel as nothing, and the review rules list it before you lock the bid as submitted.

Materials

On Materials, enter a material name, such as #57 Stone, and select Add. Enter the Base cost per unit and the Tax %; Aggrado shows the Delivered cost. For aggregate and other materials bought by weight, enter the Tons per CY so quantities in cubic yards convert to tons.

Crews and production rates

  1. Create the crew.

    On Crews, type a name in New crew, such as Mass Excavation, and select Add, or Add starter crews… to start from Aggrado's. Choose its Work type.

  2. Set the crew's hours.

    The shift sets the Working hours a day, Paid hours a day, Machine hours a day, Days a week, and overtime (Overtime after (hours a day) and OT multiplier). To use different hours for one crew, choose New shift from this one….

  3. Choose the rates.

    Choose the Wage scale and Equipment rate book the crew is priced at.

  4. Add the crew members.

    Use + Add trade… and + Add machine… to add each worker and machine, with the number of each. For each machine, choose its Fuel load: Light for a machine that idles a lot or waits on trucks, Medium for steady production work, Heavy for continuous heavy digging or pushing. The crew shows Fuel a day, which is not in its Crew day cost: each estimate prices fuel as its own line.

  5. Add production rates.

    Under Production rates, enter an optional Condition (such as Rock or Wet), the Unit, the Rate, and whether it is per day, per hour, days each or hours each. Select Add rate. A crew can have several rates for different conditions.

Where production rates come from
Start with the rates your estimators use today. As jobs report actual production, compare estimated with actual production on each estimate's Actuals and refine the rates.

Assemblies

An assembly packages the work for one kind of bid item or indirect work, so estimators add it in one step (on the estimate, Add ▾ › From the Codebook…, or a row's Price it… › From the Codebook) instead of building it each time.

  1. Create the assembly.

    On Assemblies, type a name in New assembly and select Add.

  2. Describe it.

    Enter an Item no. if the assembly is a bid item; leave it empty for indirect work. Set the Unit, Work type, Priced by and Cost code.

  3. Add its resources.

    Under Resources, select + Add component… and add the crews, materials, trucking, other assemblies, subcontract amounts and other costs the work requires. Enter Priced at a quantity of to see the resulting unit cost.

Cost codes, bond tables and clauses

Cost codes: enter each code and its description, then select Add. Codes that are no longer used can be retired. Retired codes are hidden unless you select Show retired codes, and can be restored at any time.

Bond tables: create a table for your surety, such as Surety 2026, and add its rate brackets with + Add bracket.

Proposal clauses: save the terms and exclusions you include on proposals, so they can be added to any proposal.

Changing a rate

A Codebook change reaches new estimates at once. Open bids priced from the old values are listed at the top of the Codebook; Refresh open bids takes the change onto all of them in one step. Rates a bid carries on its own stay.

To change a rate for one bid only, use the estimate's Rates on this bid: every trade, machine, material and crew the bid uses, with its rate, hours and dollars beside the Codebook's rate. A rate typed there changes every line of that trade, machine or material on this bid, and nothing in the Codebook.

Importing from a spreadsheet

If your rates are already in a spreadsheet, you do not need to enter them one at a time. On the Labor, Equipment, Materials, Crews, Assemblies and Cost codes tabs, select Paste data… and paste the rows copied from your spreadsheet, including the heading row. Aggrado recognizes the columns by their headings and shows how it read each row before anything is saved. Select Import 24 rows (it counts the rows it can add) to add them.

From the makers of Aggrado Site, sitework estimating and job management software: takeoff and crew-based bids, the won bid as the job's budget, and the crew's phone app on one record.