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
Click Leads or Projects in the left sidebar
Open the lead or project you want to estimate
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
Click + New Estimate in the top right
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
Click Create New Estimate to move to the settings form
Enter the Estimate Title, name it clearly by project type or scope
Confirm the Select A Lead/Project field, which defaults to the current lead or project
Select the Estimator Name, the person responsible for this estimate
Enter Square Feet, used for per-square-foot cost calculations throughout the estimate
Enter your Overhead % and Profit % for this estimate
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
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
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
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
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
For each cost code, fill in the following fields:
Description - what this line item covers
Qty - the quantity
Unit - the unit of measurement (Each, Square Feet, Linear Feet, Hours, Lump Sum, Days, and more)
Unit Cost - the cost per unit
Subtotal - calculated automatically as Qty x Unit Cost
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
Allowance - check this box to make the cost code available in the Allowances feature for uncertain or client-selected items
Total - calculated automatically as Subtotal plus Internal Markup
$/SQ FT - calculated automatically based on your Square Feet setting
Drag the six-dot handle on the left of any row to reorder cost codes withina group
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:
Click the link in the popup to download the CSV template
Fill in the template columns: Cost Code, Description, Quantity, Unit, Unit Cost, Markup, and Group
Upload the completed file
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.
Click the revision icon (document icon) in the top bar of the estimate
A new revision is created, numbered automatically starting at Revision 1
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:
Click View Proposal in the top right of the estimate
Review and customize the proposal sections
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 |
