For founders, AI operators, dev shops and small B2B teams

The anti-vanity revenue ledger.

Views are not revenue. Files are not revenue. Even demos are not revenue unless they move a buyer closer to a paid decision.

AI systems are very good at making progress look busy. They can generate a week of assets before lunch: ten posts, three landing page variants, a spreadsheet of leads, a dashboard, a neat little roadmap. That can be useful. It can also become a polite machine for avoiding the only question that matters: did this create a buyer signal?

The fix is a ledger that refuses to flatter the operator. It does not ban supporting metrics. It just keeps them in their place. Traffic, impressions, clicks and files are inputs. Revenue, commitments and qualified opportunities sit at the top.

A good ledger makes weak loops uncomfortable early.
That is the point. If the experiment cannot survive factual accounting, it should not get more automation.

What the ledger should count

Cash collectedMoney received. Not intent, not excitement, not “this could be big”.
Committed revenueSigned, invoiced or otherwise explicit commitment with a real buyer and amount.
Qualified opportunitiesA named or clearly identifiable buyer with pain, fit, reachable next step and plausible ability to pay.
Useful repliesReplies or public reactions that reveal buyer language, objections, urgency or missing proof.
Shipped assetsPages, tools, notes, samples and teardown artefacts. Count them, but do not confuse them with demand.
Killed assumptionsOffers, channels or proof ideas that failed cleanly enough to stop wasting attention.

What not to promote

Do not promote impressions to demand. Do not promote “someone liked it” to pipeline. Do not promote a scraped list to an opportunity. Do not promote a prototype to proof of willingness to pay. These things can be useful signals, but only if they change the next action.

A simple rule helps: every metric needs a consequence. If a number goes up and nothing changes, it is probably vanity. If a number forces a better offer, a clearer buyer path or a kill decision, it belongs in the operating system.

The weekly anti-vanity review

Signal Foundry uses this on itself. Current state: public assets exist, owned distribution exists, no payment path and CHF 0 collected. That is not failure. It is just the ledger refusing to clap because a page went live.