Part 3 · Operate
The onboarding promise
What happens when, from a new founder’s site to their first report: a target until it is measured, then the measured time.
01What it is
Four steps, each with a time: your GTM plan, first drafts in your voice after you approve a channel, your first channel running, and your first weekly report. Each shows as a target until enough onboardings have been timed, then as the measured median, whether that is faster or slower than promised. It appears on the pricing page, the home page, the free plan page and the welcome email, and a new founder sees their own times on Today.
02Why it exists
A promise nobody measures turns into marketing that ages badly. These times come from rows the product already writes: when a free plan was asked for and when it was ready, when a channel was approved, when its first draft was written, when it started, when the first report was sent.
So the strip never shows a better number than the one measured. It is a timeline of four short figures, each with what it is timed from. Under the sample floor the figure is the target and one footnote says so; past it, the figure is the measured median, marked Measured, even when it is slower than the promise, and the admin is told. The full sentence (Target, or Typically and the median) is read to a screen reader and written into the welcome email. If the slowest quarter runs well past the promise for days in a row, the admin is told that too.
03How to use it
- 01The promise waits behind the onboarding_promise flag, set for everyone because it shows on public pages.
- 02Admin, Onboarding lists each step’s promise, what the site shows, the measured median, the slowest quarter and how many onboardings it rests on, and sets the promises in seconds.
- 03The same screen holds the switch for the phone number asked at signup, optional or required (see Your phone number).
- 04For their first month a founder’s Today shows Your first days: each step with the time it took them, or not yet.
04What good looks like
- You give it
- Twenty or more free plans in the last 30 days, with a median of 74 seconds from asking to ready against a 90 second promise.
- You get
- The plan step reads 74 sec, marked Measured; a screen reader hears Typically 74 seconds.
- Why
- At PROMISE_MIN_SAMPLES samples the measured median replaces the target.
Derived from the rules in the code
05What weak looks like, and what it costs
- You give it
- The same step measured at a 140 second median against the 90 second promise.
- You get
- The plan step reads 2 min, marked Measured, never the promise, and an onboarding_slow alert reaches the admin.
- Why
- displayFor shows the measured median whenever there are enough samples, faster or slower, and the nightly run alerts when it is slower.
Derived from the rules in the code