Derive the Dates, Don't Store Them — Why Onboarding Plans Rot
Every onboarding checklist starts as a copy of the last one, with the last hire's dates still in it. The fix is not a bigger HR system: it is storing an offset instead of a date, so moving a start date moves the whole plan and "late" is computed rather than remembered.
The new person is in reception. The laptop was not ordered.
Nobody decided that would happen. The checklist existed. It was copied from the last hire, the dates were the last hire's dates, and the line that said order laptop — 7 days before had a date on it that was already in the past when the document was created.
Onboarding does not fail because people are careless. It fails because the plan is a document, and documents do not know what day it is.
The two things a plan has to survive
The start date moves. Notice periods change, visas take longer, someone pushes a week. If every date in the plan was typed in, all of them are now wrong and somebody has to retype them or quietly not.
Somebody has to own each line. A task owned by "HR" or "the manager" is a task nobody can be asked about. It is the second most common way a plan fails, after the dates.
Store the offset, not the date
Onboardora never stores a due date. A task carries an offset — seven days before, day one, plus thirty, plus ninety — and the date is computed from the starter's actual start date when the page renders.
Move the start date and the entire plan moves with it. Not "regenerates", not "prompts you to update" — there is nothing to update, because there was never a stored date to be wrong.
This is the same argument as an expiry that is computed rather than flagged, and it fails the same way when you get it wrong. A stored date is a second copy of a fact, and a second copy starts lying the moment the first one changes.
"Late" is derived too
There is no is_late column.
A task is late when it is not done and its derived date has passed. That is evaluated on the screen you are looking at, against today.
The alternative is a nightly job that writes a flag. When it does not run — and eventually it does not — the board shows nothing amber and everyone believes it. There is no error, no alert, no crash. Just a screen quietly saying everything is on track.
A computed value cannot be stale. It is the whole reason to prefer it over something faster.
Day −7 to day 90, in the words people use
The template is written once in the phrases people actually say: before they arrive, day one, first week, first month, ninety days. Every starter gets their own plan from it, and the plan is the screen you work from rather than a document you consult.
Ownership is a person, picked inline from the row. Reassigning is one interaction, because handing a task over is the single most common thing that happens to a plan after it is written.
Every tick and every reassign is a real form post. The script only makes it quicker. That matters because a manager doing this is often standing in a warehouse on a phone with one bar.
Equipment, because it comes back
Onboardora tracks what was issued and whether it was returned. Not an asset register — the laptop, the phone, the keys, the badge, through the one loop that matters.
That is deliberately the extent of it. There is no offboarding flow. Equipment return covers the common case, and pretending to do leavers properly would be a claim the product cannot back.
What it is not, plainly
It is not an HR system of record. No payroll, no salaries, no contracts of employment, no holiday tracking.
It does not verify right-to-work or run background checks. You can put "right-to-work check" on a checklist and tick it; the check happens wherever it happens today.
There is no employee self-service login. Tasks owned by the starter are chased by email and ticked by whoever owns the plan.
There is a REST API, signed webhooks and an MCP endpoint, and no prebuilt HRIS connector. Wiring is yours.
Those are on the product page rather than discovered in month two.
The alternative most teams buy
The usual answer is an HR suite. BambooHR publishes '$10 USD* per employee/month' on Core, with companies of 25 or fewer on a flat rate starting at '$250 USD/mo' — read from their own pricing page on 22 August 2026. Dedicated onboarding platforms mostly do not publish at all; Enboarder says so directly: 'We don't have one-size-fits-all pricing—your quote is tailored to your company and goals.'
Both are real products. An HR system of record is a thing you eventually need, and Onboardora is not it.
But if what is broken is the first ninety days, you are buying a permanent per-employee meter to fix a checklist. Onboardora is $69 once — for the timeline, the owners, and dates that cannot rot.
The test
Take your current onboarding document. Change the start date by a week.
Count how many things you now have to retype, and how many of them somebody will forget.
That number is the argument.