This period
hrs
Est. net
Su
Mo
Tu
We
Th
Fr
Sa
Regular
Overtime
Left early
Gave away
Picked up
📋
Your pay period just closed — save your records so you never lose your shift history.
Like this app? It's free — a tip keeps it going.
Support
Pay Rates
Regular rate
Current hourly rate
$
Previous rate
Used for historical periods before rate change
$
Rate change date
Shifts on/after this date use current rate
OT multiplier
Irregular overtime
×
DT multiplier
Mandatory double time
×
Bid Blocks
Current bid
Bid start date
First Sunday of bid month
Working day start times (blank = day off)
Sun
Mon
Tue
Wed
Thu
Fri
Sat
Previous bid
Bid start date
Affects dates before current bid start
Working day start times (blank = day off)
Sun
Mon
Tue
Wed
Thu
Fri
Sat
Next bid — auto-activates on first Sunday of bid month
Bid month
Enter the month this bid starts (e.g. May 2026)
Working day start times (blank = day off)
Sun
Mon
Tue
Wed
Thu
Fri
Sat
Pre-Tax Deductions (per period)
Medical
$
Dental
$
Vision
$
AD&D (pre-tax)
$
401(k) contribution
% of gross — scales with pay
%
After-Tax Deductions (per period)
401(k) loan payment
Fixed repayment — not a contribution
$
Stock purchase plan
$
Union dues
$
Life ins & other after-tax
Combined total of remaining after-tax items
$
Tax Rates
Filing status
Your federal tax filing status
OASDI (Social Security)
6.2% · fixed
Medicare
1.45% · fixed
State disability / SUI
SDI, SUI, or equivalent — varies by state
%
⚠ Federal and state withholding vary by filing status and W-4 elections. Enter the actual amounts from a recent pay stub — the app will scale them proportionally to your earnings each period.
Withholding Calibration (per period)
Federal withholding
From a recent stub
$
State withholding
From a recent stub
$
Gross that generated above amounts
Gross pay from same stub period
$
Everything you need to set up and use ShiftComp — bookmark this tab for reference.
📋 How this app works

ShiftComp estimates your paycheck before it hits your account. Here's the flow:

1
You set up your bid block in Settings — your scheduled workdays and start times for the ~5-week period.
2
The calendar fills in automatically. Any day in your bid block schedule shows as a regular shift (green). Days off are blank.
3
You log exceptions by tapping a day — overtime, double time, left early, gave a shift, or picked one up. Only log what's different from your normal schedule.
4
The Pay tab calculates everything — gross pay, every deduction, and estimated net for each pay period.
Pay periods are always the 1st–15th (paid the 20th) and 16th–end of month (paid the 5th of next month), regardless of your bid block.
📲 Installing on your phone

This app installs directly from your browser — no App Store, no Play Store. It works offline once installed.

Android (Chrome)
1
Open the app in Chrome.
2
Tap the three-dot menu (top right).
3
Tap "Add to Home screen" or "Install app".
4
Tap Install on the confirmation prompt. The app icon will appear on your home screen.
iPhone / iPad (Safari)
⚠️ On iOS, you must use Safari. Chrome and other browsers on iPhone cannot install web apps.
1
Open the app in Safari.
2
Tap the Share button (the box with an arrow pointing up, at the bottom of the screen).
3
Scroll down and tap "Add to Home Screen".
4
Tap Add in the top right. The app icon will appear on your home screen.
Once installed, the app opens full-screen like a native app and works without a cell signal or Wi-Fi. Your data is stored on your device, not in the cloud.
⚙️ First-time setup

When you first open the app, a setup wizard walks you through everything. Here's what each step is asking for and where to find the numbers on your pay stub.

Pay rate
Current hourly rate — your regular straight-time rate. On your stub, look for "REG RATE" or "BASE RATE" near the top of the earnings section.
Previous rate — only needed if you got a raise recently. Enter your old rate and the date the new rate took effect. The app uses the right rate for each shift automatically.
OT multiplier — almost always 1.5 (time-and-a-half). Check your contract if unsure.
DT multiplier — almost always 2.0 (double time). This applies to mandatory double-time shifts only.
Bid block
Bid start date — the first Sunday of your current bid month. Check your bid award paperwork or ask your supervisor.
Start times per day — enter your scheduled shift start time for each working day. Leave a day blank if it's your day off. Example: if you work Mon–Fri starting at 2:00 PM, enter 14:00 for Mon through Fri and leave Sat and Sun blank.
Deductions

These come straight off your pay stub. Look for the "Deductions" section. Enter each amount per pay period (not per month — Southwest pays twice a month).

Medical / Dental / Vision — pre-tax health deductions. Look for "MED," "DENT," "VIS" or similar in the pre-tax deductions section of your stub.
AD&D — accidental death & dismemberment insurance. Often listed as "ADD" or "AD&D" in pre-tax deductions. Enter 0 if you don't have it.
401(k) contribution % — the percentage of your gross pay going into your retirement account each period. Look for "401K" or "RETIREMENT" in the pre-tax section.
401(k) loan payment — if you have a 401(k) loan, this is the flat repayment amount each period. It's an after-tax deduction — separate from your contribution. Look for "401K LOAN" in after-tax deductions.
Stock purchase plan — if you participate in an employee stock plan, enter the flat amount deducted each period.
Union dues — your TWU dues per period. Look for "UNION DUES" or "TWU" in after-tax deductions.
Life ins & other — combine any remaining after-tax deductions here (supplemental life insurance, etc.).
Tax calibration
Federal and state income tax withholding depends on your W-4 elections and filing status — the app can't calculate it from scratch. Instead, give it one real pay stub as a reference and it will scale from there.
Federal withholding — look for "FED TAX," "FEDERAL INCOME TAX," or "FIT" on your stub. Enter the dollar amount withheld that period.
State withholding — look for your state's withholding label on your stub — common labels include CA TAX, NY TAX, STATE TAX, STATE INCOME TAX, or SIT depending on your state. Enter the dollar amount withheld.
Gross pay that period — the gross pay from the same stub you used above. The app uses this to build a ratio and scales your withholding proportionally each period.
You can skip tax calibration during setup and add it later in Settings. OASDI (6.2%) and Medicare (1.45%) are percentage-based and calculate automatically. Enter your state's disability/SUI rate manually — it varies by state.
📅 Using the calendar

The calendar shows every day of the month. Your bid block schedule fills in automatically — you only need to tap a day when something is different from normal.

Color guide
Green — Regular shift. Inferred from your bid block. 8 hours paid, standard rate. No action needed.
Amber — Overtime or double time. Tap the day and enter how many OT or DT hours you worked on top of your regular shift.
Coral — Left early. Tap the day and enter how many hours you left before your shift ended. That time is deducted from your pay.
Pink — Gave away a shift. Tap the day and log it as a gave shift. Your full 8 hours won't be paid for that day.
Blue — Picked up a shift. Tap the day (even on your day off) and enter how many hours you picked up. Paid at your regular rate on top of anything else that day.
Logging a shift exception
1
Tap any day on the calendar.
2
A detail sheet slides up showing what the app currently has for that day (scheduled hours, pay rate, estimated earnings).
3
Enter the hours for whatever applies — OT, DT, left early, gave, or picked up. You can combine them on the same day (e.g. you picked up a shift and stayed for OT).

Two ways to enter hours — use the toggle at the top of the entry sheet:

Decimal mode (default) — enter hours as a number with a decimal. Half an hour is 0.5, 45 minutes is 0.75, one hour and 12 minutes is 1.2, and so on. This is the fastest option for most entries.

H:MM mode — enter hours and minutes with a colon. The colon inserts automatically after you type the first two digits, so you don't need to type it yourself. Important: you must type leading zeros for single-digit hours. To enter 1 hour 18 minutes, type 0118 — the app formats it as 1:18. If you just type 118 without the leading zero, it reads as 11 hours and 8 minutes. When in doubt, always start with a zero if the hour is less than 10.

The toggle converts any values you've already entered between formats on the fly, so you can switch back and forth without losing what you typed.
4
Tap Save. The calendar updates immediately and pay totals recalculate.
5
To undo, tap the day again and tap Clear override. The day goes back to whatever your bid block says.
Shifts are 8.5 hours scheduled but 8.0 hours paid — the unpaid 30-minute break is handled automatically. You never need to enter this yourself.
🔄 If you lose your data
How to protect your records
1
Go to Settings and tap "Save your records" — this saves a backup file to your Downloads folder.
2
If you ever lose your data, tap "Restore records" in Settings — select your backup file and everything comes back instantly.
⚠️ This app stores all data on your device — there's no cloud backup. In certain situations, that data can be lost.
Why data gets wiped
You cleared your browser/app cache — this erases all locally stored app data.
You got a new phone — app data doesn't transfer automatically.
Your browser ran low on storage — some browsers evict stored data when device storage is full.
You opened the app in a different browser — Chrome and Safari each have their own storage. Data from one isn't visible to the other.
What gets lost
All your Settings — pay rate, bid block, deductions, tax calibration.
All shift exceptions you've logged — OT, DT, early outs, pickups, gave shifts.
Historical data is gone for good — the app doesn't store anything on a server, so past periods can't be recovered.
How to recover
1
Open the app — the setup wizard will launch automatically since your settings are gone.
2
Re-enter Settings first — pay rate, bid block, deductions, and tax calibration. Grab a recent pay stub to reference.
3
Re-log exceptions for the current pay period only — only the current period matters for your next paycheck. Anything older you can skip.
4
You're back up and running. Future periods will track normally from here.
💡 To protect against this: avoid clearing your browser cache if this app is installed. On iPhone, don't delete the Safari app data in Settings. If you get a new phone, do your Settings re-entry before your next paycheck period starts.
📲
Add to Home Screen
Works offline · no app store needed
⬆️
Update available
Tap to update
Found something wrong?
Goes straight to my inbox — no account, no tracking
What happened?
Tell me what happened
Off
hrs
Enter as shift time instead
hrs
Enter as shift time instead
hrs
Enter as shift time instead
hrs
Enter as shift time instead
hrs
Enter as shift time instead
⚡ You're offline — changes save locally and sync when you're back