How to Use Schedule of Rates

Step-by-step guide to set up and manage rate schedules for accurate construction project pricing and billing

What This Feature Does

Schedule of Rates (SOR) allows you to create and manage structured rate schedules for different types of construction work, enabling consistent pricing and accurate billing across projects.

Initial Setup

First-Time Configuration

  1. Navigate to "Schedule of Rates" by clicking "Schedule of Rates" in the left sidebar
  2. You'll see the SOR management interface with options to create or import rates

Schedule of Rates Empty State

  1. Choose your setup method:
    • Upload PDF: Import existing rate schedules from PDF documents
    • Manual Entry: Create rate schedules directly in the system
    • Template Import: Use pre-built rate templates

Required Information

Before setting up Schedule of Rates, prepare:

  • Existing rate schedules or pricing documents
  • Standard rates for common construction activities
  • Unit measurements for different types of work (hours, m², m³, etc.)
  • Project or client-specific rate variations

Day-to-Day Usage

How to Upload a PDF Rate Schedule

  1. Go to "Schedule of Rates" in the left sidebar
  2. Click "Upload SOR Document" button

SOR Upload Modal

  1. Set up the document details:
    • Document Name: Descriptive name (e.g., "Main Roads SOR 2024")
    • Scope: Choose "Global", "Client", "Project", or "Tag"
    • Effective Date: When these rates become active
    • Expiry Date: When rates expire (optional)
  2. Upload your PDF document:
    • Click "Choose File" and select your SOR PDF
    • The system will use AI to extract rate information
    • Review extracted rates for accuracy
  3. Configure rate details:
    • Verify activity descriptions are correct
    • Check unit measurements (hours, m², linear meters, etc.)
    • Confirm rate amounts and currency
  4. Click "Save Schedule of Rates"

How to Create Manual Rate Schedules

  1. Navigate to "Schedule of Rates" and click "Create New SOR"
  2. Set up the basic schedule information:
    • Schedule Name: Clear identifier (e.g., "Electrical Work Rates Q1 2024")
    • Category: Select trade category (Electrical, Plumbing, Concrete, etc.)
    • Scope: Global, Client, Project, or Tag
  3. Add individual rate items:
    • Click "Add Rate Item"
    • Item Code: Unique identifier (e.g., "ELE-001")
    • Description: Detailed work description (e.g., "Install 240V power outlet")
    • Unit: Select measurement type (Each, Hour, Square Meter, etc.)
    • Rate: Enter unit price
    • Notes: Any special conditions or inclusions
  4. Continue adding all relevant rate items
  5. Review and save the complete schedule

How to Match Timesheets to SOR Rates

  1. When processing timesheets, look for items marked "SOR Matching Required"
  2. Click on a timesheet entry that needs SOR matching

SOR Matching Interface

  1. In the SOR matching dialog:
    • Review the worker's activity and description
    • Search available SOR items by keyword or code
    • Select the most appropriate rate item
    • Verify the unit and rate match the work performed
  2. Click "Apply SOR Rate" to confirm the match
  3. The timesheet will now use the SOR rate for billing calculations

Managing Different SOR Scopes

Global Schedule of Rates

  1. Use for standard rates that apply across all projects:
    • Common construction activities
    • Standard trade rates
    • General equipment rates
  2. Set these up first as your baseline rates
  3. Apply to projects unless specific overrides exist

Client-Specific Schedule of Rates

  1. Create for clients with negotiated rates:
    • Government contracts with specific rate schedules
    • Large clients with negotiated pricing
    • Long-term contracts with agreed rates
  2. These rates override global rates when working for specific clients
  3. Link to client contracts and agreements

Project-Specific Schedule of Rates

  1. Use for projects with unique pricing requirements:
    • Complex projects with specialized activities
    • Remote locations with travel allowances
    • Projects with specific technical requirements
  2. These rates take priority over both global and client rates
  3. Document the reasoning for project-specific rates

Tag-Based Schedule of Rates

  1. Use when a rate schedule should apply based on tags rather than one specific client or project:
    • Rates that vary by location, region, or zone (e.g. "Metro", "Remote")
    • Rates driven by how a job is scheduled rather than who it is for
    • The same rates applying across many clients or projects that share a tag
  2. When you select "Tag" scope, choose one or more client tags, project tags, and/or order tags:
    • A tag-based SOR applies when the timesheet or docket's client, project, or order carries any of the selected tags (a match on any one of the three is enough)
    • A tag-based SOR with no tags selected matches nothing, so it will not be applied to any transaction. Saving one is allowed — useful while you are still setting it up, or when clearing tags to re-pick them — but it stays dormant until you select at least one tag
  3. Tags are managed on your clients, projects, and orders. The SOR matches against whatever tags those records carry at the time of processing, so keeping tags up to date keeps matching accurate
  4. Tag-based rates sit below client- and project-scoped rates. When a client- or project-scoped Schedule of Rates also applies to the transaction, that document is preferred and the tag-based rates are not used. Use tag-based scope for rates you want to apply across clients/projects that share a tag — not to override a client's or project's own dedicated rate schedule.

How Scope Priority Works

When more than one Schedule of Rates could apply to the same transaction, the system ranks the candidates and selects the most specifically-scoped document that applies, in this order:

  1. Project-specific — highest priority
  2. Client-specific
  3. Tag-based
  4. Global — the fallback when no more specific document applies

A document only holds its place in that order when it actually applies to the transaction. A project-scoped SOR belonging to a different project, or a tag-based SOR whose tags the transaction does not carry, ranks below Global rather than above it.

If two documents rank equally, the one with the most recent effective date is used.

Choosing between two matching tag-based documents

The three tag dimensions are treated equally — there is no built-in ordering between a client tag, a project tag and an order tag. If more than one tag-based SOR matches the same transaction, the one with the most recent effective date wins, regardless of which dimension it matched on.

So a client-tag SOR made effective in June will be chosen over a project-tag SOR made effective in May, even though the project tag is narrower. If you need a specific tag-based document to take precedence, give it a later effective date.

Scope priority is a ranking, not a hard block. The best-matching document is presented first and is what the system selects in normal operation, but a lower-ranked document can still be chosen where it is the only sensible fit for the work recorded on the transaction. If a transaction is priced from a document you did not expect, open its rate details to see which SOR was applied and why.

Common Tasks for Construction Teams

Setting Up Trade-Specific Rate Schedules

  1. Create separate SOR documents for each major trade:
    • Concrete Work: Forming, pouring, finishing activities
    • Electrical: Installation, testing, commissioning
    • Plumbing: Pipe installation, fixtures, testing
    • Earthworks: Excavation, compaction, backfill
  2. Use consistent coding systems across trades:
    • CON-001, CON-002 for concrete activities
    • ELE-001, ELE-002 for electrical work
    • PLU-001, PLU-002 for plumbing activities

Managing Rate Updates and Revisions

  1. When rates need updating:
  2. Create new version of the SOR with updated effective date
  3. Mark old version as expired or inactive
  4. Ensure transition doesn't affect in-progress work
  5. Communicate rate changes to relevant teams
  6. Update any linked contracts or agreements

Integrating SOR with Project Estimates

  1. Use SOR rates for project estimation:
    • Calculate estimated costs based on SOR rates
    • Apply appropriate SOR scope (global, client, or project)
    • Include rate escalation for long-term projects
  2. Compare actual timesheet costs to estimated SOR costs
  3. Use variance analysis to improve future estimates

Advanced SOR Management

AI-Powered Rate Extraction

  1. When uploading PDF rate schedules:
  2. The AI system automatically extracts:
    • Activity descriptions and codes
    • Unit measurements and rates
    • Special conditions and notes
  3. Review AI extraction results carefully:
    • Check that activities are correctly identified
    • Verify units and rates are accurate
    • Add missing information or correct errors
  4. Save time by using AI for bulk rate imports

Rate Matching and Billing

  1. Set up automatic SOR matching rules:
    • Match by cost code similarity
    • Match by activity description keywords
    • Match by worker trade and skill level
  2. Configure billing preferences:
    • Use SOR rates for client billing
    • Apply markup percentages if required
    • Handle rate variations and overtime
  3. Generate invoices using matched SOR rates

Performance Analysis and Optimization

  1. Analyze SOR usage and accuracy:
    • Track which rates are most commonly used
    • Identify gaps in rate coverage
    • Monitor rate matching accuracy
  2. Use data to improve rate schedules:
    • Add frequently needed rates
    • Update rates based on actual costs
    • Optimize rate organization for easier matching

Troubleshooting

If PDF extraction results are incomplete

  • Check that the PDF has clear, readable text (not scanned images)
  • Verify the document structure matches standard rate schedule formats
  • Try uploading smaller sections of large documents
  • Manually add any missing rates after AI extraction

If SOR matching isn't finding appropriate rates

  • Check that rate descriptions include relevant keywords
  • Verify that the SOR scope is appropriate for the timesheet
  • For tag-based schedules, confirm the timesheet's client, project, or order carries one of the tags on the SOR
  • Ensure rate schedules are marked as active and current
  • Consider adding more detailed rate descriptions

If rates seem incorrect for billing

  • Verify the correct SOR scope is being applied
  • Check effective dates for rate schedules
  • Ensure markup and overhead calculations are correct
  • Review client contracts for any rate variations

Tips for Construction Teams

  • Upload rate schedules as soon as you receive them from clients
  • Use consistent activity descriptions across all rate schedules
  • Regular review and update of rates to reflect current market conditions
  • Train timesheet approvers on SOR matching for accurate billing
  • Keep historical rate schedules for reference and audit purposes
  • Document any manual rate adjustments with clear justification

Best Practices for SOR Management

Organization and Structure

  • Use logical naming conventions for rate schedules
  • Organize rates by trade and activity type
  • Maintain version control for rate schedule updates
  • Document rate sources and approval processes

Quality Control

  • Regular review of AI extraction results for accuracy
  • Cross-check rates against current market pricing
  • Verify rate matching produces reasonable billing amounts
  • Maintain consistency across similar rate schedules

Integration with Business Processes

  • Align SOR rates with cost estimation and project budgeting
  • Use SOR data for tender preparation and pricing
  • Include SOR training in onboarding for relevant staff
  • Regular review of SOR performance and accuracy

What's Next

After setting up Schedule of Rates, you may want to:

  • Configure Timesheets to use SOR matching for billing
  • Set up Cost Codes that align with your SOR structure
  • Create Invoices using SOR-based pricing
  • Generate Reports to analyze rate performance