1. Paste the queue
2. The plan
Work in this order
| # | File | Hours | Starts day | Finishes day | Due day | Hours to spare | Net |
|---|
Files turned down
| File | Why | Offered fee | Worth accepting at |
|---|
Against simple rules
| Rule | Files | Total net |
|---|
Prefer a CLI?
Same logic, zero dependencies, one command — reads a file or stdin:
node cli.mjs plan assignments.csv --hours-per-day 6 --booked 4 --booked-due 2 --json cat assignments.csv | node cli.mjs plan - --hours-per-day 7
Get cli.mjs and engine.mjs — Node 18+, nothing to install, no network call. More: How to choose which appraisal assignments to accept: capacity and due-date math.
What's recognised
| Input | Handling |
|---|
The plan is exact for the numbers you type (a search over every set of files, up to 16). One person and one stream of hours; work is treated as divisible across days, so a file that must be done in one sitting, an inspection that needs a specific day, a second appraiser, rush add-ons that change after acceptance, repeat-client value and the cost of declining a client are not modelled. Business days are counted by you; weekends and holidays are not.
Common questions
Does it upload my assignment list?
No. The browser page works on the text you paste, in your own browser, and never sends it anywhere. The CLI reads a local file or stdin and makes no network call.
How is the best set found?
Work is divisible across days, so a set of assignments can be delivered on time exactly when, for every due day, the hours of the files due by then fit in the hours you have by then. The tool searches the assignments in due-date order, abandons a partial set the moment it misses a deadline, and keeps the highest total net. That is the exact best set for the numbers you give, and the tests compare it with trying every subset.
Why would it turn down a file I would normally take?
Because hours before a deadline are the scarce thing. A good-paying file can take the hours two other files needed to hit the same due date. The tool says what the file would need to pay to earn its place, which is the number to counter-offer.
Where do the hours and costs come from?
From your own records: the hours a typical file of that type takes you from drive to final report, and the out-of-pocket cost of each file. They are your estimates, so treat the plan as a decision aid, not a forecast.
Who is it for?
Independent real estate appraisers, home and property inspectors, and other solo professionals paid a fee per file who choose which requests to accept against fixed due dates.