The tool, in your browser
The payment schedule worksheet
Walk one job down its stages before you sign it. Set the job price, then type what you spend and what you collect at each stage — signing, material drop, tear-off, dry-in, final. This keeps the running tally of the job’s cash and flags every stage where your own money is paying for their roof.
Free, and it asks for nothing. No email, no account, no sign-up. What you type stays in this browser on this device.
Read this first
This page holds one job at a time. Planning the next job over the top of it replaces the last one — there is no file to save a copy of per job. So use it the way it’s meant to be used: plan the job you’re about to sign, get those dollars and triggers into the contract, and plan the next one when it comes. If you want to keep a plan for every job, use the-payment-schedule-worksheet.xlsx below and save a copy per job.
The greyed-in boxes are a lesson, not a template. They’re the first stage of the spreadsheet’s own $40,000 job — contract signed, nothing out, $6,000 in. In the file, that thin deposit is what leaves you funding the $13,000 material drop the following week: the job runs $7,000 in the hole and the stage flags red. It recovers by the final — but that red stretch is exactly what this play warns about. Don’t copy the split. Your real one should keep every stage out of the red.
The worksheet fills in right here in your browser. If this line stays put, JavaScript is off — the spreadsheet below does the same job.
How it gets used
- Set the job price once, up top — what the customer pays you for the whole job.
- List the job’s stages in order — contract signed, material drop, tear-off done, dry-in, final walk. Use your real stages; the example ones are just a starting point. The order is the arithmetic here: each stage’s running cash counts every stage above it, so if you remember one late, add it and tap Move up until it sits where it actually happens.
- For each stage, fill the two boxes: Money OUT (materials, labor, dumpster — what leaves your account that stretch) and Payment due IN (what you’ll collect at that trigger, in dollars).
- Read the running position on each stage. Positive and the job’s money is carrying itself. Red — you’re funding the job — and you’re out of pocket at that stage. Fix it: take a bigger deposit, or bill a milestone earlier, so money in stays a step ahead of money out.
- Check the payments check in the box up top. It has to say your payments add to the job price. If it doesn’t, your milestones don’t sum to what the customer owes — fix the numbers before the contract goes out.
- Then write it into the contract in dollars and triggers, not “progress payments as agreed.” A payment term you can’t point to on paper is a payment term you’ll argue about.
Before you set your split
Three things this page doesn’t decide for you
- Deposit caps are not ours to state. How big a deposit you’re allowed to take, and whether you must hold it in a separate account, is set by your state — this page doesn’t decide that and doesn’t assume one. Check your state’s rule, then set your split within it so you cover your spend before you’re ever out of pocket.
- Commercial job with retainage? The customer parks a slice out of each payment until final signoff. Model it with the numbers, not a rule: enter each milestone as what actually lands in your account, then add a “Retainage released” stage for the parked money. The amount and the release date come from your contract — don’t guess them.
- Not-yet-due money stays off your collections list. A deposit you haven’t invoiced, an un-hit milestone, a held-back retainage slice — none of that is chaseable today, so it belongs here in the job plan and in your contract, not on the money-owed list. Nothing you type on this page goes there; the two don’t share anything, on purpose.
One more thing: this page is how we run a shop — it’s not legal advice. Rules change by state and by contract, so before you act on the legal-sounding parts, run them past your own attorney or accountant. It’s your business, and what you do with any of this is your call and your responsibility.
Want it in a spreadsheet?
The same worksheet as a spreadsheet
the-payment-schedule-worksheet.xlsx is this worksheet as a spreadsheet — same columns, same formulas — for the computer at the shop. Four differences in the page’s favour: no twelve-stage ceiling (the file’s stage rows are 5 to 16, and a stage typed on or under its TOTALS row counts in nothing); no yellow example rows to delete before you start; when an amount you typed can’t be read it says so instead of leaving it quietly out of a total; and it won’t hand you a green OK on the payments check until you’ve set a job price — on a blank sheet, or one priced at zero, the file’s check compares nothing to nothing and says OK. One the page is stricter about: a money box only takes a plain positive amount, so a credit typed as -500 is called out rather than counted, where the file would subtract it. Two the other way, and they matter: the file is one file per job, so Oak St and Maple St can sit side by side and last year’s plan is still there — and it opens on any computer you send it to. The sheets ask for your email once; this page never does.
The play behind it — M6-07 Set When You Get Paid So You Never Fund the Job Yourself — is how you set the schedule in the first place, and the sheet notes spell out every column and formula.