← Back to the clock

How the numbers are calculated

Every figure on lossclock.org comes from publicly-published wage sheets and the dues rules each union prints on those sheets. This page walks through the math so you can verify or dispute any number on the site.

Source data

The clock only accrues during scheduled working hours (Mon–Fri 07:00–15:30 CT, minus a 30-minute unpaid lunch) and pauses on configured paid holidays.

IBEW effective hourly

For each IBEW local we take the published wage + holiday + vacation + other fringe components from the sheet, subtract any disregarded line items, then subtract dues:

gross_total           = wage + holiday + vacation + otherFringe
net_after_disregards  = gross_total − disregardedItems
dues_base             = (per local rule, see below)
dues                  = duesPct × dues_base
effective_per_hour    = net_after_disregards − dues
Local Dues % Dues base Disregards
IBEW Local 13%wage + holiday + vacationnone
IBEW Local 3093.5%wage × (1 + 7% imputed vacation)MLMCC, AMF, NECA
IBEW Local 6492.5%wage + holiday + vacationNLMCC, AMF, NECA
IBEW Local 1246%wage + combined V&H fringenone

309 and 649 don't print separate holiday or vacation fringe lines on their sheets, so the dues base falls back to wage. For 309 we add the 7% post-tax vacation deduction printed at the bottom of the sheet so the dues base is wage × 1.07.

Carpenters L57 (AEC) effective hourly

The AEC sheet's Total Package column is reduced by four amounts that don't end up in the worker's pocket:

effective = total_package
            − H&W & Annuity Dues   (4% × wage)
            − Market Recovery
            − Vacation             (in-wage deduction line)
            − AEC contribution     ($0.10 to the contractor association)

The first three are printed in the "Deducted AFTER taxes" column. The $0.10 AEC is in the Employer Contribution column but lives with the contractor association, not the worker, so it's deducted here too.

Foreman / GF differentials

L57 only publishes Journeyman / Foreman / GF. If you pick an IBEW tier above L57's top (e.g. 309 Project GF or 124 Field GF), the L57 side caps at General Foreman and the card shows a "L57 capped at General Foreman" note.

Working-hours accrual

The clock advances only during scheduled work time:

Outside the working window, the live counters pause and the status pill switches to "Off-hours (not accruing)". The math still works for range queries that span a weekend or holiday — those days simply contribute 0 working seconds.

Date ranges and rate periods

Each local publishes rate sheets with effective dates. When you pick a "Since" date that spans more than one rate sheet, the clock walks the union of all rate-period boundaries on both sides (IBEW and L57) and prices each sub-segment at the rates that were actually in effect at that time.

The earliest supported date for each comparison is the later of (a) the IBEW local's earliest known period and (b) the AEC L57's earliest known period:

As older rate sheets are added, the floor moves backward automatically. Picking a date before the floor surfaces a friendly out-of-range message instead of trying to fabricate numbers.

Region mapping

Each IBEW button is mapped to the AEC L57 region whose jurisdiction overlaps that local's counties:

Most county-level overlaps point to the AEC's first-page schedule, which is why those buttons all consult the same A/B rates. The label changes to reflect the actual coverage area for each local.

Apprentice and exotic tiers

Disputing a number

If you believe a rate is wrong, the fix path is short: name the local, the effective date on the sheet, and the specific line item you believe is misrepresented. We'll re-derive the effective hourly using this exact methodology and either correct the data or explain why the published figure stands.

Compiled in good faith from publicly-distributed wage sheets. No proprietary or members-only data is used.