Skip to content

Declare how your business makes money

Most marketing tools assume a purchase: someone clicks, they buy, revenue lands the same day. That is one business model out of several, and running a consultancy or a home-services company on ecommerce math produces numbers that are confidently wrong.

So you declare your money path once, and every skill reads it.

Two lines in brand-guide.md at your brand root:

conversion-shape: lead-to-close # ecom-purchase | lead-to-close | booking | subscription
sales-cycle-days: 45 # required when revenue lags. Never guessed.
ecom-purchaselead-to-closebookingsubscription
Conversion eventPurchaseQualified leadBooked appointmentTrial to active
VolumeOrdersQualified leadsBooked jobsNet new subs
CostCPACost per qualified leadCost per booked jobCAC
ValueAOVDeal value × close rateJob value × show rate × close rateMRR × expected months
Lag to truth~0 daysYour sales cycleBooked to paidTrial length
StatusReadyReadyReadyDeclarable, not yet resolved

Three things, and none of them is just swapping a word:

1. Your weekly headline gets two tiers when revenue lags. On a 45-day sales cycle, this week’s revenue has not happened yet. So weekly-readout reports banked (deals actually closed this week, explicitly sourced from leads generated 30 to 75 days ago) and leading (this week’s qualified leads and their cost, labelled as a leading indicator, never as revenue). Neither tier may be dropped. Banked alone cannot see this week; leading alone quietly demotes your headline from a business metric to a platform metric.

2. Day-based thresholds scale to your lag. A rule that fires when payback exceeds 30 days would fire permanently on a 90-day sales cycle, which trains everyone to ignore it. Instead the window resolves as the greater of the stated constant and your lag, and the deliverable prints the resolved number rather than the constant.

3. Integrity checks follow your real event chain. A tracking audit on an ecommerce store checks the browser purchase event and its transaction id. On lead-to-close, the money event is closed-won, which happens in a CRM days later and never in a browser at all, so the equivalent check becomes offline-conversion upload freshness and CRM-stage mapping. The clause is replaced, not skipped, because a skipped clause quietly narrows the audit while the verdict still looks confident.

You can declare it, and the toolkit will tell you honestly that it is not fully resolved yet, name the nearest resolved shape, and proceed only if you opt in, with every affected number labelled as provisional.

The reason it is unresolved is specific and worth stating: subscription payback is multi-month by design, but its lag-to-truth is the trial length, so the payback rule would resolve to 30 days and fire on essentially every healthy subscription account. Fixing that needs a properly sourced payback benchmark, and inventing one would be exactly the fabrication these gates exist to catch.

  • Declare it at onboarding. It takes one line and it changes every report you will ever run on that account.
  • Never guess sales-cycle-days. A guessed value silently re-times every window that reads it. Leave it out and the lag-dependent rows honestly report NO-DATA instead.
  • Do not read a leading indicator as revenue. The label is there because that mistake is expensive.
  • A delivery ceiling is a different thing. “This plumber can only take 40 jobs a week” is a capacity constraint, not a money path, and it is not part of this declaration.

Gates and verdicts · Your files · weekly-readout · offer-architect