29 August 2026
A project kickoff only does its job if three things get settled before anyone leaves the room: who decides when people disagree, what counts as finished, and which constraints are non-negotiable. Skip any of the three and the project doesn't fail loudly — it drifts for six weeks and then someone asks why the API contract was never confirmed.
The first failure is the kickoff with no decisions in it: a walk through the timeline, a round of introductions, a shared doc link, and everyone leaves having agreed to nothing they didn't already assume. It feels productive because people talked for an hour. Three weeks later two teams discover they built against different versions of the same requirement, because the meeting never forced anyone to say the requirement out loud where it could be argued with.
The second failure looks like progress but isn't: the plan is presented rather than agreed. Someone spent the weekend building a Gantt chart, walks through it slide by slide, and the room nods because objecting in front of six people to a plan someone clearly worked hard on feels rude. That plan is now load-bearing, and nobody actually signed off on the assumptions underneath it — the dependency on a vendor API that hasn't been confirmed, the two-week buffer that assumes no one takes vacation.
Every project has moments where two reasonable people disagree and someone has to break the tie without a two-week debate. If that person isn't named at kickoff, the tie goes to whoever argues longest, which is a worse mechanism than almost any alternative.
This doesn't have to be one person for the whole project. Scope changes might route to a product lead, technical trade-offs to an engineering lead, budget to a finance owner. What matters is that each of those has a name attached in the notes, not a title. "Product will decide" is not a decision-maker; "Sana decides scope changes, escalates to David if it affects the March date" is.
Teams that skip this step estimate against a plan and discover mid-project that "done" quietly grew to include things nobody scoped — a migration path for existing users, a fallback for the case the API rate-limits, documentation someone assumed was in scope because it always is.
Definition of done should be specific enough that two people looking at the finished thing would agree, without discussion, whether it's finished. "Users can export their data" is not that. "Users can export a CSV of the last 12 months from the settings page, and it matches the numbers in the dashboard" is.
Every project has constraints that everyone in the room half-knows and nobody has stated as a constraint: the deadline is fixed because it's tied to a board meeting, the budget assumes no contractor time, the integration depends on a partner team that's mid-reorg and slower than usual right now. These don't surface in a status update. They surface when someone asks the question directly and waits for an answer instead of moving on.
A useful habit is to ask, one at a time: what would make this project late, what would make it over budget, and what's true right now that would surprise someone joining the team next month. Each answer is a constraint the plan needs to account for, and each one that goes unsaid at kickoff becomes a surprise at week six instead.
A kickoff that worked produces a short, specific artifact — not a deck, a page. It should hold up to being read by someone who wasn't in the room.
Kickoffs run long because half the meeting is spent restating context that half the room already has and the other half needed but didn't get, because nobody wrote it down beforehand. Running the meeting in AVAY doesn't fix the agenda problem, but it removes the excuse for the drift afterward — the AI keeps a running note of who was assigned what as people say it, so "Elin owns the migration plan" doesn't rely on someone remembering to write minutes after the fact. If someone joins the follow-up meeting late, they can ask what was decided and get the answer read back rather than waiting for a recap that may or may not arrive.
| No decisions made | Plan presented, not agreed | Kickoff that works | |
|---|---|---|---|
| What happens in the room | Introductions, timeline walkthrough, no disagreement surfaced | One person presents a finished plan; room nods to be polite | Named owner states an assumption; room is asked to object or agree |
| What leaves the room | A shared doc nobody re-reads | A plan nobody actually committed to | A short list of decisions, owners, and constraints |
| What breaks later | Two teams build against different assumptions | A buried assumption turns out to be wrong at week six | Disagreements get escalated to the named owner instead of festering |
Sixty to ninety minutes is usually enough if the agenda forces decisions rather than status updates. If it's running past ninety minutes, the problem is usually that the room is debating scope live instead of someone having done the groundwork to bring one or two options in.
The named decision-maker for scope, whoever owns the budget or timeline constraint, and one person from each team that has to build something. Stakeholders who only need the outcome can get a recap afterward rather than sitting through the working session.
The agenda is the order you work through in the meeting — problem, decision-maker, definition of done, constraints, next actions. The checklist is what you should be able to point to afterward and confirm exists: a named owner, a specific done state, a written list of constraints, and a dated next checkpoint.
Then the kickoff hasn't actually happened yet, even if everyone else met. Reschedule the parts that require a decision, or explicitly defer them with a date by which the absent decision-maker will weigh in — don't let the room decide something on their behalf and call it settled.
A kickoff is not the meeting where you describe the plan — it's the meeting where you name who decides, agree what finished means, and say the constraints out loud, so the plan that leaves the room is one people actually committed to.
AVAY is a video meeting platform that transcribes the call itself — no bot joins, because there is nothing to join. Start one at avay.ai, read how each part works in the documentation, or see what it costs.