Keep two columns, received and expected, and move a shift from one to the other only when the deposit lands. The CFPB's income and benefits tracker runs weekly columns for each source and asks for net income, which it defines as what you actually bring home in your paycheck: total pay (gross income) minus taxes, insurance, and other deductions that are taken out. The condition that keeps a variable roster honest is that weeks do not average: a 41-hour week and a 27-hour week are not two 34-hour weeks, and they are not paid as if they were.
Two columns, one rule for moving between them
Received holds money in the account. Expected holds scheduled shifts, offered shifts and anything promised verbally. A shift moves left only on the deposit, not on the roster posting, not on the confirmation message, and not on the day worked. That one rule is what stops a canceled Saturday from having already been spent.
Write the expected column in ranges rather than single figures where the hours are genuinely unknown, and record the low end as the planning number. An offered shift that has not been confirmed belongs in expected at zero.
Label each expected line with its pay date rather than its work date. That tracker's weekly columns sit under the month they are paid in, which is where a shift worked on the 29th and paid on the 11th belongs. The same page's rows separate Job 1 from Job 2, so two employers never merge into one uncertain total. Budget from the lowest received week of the last four, and treat everything above it as a buffer rather than income. Keep tips, differentials and mileage reimbursements on their own lines instead of folding them into the hourly total, because each one appears and disappears for a different reason and a single merged figure hides which one moved.
Your employer keeps the numbers you are checking
Your record is not the only one. The DOL's recordkeeping fact sheet requires employers to keep, for each nonexempt worker, hours worked each day, total hours worked each workweek, the basis on which wages are paid, the regular hourly pay rate, total daily or weekly straight-time earnings, total overtime earnings for the workweek, all additions and deductions, total wages paid each pay period, and the date of payment with the pay period it covers. That is the list to ask against when a stub and your log disagree.
There is a clock on it. The same fact sheet requires payroll records to be preserved at least three years and the wage-computation records behind them, including time cards and work and time schedules, for two years, and it notes that employers may use any timekeeping method as long as it is complete and accurate. A question about a week from eight months ago is still answerable; one about a week from four years ago may not be.
Example: four weeks at 27 to 41 hours
At $18.25 an hour, the four weeks ran 34, 41, 27 and 38 hours. Week 1: 34 x $18.25 = $620.50. Week 2: 40 x $18.25 = $730.00 plus one overtime hour at $27.38 = $757.38. Week 3: 27 x $18.25 = $492.75. Week 4: 38 x $18.25 = $693.50. The four-week total is $2,564.13 and the average is $641.03, but the lowest week is $492.75, which is $148.28 under the average. Budget the $492.75.
Week 2's forty-first hour is paid at time and a half even though week 3 fell to 27, because the DOL's overtime fact sheet defines the workweek as a fixed and regularly recurring period of 168 hours and states that averaging of hours over two or more weeks is not permitted. An employer who nets a busy week against a quiet one is doing something the fact sheet rules out, and the dates of the two weeks are the whole of the question.
Close the month with one entry in the record: "Received four weeks: $620.50, $757.38, $492.75, $693.50. Lowest week $492.75; plan on that. Expected: two shifts on the 3rd and the 5th, not yet paid." Then line the received column up with the due dates on one calendar, bring the net change and its start date to the shared-expenses conversation, and hold the unconfirmed shifts in the provisional layer of next week's plan.