A 90-Day Growth Baseline: Freeze the Numbers Before You Change Anything

By Simeon Matheka, Founder & Creative Director · Published 2026-09-28 · Updated 2026-09-28 · 15 min read

Week 0, before the sprint. Write the last 30 days of qualified conversations, proposals, yes or no if you know, reply time, and open slots. If you do not know, write UNKNOWN. Do not backfill.

Cool gray steel clipboard with five empty rows and a rubber stamp reading Freeze, no figures written

You are about to change the offer, the site, or a channel for 90 days. Write the last 30 days down first. Qualified conversations. Proposals sent. Yes or no, if you actually know. Reply time. Open delivery slots. If you do not know a line, write UNKNOWN. Do not backfill. A baseline you estimated is worse than a short one, because you will spend the quarter improving a number that was never real.

This is week 0. The calendar after the freeze is a 90-day growth sprint for one offer. The map around both is the complete guide to growing a business in the digital age. How you count a qualified conversation lives on the service business growth scorecard. Do not rewrite the ideal customer profile (ICP) in this sitting. Freeze the numbers. Then the sprint may change the sentence.

Week 0 is a freeze, not a plan

Block one sitting. Date the top of the page. The window is the last 30 days, ending yesterday. Not a typical month. Not what it feels like lately. If the inbox does not cover those days, the line is UNKNOWN. You do not reconstruct a month from the three threads you remember.

You are not allowed to fix the homepage in this sitting. You are not allowed to add a channel. You are not allowed to rename the offer. Those are sprint moves. If you change them while you count, you will not know which era a conversation belonged to. The freeze is boring on purpose. Boring is what makes day 90 readable.

Five lines, and the source each one requires

Write each line as a count or as UNKNOWN. Add the source in a few words: inbox, proposal folder, sheet, or UNKNOWN. A number without a source is a memory. Treat it as UNKNOWN.

  • Qualified conversations: rows from the last 30 days that match the who-line and can buy. A newsletter signup is not one. Just researching is not one. If the inbox is not tagged, do not re-read it from memory and call that a count. UNKNOWN.
  • Proposals sent: a dated PDF or a scoped email they can accept. A call with no artifact is not a proposal. If the folder has no dates, UNKNOWN. Do not count files you meant to send.
  • Yes or no, only if you know: a yes is a written acceptance. A no is a written no, or a close-the-loop date that passed. Anything still open is neither. If you cannot sort the folder, UNKNOWN. Do not split the difference. Do not write a rate.
  • Reply time: hours from the inbound timestamp to the first human send. An automatic we got it does not count. If you have timestamps for three of ten rows, those three are a note. They are not the month. The month is UNKNOWN. Do not average the rows you kept.
  • Open delivery slots: a slot is a conversation you can answer inside the reply window you already promised, starting tomorrow, without moving work you already owe. If the window is not written down, the slot count is UNKNOWN. A feeling that you could squeeze one more is not a slot.

Close rate is won divided by proposals sent, and only when both numbers are known. If yes or no is UNKNOWN, you do not have a rate. Leave it blank. A percentage you typed to make the page look finished will become the number the sprint review argues with.

Why a guessed baseline is worse than a short one

The sprint review compares the end of the quarter to the start. If the start was a guess, every later decision is a story. You will feel the quarter worked, or failed, based on a figure nobody can open. That is worse than five lines and two UNKNOWNs, because the UNKNOWNs stay honest.

Short baselineEstimated baseline
Missing numberUNKNOWN, datedA figure you will defend in the review
Partial timestampsNoted, not averaged into the monthTreated as the median
Later comparisonAgainst a source you can reopenAgainst a memory of a memory
Next MondayA counting fixA new channel, because the sheet looks full
  • High guess: you write more conversations than the inbox holds. A real month that is smaller looks like a collapse, so you add a channel to recover a number that never existed.
  • Low guess: you write fewer than you had. A flat month looks like a win. You keep a broken reply window because the chart improved.
  • Backfill: you remember the loud yes and forget the quiet nos. The customer relationship management (CRM) row, or the sheet, is the source. A group chat is not. If the mail is gone, UNKNOWN.

Do not backfill. The instruction when you do not know is to write UNKNOWN, not to pick a reasonable number. Reasonable is how the estimate sneaks in. A spreadsheet and a CRM tool are both fine stores. Memory is not a store.

Use the blanks. Do not build a second worksheet here

The printable pass is the 90-day growth audit. The weekly home after week 0 is the core metrics sheet. Fill those. This page does not paste their grids. Copy the definitions that already sit on the sheet so next quarter does not renegotiate what a proposal is. Then apply the freeze rule on top: last 30 days, and UNKNOWN where the source is missing.

  • Audit: the structured pass you can print. Use it for the freeze, not as a second essay. Where this page says UNKNOWN, write UNKNOWN in the cell. Do not type a close rate you calculated from memory into a blank that looks like it wants a percentage.
  • Core metrics sheet: one row per week, after the freeze. Week 0 is not a redesign of that sheet. Monday, fill last week from the intake rows. If a number takes a long hunt, the store is wrong. Fix the store. Do not invent the cell.
  • Scorecard: the method for which conversations count. If the scorecard and the freeze disagree, the freeze does not win by vibe. Re-read the definition and either retag the row or mark UNKNOWN.

If the constraint is already capacity, the freeze will show it: reply time UNKNOWN or already past the window, open slots at zero or UNKNOWN. Do not buy a channel to decorate that. The decision tree is how to choose a growth bottleneck before a channel. Search and outreach that share one offer come after, in website, search, and outreach for one offer, and only once the sprint has started on a real freeze.

What you may do the morning after

If the five lines exist, dated, each with a source or UNKNOWN, week 0 is done. Then you may open the sprint. The sprint locks one offer, makes the site able to carry it, picks two channels, writes the procedures, and reviews. That work is the other post. Do not restart it here.

If two or more lines are UNKNOWN, the first sprint week is the counting fix, not a homepage rewrite and not a new list of names. You can still start the sprint. You cannot pretend the freeze was complete. Write the UNKNOWN lines at the top of the sprint notes so day 90 does not average them away.

  • Allowed: tag the inbox, date the proposal folder, write the reply window in one sentence, name who answers.
  • Not allowed in week 0: a new channel, a new price invented to feel serious, a redesign, a backfill so the audit looks filled.
  • Day 90: compare to this page. If a line was UNKNOWN at the start, say whether you can measure it now. Do not compare to a number you wish you had written.

Hypothetical, labeled

Hypothetical. Last 30 days. Qualified conversations: you can point at four tagged rows. Proposals sent: two dated emails. Yes or no: one written yes, one still open, so you do not write a rate. Reply time: timestamps on one of the four, so the month is UNKNOWN, with a note that one row has a time. Open slots: the reply window is not written down, so UNKNOWN. You do not type a typical week into the blanks. You date the page and you stop. What this does not prove: that four is a good pipeline, or a bad one. It proves you can start a sprint without lying about the start.

If the page is mostly UNKNOWN and you want a second pair of eyes on which hole to close first, use contact. The page people actually land on is a separate job under websites.

Frequently asked questions

What is week 0?

The sitting before you change the offer, the site, or a channel. You write five lines for the last 30 days and you date the page. The 90-day sprint is what you do after that freeze. Week 0 is not a rebrand and it is not a new channel.

What do I write if I do not know the number?

UNKNOWN. Do not estimate. Do not backfill from memory. A partial set of timestamps is not a median for the month. Leave the gap visible so the next Monday has a real counting job.

Why is an estimate worse than a short baseline?

You will manage the quarter against the guess. If the guess was high, a real improvement looks like a collapse. If the guess was low, a flat month looks like a win. UNKNOWN is a task. A guess looks like data, so you skip the fix and start changing things.

Does this replace the 90-day sprint?

No. The sprint is one offer, the site job, two channels, written procedures, then a review. That calendar starts after the freeze. If you edit the homepage while these lines are blank, you will not know what the quarter changed.

Where are the blank sheets?

The 90-day growth audit and the core metrics sheet are the blanks. This page is the rule for filling them: last 30 days, source or UNKNOWN, no backfill. Do not compute a close rate while yes or no is UNKNOWN.

Tags: growth baseline, 90-day plan, pipeline, metrics, service business