Global Variables
Global Variables (also called Default Variables or Bid Variables) are system-wide default values that get copied to each new bid when it's created. These settings control overhead, profit, tax rates, waste percentages, and other bid-level configurations.
Changes to global variables affect new bids only. Existing bids preserve their original values for historical accuracy.
Variable Categories
Global variables are organized into logical groups:
| Category | Variables | Purpose |
|---|---|---|
| Percentages | Overhead, Profit, Tax Rates, Waste, Fuel | Markup and cost factors |
| Labor Rates | 8 role rates | Base hourly rates for labor roles |
| Concrete | 3 concrete types | Standard concrete mix pricing |
| Materials | Common materials | Default material pricing |
| Equipment | Equipment rates | Default equipment rental rates |
Accessing Global Variables
Go to Admin Panel from the main navigation.
Click on one of the tabs:
- Percentages (Tab 1)
- Labor Rates (Tab 2)
- Concrete (Tab 3)
- Materials (Tab 4) - ⚠️ Deprecated, use Pricing Database
- Equipment (Tab 5) - ⚠️ Deprecated, use Pricing Database
Click edit icon (✏️) next to a variable, modify the value, and save.
Materials and Equipment tabs are largely redundant with the Pricing Database. We recommend using the Pricing Database (Tab 6) for managing material and equipment rates.
Percentages Variables
Core markup and cost factor settings:
| Variable | Description | Default | Applied To |
|---|---|---|---|
| Overhead % | General overhead markup | 10% | Bid total (after subtotal) |
| Profit % | Profit margin | 5% | Bid total (after overhead) |
| Materials Tax % | Sales tax on materials | 8.25% | Material items |
| Equipment Tax % | Sales tax on rentals | 12.25% | Equipment items |
| Rebar Waste % | Rebar waste factor | 5% | Rebar material calculations |
| Fuel Charge $/day | Daily fuel cost per equipment | $50 | Equipment items |
Editing Percentage Variables
Navigate to Admin Panel → Percentages (Tab 1)
Click the edit icon (✏️) next to the variable you want to change.
Enter the new value.
Format:
- Percentages: Enter as decimal (e.g.,
0.10for 10%) - Currency: Enter dollar amount (e.g.,
50for $50/day)
Click save icon (💾). The new value will be used for all new bids created after this change.
Historical Preservation: Existing bids will not be affected by global variable changes. Only new bids created after the change will use the updated values.
Labor Rates Variables
Base hourly rates for 8 standard labor roles:
| Role | Description | Default Rate |
|---|---|---|
| Executive PM | Project management | $65.00/hr |
| Safety Manager | Safety oversight | $42.00/hr |
| Labor Foreman | Crew supervision | $38.00/hr |
| Equipment Operator | Equipment operation | $27.00/hr |
| Skilled Labor | Skilled trades | $25.00/hr |
| Concrete Finisher | Finishing work | $24.00/hr |
| Unskilled Labor | General labor | $22.00/hr |
| Testing Labor | Testing services | $20.00/hr |
These are base rates. The Labor module automatically calculates burdened rates which include FICA, FUTA, SUTA, and other labor burden factors.
Labor Rate Structure
Base Rate (from global variable)
↓
+ FICA (7.65%)
+ FUTA (0.6%)
+ SUTA (varies by state)
+ Worker's Comp (varies by classification)
↓
= Burdened Rate (shown in Labor module)
Concrete Variables
Default pricing for 3 standard concrete types:
| Type | Description | Default Price |
|---|---|---|
| Slab on Grade | Slab pours | $125.00/CY |
| Footings | Foundation footings | $135.00/CY |
| Grade Beams | Structural beams | $145.00/CY |
Editing Concrete Pricing
Navigate to Admin Panel → Concrete (Tab 3)
Click edit icon for the concrete type you want to update.
Modify:
- Description - Concrete type name
- Base Price - Price per cubic yard
- Unit - CY (cubic yards)
Click save. New bids will use the updated concrete pricing.
How Global Variables Work
Snapshot on Bid Creation
When a new bid is created:
Result:
- Old bid: Still has 10% overhead (preserved)
- New bid: Has 12% overhead (updated)
Per-Bid Overrides
Estimators can override bid variables on a per-bid basis:
In the bid detail page, click Bid Settings (gear icon).
Click the Variables tab in the settings dialog.
Edit any variable to override the default for this specific bid:
Global Default: Overhead = 10%
This Bid Override: Overhead = 15%
Click Save. The override applies only to this bid.
Bid-level overrides do not affect other bids or global defaults.
Global vs. Pricing Database
Understanding the difference between global variables and the pricing database:
- Global Variables
- Pricing Database
Purpose: Bid-level defaults (copied to each bid)
Examples:
- Overhead percentage
- Profit percentage
- Tax rates
- Waste factors
Behavior:
- Copied when bid is created
- Can be overridden per bid
- Preserves historical values
Use when: Setting markup and cost factors that vary per bid
Purpose: Company-wide rate catalog (looked up)
Examples:
- Equipment rental rates
- Material unit costs
- Labor hourly rates
- Subcontractor services
Behavior:
- Looked up when creating items
- Changes affect future items
- Single source of truth
Use when: Managing rates for equipment, materials, labor, and subcontractors
Search and Filter
The Percentages and Labor Rates tables include search functionality:
| Filter | Description |
|---|---|
| Search by Name | Filter variables by name (e.g., "overhead", "profit") |
| Search by Value | Filter by value range |
Use the search bar to quickly find specific variables in large tables.
Variable Types
Global variables are stored as different data types:
| Type | Format | Example |
|---|---|---|
| Decimal | Percentages and rates | 0.10 (10%) |
| Integer | Whole numbers | 50 ($50) |
| String | Text values | "Overhead" |
When entering percentages, use decimal format: 0.10 for 10%, 0.0825 for 8.25%.
API Endpoints
| Method | Endpoint | Description | Auth |
|---|---|---|---|
| GET | /api/admin/default-variables | Get all global variables | ADMIN |
| GET | /api/admin/default-variables/:id | Get single variable | ADMIN |
| PUT | /api/admin/default-variables/:id | Update variable | ADMIN |
| POST | /api/admin/default-variables | Create variable | ADMIN |
| DELETE | /api/admin/default-variables/:id | Delete variable | ADMIN |
| PUT | /api/admin/default-variables/bulk | Bulk update (Concrete) | ADMIN |
| DELETE | /api/admin/default-variables/bulk | Bulk delete (Concrete) | ADMIN |
Audit Logging
All global variable changes are logged:
| Action | Logged Data |
|---|---|
| Variable Created | Name, value, category |
| Variable Updated | Changed fields (old value → new value) |
| Variable Deleted | Full snapshot |
| Bulk Update | Item count, updated fields |
View audit logs at Admin Panel → Audit Log tab.
Best Practices
Review Before Changing
Understand that global variable changes affect all new bids. Review impact before updating.
Document Overrides
When overriding variables for specific bids, document the reason in bid notes.
Consistent Naming
Use clear, descriptive names for custom variables.
Regular Review
Periodically review global variables to ensure they reflect current company standards.
Common Scenarios
Changing Overhead Percentage
Scenario: Company policy changes overhead from 10% to 12%.
Steps:
- Go to Admin Panel → Percentages
- Edit Overhead % variable
- Change from
0.10to0.12 - Save
Result: All new bids will use 12% overhead. Existing bids keep 10%.
Adding Custom Variable
Scenario: Need to track a custom cost factor.
Steps:
- Click "Add Variable" button
- Enter name, value, and category
- Save
Result: New variable available for use in bid calculations.
Per-Bid Profit Override
Scenario: One bid needs higher profit margin.
Steps:
- Open bid → Bid Settings
- Navigate to Variables tab
- Override Profit % for this bid only
- Save
Result: Only this bid uses the custom profit percentage.
Troubleshooting
Changes not reflected in existing bid
This is expected behavior. Global variable changes only affect new bids. To update an existing bid:
- Open the bid
- Go to Bid Settings → Variables
- Manually update the variable
Percentage showing as wrong value
Check format:
- Correct:
0.10(10%) - Incorrect:
10(which would be 1000%)
Always use decimal format for percentages.
Deprecated Tabs
Materials and Equipment tabs are largely redundant with the Pricing Database.
Recommendation: Use Pricing Database (Tab 6) for managing material and equipment rates. It provides:
- Full CRUD operations
- Search and filtering
- Bulk operations
- Better organization