Skip to main content

Creating Accurate Estimates That Win Jobs

Covers building line-item estimates with cost codes, groups, markup, overhead, profit, tax, allowances, revisions, CSV imports, templates, and converting approved estimates into proposals and budgets.

Written by Support

Overview

Estimating is where you win or lose money on a project before a single nail is driven. Bid too high and you lose the work. Bid too low and you lose the profit, or worse, take a loss on a job you can't walk away from. The difference between contractors who grow and those who struggle often comes down to the quality and consistency of their estimating process.

Structur's estimating tool gives you a structured, cost-code-based system for building detailed line-item estimates with groups, markup, overhead, profit, tax, and allowances all built in. You can start from scratch, pull from a saved template, import data from a CSV, or use the AI Estimate tool to speed up the process. Every estimate is directly linked to a proposal, and once that proposal is approved, the estimate automatically becomes your project budget.

This guide walks you through every part of building an estimate in Structur, from creating it and adding cost codes, to managing revisions, importing data, and sending it to the client as a proposal.


Understanding Estimates

What It Does

Structur's Estimates module allows you and your team to:

  • Build detailed line-item estimates organized by cost codes and groups with quantity, unit, and unit cost for every line

  • Apply markup, overhead, profit, and tax at the estimate level with full control over how each is calculated

  • Create and manage revisions so you can price multiple scenarios without losing previous versions

  • Start from a template to save time on repeatable project types and standardize your pricing structure

  • Import cost data from CSV to bring in data from other estimating tools, vendor quotes, or spreadsheets

  • Import existing templates directly into an open estimate to combine structures

  • Use AI Estimate (Beta) to generate a starting estimate faster

  • Track allowances per cost code for uncertain or owner-selected items that may change later

  • Convert to proposal and budget automatically once the estimate is complete

When to Use It

Estimates are most valuable when you want to:

  • Price a new project with a detailed, cost-code-based breakdown

  • Create multiple pricing scenarios or value engineering options for a client

  • Build a reusable template from a well-priced project

  • Import a vendor quote or spreadsheet directly into a project estimate

  • Set the financial baseline that will feed your project budget after approval


Step-by-Step Instructions

1. Open the Estimates Module

  1. Click Leads or Projects in the left sidebar

  2. Open the lead or project you want to estimate

  3. Click Estimates in the module top bar

If no estimates exist yet, you'll see a prompt with a + New Estimate button. You can also use the + AI Estimate Beta button in the top right to generate a starting estimate using AI.


2. Create a New Estimate

  1. Click + New Estimate in the top right

  2. The Create New Estimate modal opens. Choose your starting point: select Start From Scratch to build everything manually, or select Choose A Template to pre-load groups, cost codes, and pricing from a saved template

  3. Click Create New Estimate to move to the settings form

  4. Enter the Estimate Title, name it clearly by project type or scope

  5. Confirm the Select A Lead/Project field, which defaults to the current lead or project

  6. Select the Estimator Name, the person responsible for this estimate

  7. Enter Square Feet, used for per-square-foot cost calculations throughout the estimate

  8. Enter your Overhead % and Profit % for this estimate

  9. Review the Compound The Profit Calculation On Top Of Markup And Overhead toggle. When ON (default), profit compounds on top of markup and overhead. For example: $1,000 cost + 10% markup ($100) + 10% overhead ($110) + 10% profit ($121) = $1,331. When OFF, profit applies to raw cost only, giving $1,000 + 10% markup ($100) + 10% overhead ($110) + 10% profit ($100) = $1,310

  10. Review the Enable Tax Collection toggle. When ON, a tax rate field appears and you configure whether tax applies on top of overhead and profit or on raw cost only. When OFF (default), no tax is calculated

  11. Click Create New Estimate to open the full estimate


3. Understand the Estimate Summary

At the top of every estimate, a summary bar shows the high-level financials:

  • Total Price - the full amount the client would pay, including all markup, overhead, profit, and tax

  • Direct Cost - the raw subtotal of all cost codes before any markup

  • Internal Markup - the sum of all per-cost-code markups

  • Overhead - overhead applied to the estimate total

  • Profit - profit applied to the estimate total

  • Tax - tax applied if enabled

Below the summary bar, the Estimate Details box shows the title, estimator, revision number, overhead and profit percentages, proposal status, square footage, and creation date. The Cost Breakdown donut chart gives a visual breakdown of how each component contributes to the total price.

Click Hide Summary to collapse this section and give yourself more room to work on cost codes.


4. Add Groups and Cost Codes

  1. Click + New Group to create a group that organizes your cost codes by phase, trade, or scope area. Groups keep large estimates readable and make proposals easier for clients to follow

  2. Inside a group, click + New Cost Code to add a single cost code from your library, or click + New Multiple Cost Codes to select and add several at once

  3. For each cost code, fill in the following fields:

    1. Description - what this line item covers

    2. Qty - the quantity

    3. Unit - the unit of measurement (Each, Square Feet, Linear Feet, Hours, Lump Sum, Days, and more)

    4. Unit Cost - the cost per unit

    5. Subtotal - calculated automatically as Qty x Unit Cost

    6. Internal Markup - enter a percentage per line, or click the Internal Markup column header to apply a bulk markup across all cost codes at once

    7. Allowance - check this box to make the cost code available in the Allowances feature for uncertain or client-selected items

    8. Total - calculated automatically as Subtotal plus Internal Markup

    9. $/SQ FT - calculated automatically based on your Square Feet setting

  4. Drag the six-dot handle on the left of any row to reorder cost codes withina group

  5. Click the three-dot menu on any row to delete, move, or duplicate a cost code

Note: Standard cost codes include a letter indicating cost type: L for Labor, M for Materials, S for Subcontractors, E for Equipment, O for Other. This structure feeds your budget tracking and job cost reporting after the project is approved.


5. Import Data into an Estimate

Instead of entering every line manually, import data using the upload icon in the top bar of the estimate. Clicking it opens a dropdown with two options.

Import Template

Select Import Template to pull an existing saved template directly into the open estimate. This adds the template's groups and cost codes to whatever is already in the estimate, making it easy to combine structures.

Import CSV

Select Import CSV to bring in cost data from a spreadsheet:

  1. Click the link in the popup to download the CSV template

  2. Fill in the template columns: Cost Code, Description, Quantity, Unit, Unit Cost, Markup, and Group

  3. Upload the completed file

  4. Structur imports all rows into the estimate

Important: Always use the provided CSV template. Uploading a file in a different format will cause import errors. Download the template fresh from the popup each time.


6. Manage Revisions

Revisions let you create alternate versions of an estimate without losing your original pricing. Use them for value engineering options, scope changes, or when a client asks for a revised number.

  1. Click the revision icon (document icon) in the top bar of the estimate

  2. A new revision is created, numbered automatically starting at Revision 1

  3. Edit the new revision independently from the original

Important: You can have multiple revisions for one estimate. If one revision is approved, all other revisions are automatically marked as declined. Declined revisions stay in the system for reference but do not feed the budget.


7. Manage Estimate Settings

Click the gear icon in the top bar of the estimate to open Estimate Settings. From here you can update:

  • Estimate Title

  • Lead/Project assignment

  • Estimator Name

  • Square Feet

  • Overhead %

  • Profit %

  • Compound profit toggle

  • Enable Tax Collection toggle

The Settings modal also shows the current revision label and gives you two additional options at the bottom: Delete removes the estimate permanently, and Convert to Template saves the estimate as a reusable template for future projects.

You can also click Save As Template directly from the top bar of the estimate without opening settings.


8. Move to Proposal

When your estimate is complete and the numbers are right:

  1. Click View Proposal in the top right of the estimate

  2. Review and customize the proposal sections

  3. Send it to the client for review and digital signature

Once the client approves the proposal, the estimate automatically feeds your Budget module. From that point, you can track actual costs against your estimate line by line throughout the project.

Note: The Budget is not available until a proposal has been approved. If you open the Budget before approval, it will appear empty.


Best Practices

  • Set overhead and profit before adding cost codes - entering your rates first means every line you add is already calculating correctly from the start.

  • Use groups to organize by trade or phase - a clean group structure makes your estimate easier to review internally and makes your proposal easier for clients to read.

  • Use templates for repeatable project types - build your best kitchen remodel or office build-out estimate once, save it as a template, and reuse it rather than starting from scratch every time.

  • Always use the provided CSV template for imports - uploading a custom spreadsheet format will fail; download the template from the import popup and fill it in exactly.

  • Mark uncertain items as allowances - if pricing depends on client selections or isn't confirmed yet, check the Allowance box so those items can be tracked and reconciled later.

  • Use revisions for value engineering - instead of deleting lines or changing numbers on your original, create a new revision so you always have the full pricing history.

  • Compare your estimate to your ballpark before sending - if the detailed estimate is significantly different from your ballpark, find out why before the client sees the number.


Common Questions

Q: Can I have multiple estimates for the same project?

A: Yes. You can create as many estimates as you need for a project, covering different scopes, pricing scenarios, or value engineering options. Each estimate has its own linked proposal.


Q: What happens to declined revisions?

A: They stay in the system for reference and are marked as declined. Only the approved revision feeds the project budget. Declined revisions don't affect any financial tracking.


Q: Can I copy an estimate to a different project?

A: Yes. Save the estimate as a template using Save As Template or Convert to Template in the settings modal, then select that template when creating a new estimate on the other project.


Q: What is the difference between Internal Markup and Overhead?

A: Internal Markup is applied per cost code and represents a line-item margin on specific items, such as a materials markup or a labor rate buffer. Overhead is an estimate-level percentage applied to the total and represents your company's indirect costs like insurance, equipment, and office expenses. Both are separate from Profit.


Q: Why does my Budget look different from my Estimate?

A: This is expected behavior. The Budget shows raw costs before markup, overhead, and profit. The Estimate and Proposal show the full amount including all markup. The difference is your margin, not a discrepancy or bug.


Q: What does AI Estimate do?

A: AI Estimate (Beta) generates a starting estimate based on the project details you provide. It's designed to give you a faster starting point that you then review and refine. Because it's in Beta, always review AI-generated line items carefully before sending anything to a client.


Q: Can I see the cost per square foot across the whole estimate?

A: Yes. Every cost code shows a $/SQ FT column calculated automatically based on the Square Feet you entered when creating the estimate. The total $/SQ FT for the full estimate appears in the summary bar at the top.


Common Mistakes to Avoid

❌ Don't

✅ Do

Leave Square Feet blank or at zero

Enter accurate square footage so per-area calculations work correctly throughout the estimate

Upload a custom CSV format

Download the provided CSV template from the import popup and fill it in exactly

Change numbers on an original estimate when a client asks for revisions

Create a new revision to preserve the original pricing and track the change history

Skip allowances for uncertain items

Check the Allowance box on any cost code where pricing depends on selections or hasn't been confirmed

Open the Budget before the proposal is approved

Approve the proposal first - the Budget is only populated after approval

Save a one-off estimate without considering a template

If you'd do the same project type again, save it as a template before closing

Ignore the compound profit toggle

Understand how your profit is being calculated before finalizing any number you send to a client

Did this answer your question?