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
- IBEW Local 1 Inside Wireman wage sheets (St. Louis Office)
- IBEW Local 309 Inside Labor Agreement (Collinsville, IL — Illinois Chapter NECA)
- IBEW Local 649 Inside Labor Agreement (Alton–Wood River, IL)
- IBEW Local 124 Inside Wireman wage sheet (Kansas City)
- AEC of St. Louis Wage and Fringe Benefit Rate schedules — St. Louis area, Kansas City area, and Southeast Missouri addendum (A‑Card and B‑Card)
- County jurisdictional maps published per local
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 1 | 3% | wage + holiday + vacation | none |
| IBEW Local 309 | 3.5% | wage × (1 + 7% imputed vacation) | MLMCC, AMF, NECA |
| IBEW Local 649 | 2.5% | wage + holiday + vacation | NLMCC, AMF, NECA |
| IBEW Local 124 | 6% | wage + combined V&H fringe | none |
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
- IBEW Local 1: Foreman +$5.18, General Foreman +$10.36 (current period; prior period +$4.93 / +$9.86). Applied as flat package additions.
- IBEW Local 309: Foreman +6%, General Foreman +10%, Project General Foreman +15% (applied to the full wage + fringe stack, then dues recomputed).
- IBEW Local 649: Foreman +$3.75 wage, General Foreman +$5.00 wage (dues recomputed on the larger wage).
- IBEW Local 124: Lead Foreman +$1.50, Foreman +$3.00, General Foreman +$4.50, Field General Foreman +$6.00. Fringes pegged to journeyman rate per the sheet header.
- L57 A-Card: Foreman +$1.50 wage, GF +$2.00 wage; re-flowed through the 4% dues so the effective bump is wage × 0.96.
- L57 B-Card: Foreman +$0.90 wage, GF +$1.30 wage; same dues re-flow.
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:
- Monday through Friday in
America/Chicago. - 07:00 to 15:30 local clock.
- Minus an unpaid lunch from 11:30 to 12:00 (8h paid per shift).
- Minus configured paid holidays.
- DST transitions are handled correctly — no missing or doubled hours.
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:
- IBEW 1 → 2025-06-22
- IBEW 309 → 2025-09-01
- IBEW 649 → 2025-12-29
- IBEW 124 → 2024-08-26
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:
- IBEW 1 → AEC L57 St. Louis & Eastern Missouri (with a Southeast Missouri toggle for the southern counties).
- IBEW 309 → AEC L57 Metro East Illinois schedule (first-page A/B scale).
- IBEW 649 → AEC L57 Alton–Wood River schedule (first-page A/B scale).
- IBEW 124 → AEC L57 Kansas City Metro schedule.
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
- Apprentice rates are intentionally omitted from the comparison.
- 309 Project GF, 124 Lead Foreman, and 124 Field GF are exposed when those locals are selected; the L57 side caps at General Foreman for tiers above its top row.
- Lead Foreman compares against L57 Foreman (closest equivalent).
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.