---
title: "BusinessModel"
description: "how one buyer profile earns, and the driver tree that turns that into the return one offering gives it; ready only when the tree reaches its four outputs and every dimension follows"
section: concepts
address: /concepts/businessmodel
contract: 0476e35e6e275db5
---

# BusinessModel

how one buyer profile earns, and the driver tree that turns that into the return one offering gives it; ready only when the tree reaches its four outputs and every dimension follows

[figure: BusinessModel is a definition at platform scope. The drawing shows its fields and the objects that they point at.]

| property | value |
|---|---|
| kind | definition |
| scope | platform |
| key | its segment or buyer profile, and its version |
| store | postgres |
| family | market |



## Fields


| field | type | required | note |
|---|---|---|---|
| `name` | `text` | yes |  |
| `vertical` | `id` | yes |  |
| `segment` | `id` | no | the segment of the vertical it describes; absent for a model at the buyer profile's depth |
| `kind_of_buyer` | `id` | no |  |
| `revenue_model` | `text` | yes | how the kind earns, in the field's terms: subscription, retainer, project, per seat, usage, transaction take, margin on goods, reimbursement, donations, management fees |
| `shape` | [CalculationShape](/concepts/calculationshape) | yes | the calculation shape the model instantiates |
| `bindings` | `{text:text}` | yes | the shape's role names bound to this model's drivers, by name |
| `tree` | [DriverNode](/concepts/drivernode) | yes | the shape's tree with the bindings applied: the roots, one per output, each a tree over drivers |
| `outputs` | `[text]` | yes | the four outputs the tree must reach: incremental value, cost, return, payback |
| `assumptions` | [Assumption](/concepts/assumption) | yes | each disclosed on every page and frame that reads the model |
| `version` | `count` | yes |  |
| `content_hash` | `hash` | yes |  |
| `state` | [Readiness](/concepts/readiness) | yes | not ready with the node named when the tree fails its check |
| `original` | `id` | no | the platform's row a brand's copy names |
| `depth` | `one of full \| lighter` | yes | the depth of the research behind the model |
| `adult_rooms` | `one of left out by default \| kept and used` | yes | whether a brand under this model reads the rooms marked adult by default. A vertical that draws real signal from those rooms keeps them, and every other vertical leaves them out unless a call opts in. |
| `note` | `text` | no | how the model was placed when the research's table did not list its profile |



## Routes that use it
No route takes or returns BusinessModel directly. The record holds it, and the objects that point at it reach it.
