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.
The declaration
Section titled “The declaration”Two lines in brand-guide.md at your brand root:
conversion-shape: lead-to-close # ecom-purchase | lead-to-close | booking | subscriptionsales-cycle-days: 45 # required when revenue lags. Never guessed.The four shapes
Section titled “The four shapes”ecom-purchase | lead-to-close | booking | subscription | |
|---|---|---|---|---|
| Conversion event | Purchase | Qualified lead | Booked appointment | Trial to active |
| Volume | Orders | Qualified leads | Booked jobs | Net new subs |
| Cost | CPA | Cost per qualified lead | Cost per booked job | CAC |
| Value | AOV | Deal value × close rate | Job value × show rate × close rate | MRR × expected months |
| Lag to truth | ~0 days | Your sales cycle | Booked to paid | Trial length |
| Status | Ready | Ready | Ready | Declarable, not yet resolved |
What changes when you declare it
Section titled “What changes when you declare it”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.
About subscription
Section titled “About subscription”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.
What this means for you day to day
Section titled “What this means for you day to day”- 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 reportNO-DATAinstead. - 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.
Related
Section titled “Related”Gates and verdicts · Your files · weekly-readout · offer-architect