Costbook Template Tutorial

Learn how to structure and use the costbook template to power your estimates in Best Estimator. The costbook is the foundation of every proposal you create.

What is the Costbook?

The costbook is your master list of items used by the Estimate Builder. It contains every material, labor task, assembly, and service you offer—organized and priced for quick selection when building estimates.

Your costbook is stored in Supabase and managed via CSV upload/download. You can edit it in Excel, Google Sheets, or any spreadsheet tool, then upload changes back into Best Estimator.

Most of the intelligence in Best Estimator comes from a clean, well-organized costbook. The better your costbook is structured, the faster and more accurate your estimates will be.

Costbook Columns Overview

Here's what each column in the costbook template means, explained in plain contractor language:

Organization Columns

  • Item Group 1 — Master Category (e.g., Bathroom, Kitchen, Roofing, General). This is the top-level grouping that appears in the Estimate Builder's main navigation.
  • Item Group 2 — Subcategory (e.g., Faucets, Showers, Cabinets, Countertops). These appear as tabs within each master category.
  • Item Group 3–5 — Optional deeper grouping for complex costbooks (e.g., "Quartz", "Premium", "60 inch units"). Use these to further organize large item lists.

Project Setup Control Columns

  • group — Links the item to a Project Setup question (e.g., "finish", "wall_system", "countertop_material"). Leave blank for items that should always show.
  • level — The specific option within that group (e.g., "Brushed Nickel", "Chrome", "Tile", "Quartz"). This determines which Project Setup answer makes this item visible.

Item Details

  • Item Name — The name shown in the Estimate Builder and on proposals. Keep it clear and homeowner-friendly.
  • Quantity — Default quantity when the item is added to an estimate. You can change this per estimate.
  • Measurement Unit (Abbreviation) — The unit of measure (sf, lf, ea, job, hr, etc.).
  • Description — The text that appears on the proposal/PDF for the homeowner. Use this to control what the client sees.

Cost Columns

  • Material $/Unit — Material cost per unit.
  • Labor $/Unit — Labor cost per unit (if using flat-rate labor).
  • Labor Rate ($/hr) — Hourly labor rate (if calculating labor by time).
  • Labor Productivity (units/hr) — How many units can be completed per hour (used with Labor Rate to calculate labor cost).
  • Equipment $/unit — Equipment cost per unit.
  • Other $/unit — Miscellaneous costs per unit.
  • Subcontract $/unit — Subcontractor cost per unit (if using flat-rate).
  • Subcontract Rate ($/hr) — Hourly subcontractor rate.
  • Subcontract Productivity (units/hr) — Subcontractor productivity rate.

Additional Columns

  • Waste Factor — Percentage added to account for material waste (e.g., 0.10 for 10%).
  • Item Image — Optional URL to an image for the item.
  • Tags — Optional tags for searching and filtering items.

How Master Categories and Subcategories Drive the Estimate Builder

The way you organize your costbook directly controls the navigation in the Estimate Builder:

1

Item Group 1 → Top Bar Navigation

Your master categories (Bathroom, Kitchen, Roofing, General) appear as the main tabs in the Estimate Builder. Click a category to see its items.

2

Item Group 2 → Subcategory Bar

Subcategories (Faucets, Cabinets, Countertops) appear as secondary tabs within each master category. This keeps large costbooks organized and easy to navigate.

3

Item Groups 3–5 → Further Organization

These optional groups can be used to organize items within the item list (e.g., grouping countertop items by material type: Quartz, Granite, Laminate). They can also be used for grouping on the PDF.

Example structure:

  • Item Group 1: Kitchen
  • Item Group 2: Countertops
  • Item Group 3: Quartz
  • Item Name: "Quartz Countertop L1 – 2cm"

In the Estimate Builder, you'd click Kitchen Countertops → see the Quartz items listed.

How group + level Work with Project Setup

The group and level columns are optional but powerful. They connect your costbook items to Project Setup answers, controlling which items are visible during estimate building.

How it works:

  • group = Which Project Setup question controls this item's visibility (e.g., "finish", "wall_system", "countertop_material").
  • level = Which answer option maps to this item (e.g., "Brushed Nickel", "Tile", "Quartz").

The simple rule:

If an item has no group/level → It always shows in the Estimate Builder. These are your general items (demo, permits, design fees, trip charges).

If an item has group + level → It's only visible when Project Setup selects that specific group+level combination.

Practical example:

Your costbook has faucets in different finishes:

  • Item: "Single-Handle Kitchen Faucet – Brushed Nickel"
    group: finish, level: Brushed Nickel
  • Item: "Single-Handle Kitchen Faucet – Chrome"
    group: finish, level: Chrome
  • Item: "Single-Handle Kitchen Faucet – Matte Black"
    group: finish, level: Matte Black

In Project Setup, if the customer chooses "Brushed Nickel" for finish, the Estimate Builder only shows the Brushed Nickel faucet. The Chrome and Matte Black versions stay hidden.

Best Practices for Building Your Costbook

A well-organized costbook makes estimating faster and more consistent. Here are some best practices:

  • Start with a few categories. Don't try to build everything at once. Begin with your main trades (e.g., Bathroom, Kitchen, General) and expand over time.
  • Keep Item Names clear and homeowner-friendly. The item name shows up on proposals. "36" Shaker Wall Cabinet" is better than "CAB-SHK-36W-MED".
  • Use Item Group 2 for logical subcategories. Faucets, Cabinets, Countertops, Flooring—whatever makes sense for how you think about your work.
  • Add group/level only where you have multiple choices. Finishes, wall systems, countertop materials—places where the customer picks one option from several.
  • Use Description to control what the client sees. The Description field appears on the PDF proposal. Make it professional and clear.
  • Keep internal costing detail in the cost columns. The PDF layout can be simplified later with PDF Settings—you don't have to show every cost breakdown to the homeowner.

Importing and Updating the Costbook

Managing your costbook is straightforward: download, edit, and upload.

1

Download the Template

Go to your Account → Costbook section in the admin area. Download your current costbook as a CSV, or download a blank template to start fresh.

2

Edit in Excel or Google Sheets

Open the CSV in your preferred spreadsheet tool. Add new items, update prices, adjust categories, and set group/level values as needed.

3

Save as CSV

When you're done editing, save the file as a CSV (comma-separated values). Make sure to keep the column headers exactly as they are in the template.

4

Upload Back into Best Estimator

Return to Account → Costbook and upload your updated CSV. The system will validate the file and show any errors that need fixing.

Important to know:

Existing estimates keep their numbers. When you update your costbook, estimates you've already created stay unchanged. New estimates will use the updated costbook prices and items. This protects your past work while letting you improve your costbook over time.

Frequently Asked Questions

Do I have to fill out Item Group 3–5?

No, they're optional. Item Group 1 (Master Category) and Item Group 2 (Subcategory) are the main organizational levels. Groups 3–5 are there if you need deeper organization for complex costbooks, but most contractors only use Groups 1 and 2.

What happens if I leave group/level blank?

The item is always visible in the Estimate Builder, regardless of Project Setup answers. This is exactly what you want for general items like demo, permits, trip charges, and design fees that apply to every job.

Can I have different costbooks for different trades?

Currently, you have one costbook per account. The recommended approach is to use Item Group 1 to separate different trades (Bathroom, Kitchen, Roofing, Siding, etc.) within a single costbook. Project Setup can then filter which master categories appear for each job type, so you only see relevant items when building an estimate.

What if I make a mistake in the CSV?

When you upload a CSV, the system validates it and reports any errors—like missing required columns, invalid data types, or formatting issues. You'll see specific error messages telling you what to fix. Just correct the issues in your spreadsheet and re-upload. No damage is done until the upload succeeds.

How often should I update my costbook?

Update whenever your prices change significantly (material cost increases, labor rate adjustments) or when you add new products/services. Many contractors review their costbook quarterly. Remember, existing estimates keep their original numbers—only new estimates use the updated costbook.

What's the difference between Labor $/Unit and Labor Rate + Productivity?

Labor $/Unit is a flat labor cost per unit—simple and direct. Labor Rate ($/hr) combined with Labor Productivity (units/hr) calculates labor based on time: (quantity ÷ productivity) × hourly rate. Use whichever method matches how you think about labor for that item.

Can I use the same item in multiple categories?

Yes. If an item applies to multiple master categories, you can duplicate the row with different Item Group 1 values. For example, "Permit Fee" might appear under both Bathroom and Kitchen. Alternatively, put it in a "General" category that's always included in every estimate.

What if I want to hide internal cost details from the homeowner?

Your costbook can contain detailed cost breakdowns (material, labor, equipment, etc.) for your internal tracking. The PDF Settings control what the homeowner sees—you can show lump-sum pricing, hide line-level costs, or simplify the display without changing your costbook structure.