Three figures here publish today at company and period: contribution margin and the two margin indices. Everything per-customer on this page — cost to serve above all — is designed and not built, and the account-level cost figure is deliberately held back from every door even once it exists. The sections below say which is which.
Cost to serve is a ratio, and it only counts one kind of cost
Cost to serve is what you spend keeping an existing customer, set against what that customer pays you. It counts only the cost of delivering and supporting the base you already have. It does not include what you spent winning them, it does not include research and development, and it does not include general and administrative overhead. That exclusion is not a simplification, it is the whole point. A chart of accounts spans revenue, serving cost, acquisition cost, R&D, G&A, interest, tax and balance-sheet lines. Most categories in yours belong in none of the serving layers. A tool that forces every category into a serving bucket produces a cost-to-serve number that is wrong for every customer. Beacon asks you to mark those categories as what they are — including simply out of scope — and then counts serving cost and nothing else.The five things that make a customer expensive — and why only four of them cost money
Beacon reads five signals about how much serving a customer actually takes.
Self-service health is the one signal that runs the other way, and it has no line in anyone’s chart of accounts. A customer who solves their own problems is cheaper to serve, and there is no account you could point at to prove it. So it carries weight in the health picture and contributes no cost, and the money side is shared across the four layers that do have a cost pool. If a tool tells you it has allocated cost across five layers including self-service, it has invented something.
These signals are measured from activity, not from money. Support intensity is a percentile against your own segment, not a currency amount. The cost figures are attached afterwards. This matters because it means a customer can be flagged as expensive to serve before any cost has been allocated to them at all.
From a company total to one customer
Classification gives you a company-level total per layer per period. Turning that into a per-customer number needs a stated rule, and each layer has one, plus a named fallback for when the ideal source is not connected.
Professional services is the honest case worth noticing. It has no fallback. Where the source is absent the layer is switched off and says so, rather than being approximated from something adjacent. A missing input narrows what Beacon reports; it never becomes a guess wearing a number’s clothes.
Every pool adds to exactly one. Within one layer and one period, the shares across customers sum to 1.00. Anything that cannot be attributed to a customer is carried into an explicit unallocated bucket and shown. It is not netted off, and it is not spread thinly across everyone to make the total close.
People cost, and the one place this gets complicated
Most of what it costs to serve customers is people. Where you run a payroll or HR system, that system is the source for people cost, not your ledger — it holds cost per position with an itemised burden, where your ledger holds a monthly rollup. Your ledger then reconciles to it, and any unexplained gap is shown rather than absorbed. Only one of the two ever supplies the amount for a given pool and period, so the two can never both count it. There is a named limit here, and it is stated rather than hidden. A payroll system classifies people cost up to broad functions — sales and marketing, R&D, general and administrative. It does not, on its own, tell you which support engineers versus which customer success managers. Until that split exists, Beacon runs in a declared reduced mode: the personnel share sits in the unallocated bucket, never distributed across the four layers by guesswork. What that costs you is specific, and worth knowing before you rely on the number. Your cost-to-serve ratio stays correct — the people cost is still inside the total. What degrades is the driver read: which layer is making a customer expensive, computed over a pool missing its people share. Beacon drops the confidence label on that read to Low while the mode is active, rather than presenting a confident attribution built on a partial pool.Contribution margin
Contribution margin is what your revenue contributed after the cost attributed to serving it. It is consolidated from four sources rather than read from one, and an entity has to reconcile within 2% to be included at all — a source that disagrees by more than that is queued and surfaced, not quietly averaged in. Notably, cost reaches this figure through cost to serve, never straight from your general ledger. There is no path where a ledger line becomes a margin number without passing the classification and allocation above. That is why the chain on this page has to hold before the margin figure means anything. It publishes today, at company and period, and it carries a leadership-only ceiling — it is not a figure that reaches every reader or every door. See Contribution margin for the published article and Access and grants for what a ceiling does.The margin index, and why it is not a blend of opinions
Alongside the money figure, Beacon publishes a 0–100 index of how well margin is holding up across the business, with a band, and a period-on-period movement. Two things about it are worth stating plainly: It is measured, not modelled. It is computed from figures that happened, not projected from a model of what might. It decomposes into five drivers. When the index moves, Beacon reports which of the five contributed and by how much, rather than reporting a change and leaving you to guess. See Margin contribution index.What none of this is
- Not gross margin as your accountants report it. Beacon reclassifies your chart of accounts onto a subscription-business view. Your filed accounts and this view will differ, deliberately, and Beacon keeps your ledger’s own classification verbatim beside its own so every difference is visible rather than buried.
- Not a statutory or accounting-policy figure. Do not file it, and do not put it in front of an auditor as one.
- Not cash. Everything here is recognised cost, not money that left your bank. Timing is a separate question — see Cash and runway.
- Not a per-customer figure you can export today. The account-level cost figure is held back from every door even where it is computed, because a per-customer cost number is one of the most easily misread values in the system. See Account object.
Related
Finance overview
How your chart of accounts is taken in and classified, and the twelve areas built on it.
Cost to serve
The published article, including why this figure keeps a different precision from a ledger read.
Contribution margin
The published figure at company and period, and what it deliberately is not.
Margin contribution index
The 0-100 index, its band, and why it is measured rather than modelled.
When a source is missing
What a named degraded mode does, and why nothing is estimated to fill a gap.
Cash and runway
The timing question this page deliberately leaves alone.