Skip to main content

LASSO Estimation Engine — What Your Rules Can Do

The LASSO Estimation Engine is a powerful tool for quoting and invoicing labor with complex rules. Here are some common real-world scenarios it can handle.

Every quote you build and every invoice you send in LASSO is driven by a set of rules you configure once and reuse forever. These rules answer questions like:

  • When do overtime rates kick in?

  • What's the shortest shift you can bill for?

  • How do meal breaks (or missed meal breaks) affect the bill?

  • How does a daily rate convert into an hourly rate for OT purposes?

  • Are Saturdays always time-and-a-half? Is July 4th double?

You set the rules up once. LASSO applies them automatically to every quote and invoice from that point forward.

Note. The Estimation Engine covers billing calculations and pay estimates only. Actual crew timekeeping (clock-in / clock-out records, timesheets) lives elsewhere in LASSO and follows its own separate rule set.


Before we get started:

The LASSO Estimation Engine is currently accessible only to LASSO Staff. LASSO will set up your rules and configure them for you based on your needs.

Estimation Engine rules REPLACE the general Labor Cost Calculations and Labor Billing Calculations in your Company Settings. Both the Company Settings for Labor Cost/Billing Calculations cannot be used in conjunction with the Estimation Engine.

Once Estimation Engine rules have been put in place for you, they will not be visible in your company settings.

Estimation Engine rules do NOT impact timekeeping or payroll. Timekeeping and pay rules are separate.


How rules work

There are three things to know about every rule:

  1. What kind of rule is it? (Overtime? Shift minimum? Meal penalty? See the categories below.)

  2. Who or what does it apply to? Every rule can be scoped so it only fires in specific situations — for a certain client, event type, position, state, crew classification, and so on. Leave the scope wide open and the rule applies to everything.

  3. When does it apply? Rules can have optional start and end dates.

Rules stack. If a shift qualifies for a Saturday multiplier and an overnight premium and a shift minimum, all three apply.

Categories of rules

1. Overtime & premium time

The rules that push regular hourly rates up to time-and-a-half, double-time, or any other multiplier.

  • Daily overtime — "Time-and-a-half after 8 hours in a day"

  • Daily double-time — "Double after 12 hours in a day"

  • Weekly overtime — "Time-and-a-half after 40 hours in a week"

  • Weekday overtime — "Saturdays and Sundays are always time-and-a-half"

  • Nth-day overtime — "Every 6th consecutive day starts in OT; every 7th consecutive day starts in DT" (common in touring)

  • Seventh consecutive day — a simple version: "Any 7th day in a row is OT"

  • Overtime date — "July 4th is double-time" (one rule per holiday)

  • Premium hours (time-of-day) — "Any hours worked between 10pm and 6am get a 1.5× multiplier"

2. Shift minimums

Ensure a minimum number of billable hours regardless of actual time worked.

  • Simple minimums — "Never bill less than 4 hours"

  • First-shift minimums — "First call each day has an 8-hour minimum, subsequent calls only 4"

  • Tiered minimums — a stepped structure that changes with the time of the call

3. Break & meal-penalty rules

Enforce meal periods and paid rest breaks, and charge penalties when they're not provided.

  • Meal breaks — typically 30- or 60-minute unpaid breaks

  • Rest breaks — typically short paid breaks

  • Meal penalties — extra charges when a required meal isn't given (usually 1×, 1.5×, or 2× hourly rate)

  • Walk-away or no-lunch penalties — variants of the above

Multiple break rules can coexist — a single account might have a meal rule, a walk-away rule, and a rest-break rule active at the same time.

4. Rate conversion & structure

Control how daily and weekly rates convert into hourly rates for overtime and pro-ration calculations.

  • Rate divisor — "A daily rate is worth 10 hours for the purpose of deriving an hourly base"

  • Rate divisor logic — how the divisor interacts with overtime once it triggers

  • Week divisor — "A weekly rate is worth 40 hours"

  • Week divisor logic — how partial weeks are handled

  • Half day — "A shift under 4 hours is billed as half the daily rate"

5. Time rounding

Round the shift start and end times used in the calculation so quotes and invoices come out to clean intervals.

  • Options: no rounding, 1 min, 5 min, 6 min (0.1 hr), 10 min, 15 min, 30 min, or nearest whole hour

  • You can round shift start and end differently (e.g., always round the start up but leave the end alone)

6. Retainer & salary-style billing

Handle situations where you charge a fraction of a derived daily rate — for holds, on-call crew, or retainer arrangements.

  • Retainer rate — "Charge 50% of the derived daily rate as a hold fee" (requires a week divisor rule in the same scope so LASSO knows what the daily rate is)

7. Quick-turn premiums

Charge extra when a crew member's next shift starts too soon after their last one ended.

  • Quick turn — "If less than 8 hours have passed between the end of one shift and the start of the next, apply a premium"

8. Week-boundary calculation

Control when a "pay week" starts and ends for weekly overtime purposes.

  • Account default — use the account-wide setting

  • Event-driven — the week begins the day the event begins

  • Position-first-shift — the week begins when a crew member first works the event


Scoping — apply rules to specific situations

Every rule can be scoped so it applies only when specific conditions are met. Combine as many of these as you need:

Filter

Use it to…

Clients

Apply a rule only to work for certain clients (or all clients except a few)

Countries / US states

Apply regional labor rules — e.g., California meal-penalty rules only in CA

Event divisions / event types

Apply differently to concerts vs. corporate events vs. sporting events

Markets

Apply based on the city or region the event is in

Positions

Apply only to certain roles — e.g., Riggers get an 8-hour minimum but AV Techs get 6

Venues

Apply only when working at specific venues

Rate cards

Apply only when a specific rate card is used

Subcontracted labor vendors

Apply to work from a particular vendor

Crew classification

Apply only to Contractors, Full-Time, Part-Time, etc.

Pay rate type / billed rate type

Apply based on how the shift is priced (hourly, daily, flat, etc.)

Pay range (min / max)

Apply only when the crew's pay rate falls in a specific range

Exclusion mode. Any filter can be flipped to "exclude" — e.g., "apply to all crew EXCEPT contractors" or "apply to all clients EXCEPT Client X."

Blank = all. Leaving a filter empty means the rule applies to every value in that category.

Effective dates

Every rule can have optional start and end dates, so you can:

  • Schedule a rate increase to take effect on a specific date

  • Retire an old rule when a new one takes over

  • Set up seasonal or contract-length rules

Leave the dates blank and the rule applies forever until you deactivate it.


Common real-world scenarios

Here are recipes for common situations — the rules you'd combine to solve each one.

"Union stagehand OT: 1.5× after 8, DT after 12, Sundays always DT"

  • Daily overtime after 8 hrs → 1.5×

  • Daily double-time after 12 hrs → 2×

  • Weekday overtime for Sunday → all hours at 2×

"Touring pattern: 6th day starts in OT, 7th day is all DT"

  • Nth-day overtime → every 6th scheduled day at 1.5× (with DT after 8 hrs)

  • Nth-day overtime → every 7th scheduled day at 2×

"Freelancers get a 10-hour minimum, employees don't"

  • Shift minimum → 10 hours, scoped to crew classification: contractor

"Overnight work is time-and-a-half"

  • Premium hours → 10pm–6am at 1.5×

"30-minute meal required within 5 hours; penalty if missed"

  • Break → meal type, 30 minutes, 1.5× penalty multiplier

"Federal holidays are double-time"

  • Overtime date → July 4th at 2×

  • Overtime date → December 25th at 2×

  • (One rule per holiday date)

"Charge a premium if crew has less than 8 hours between shifts"

  • Quick turn → 8 hours

"Retainer: 50% of daily rate for on-call crew"

  • Retainer rate → 50%

  • Paired with a Week divisor rule (required so LASSO can derive a daily rate)

"California-specific meal rules only apply in CA"

  • Break → meal type, 30 min, 1× penalty, scoped to US states: CA

"Different OT thresholds for different clients"

  • Multiple daily-overtime rules, each scoped to a different client


Things worth knowing

  • Rules stack. If a shift qualifies for multiple rules, all of them apply.

  • Order and priority are handled inside the engine — you don't need to configure them.

  • Fractional hours are allowed for things like half-day thresholds (e.g., 6.5 hrs).

  • Multiple break rules coexisting is normal — meal + rest + walk-away can all be active at once.


What we can't (yet) do

A short list of common asks that aren't supported today. Some are in active discussion for future enhancements:

  • Cap billed hours at a fixed number (e.g., "Never bill more than 10 hours per shift regardless of actual"). Shift-minimum rules only push billed hours up; there's no ceiling rule today.

  • Time-based overtime on a specific date (e.g., "July 4th is OT only between 6am and midnight"). Overtime-date rules apply to the whole day.

  • Rounding differently for OT vs regular hours. Rounding rules apply uniformly.

If any of these are blocking you, let your LASSO contact know — feature requests feed the roadmap.


Getting help

  • New account? Your LASSO onboarding contact can translate union contracts, client agreements, or existing spreadsheets into estimation engine rules for you. Many of the setups can be auto-generated from a source document.

  • Existing account, need adjustments? Reach out to Support.

  • Wondering if your rules are set up correctly? Support can pull an audit and walk you through it.

  • Have an idea for a rule type we don't cover? Feature requests go through the standard product-feedback channel.

Did this answer your question?