> ## Documentation Index
> Fetch the complete documentation index at: https://docs.getnovaplan.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Revenue planning

> Model ARR from pipeline, drivers, contracts, or top-down targets, all the way to recognized revenue.

Revenue planning takes you from contracted ARR through to recognized P\&L revenue. Several forecast methods coexist, so you can plan the way your business actually plans: weight a pipeline, build capacity bottom-up, model contracts line by line, or set top-down targets and let the model allocate them. Whatever method you use, the result expands into recognized revenue and derives into the GL, so revenue lands in the same P\&L as everything else.

## The Sub-Sections

| Section         | What it is for                                                                                                  |
| --------------- | --------------------------------------------------------------------------------------------------------------- |
| **Overview**    | ARR movement and recognized revenue by period, with waterfalls and drill                                        |
| **Snapshot**    | Revenue actuals from your CRM and billing                                                                       |
| **Pipeline**    | Weighted opportunities feeding the forecast                                                                     |
| **Contracts**   | Per-line contract modeling with ramps, expansions, and churn                                                    |
| **Assumptions** | Renewal NDR, churn, and recognition settings                                                                    |
| **Drivers**     | Bottom-up capacity math, top-down targets, activation, and churn plans (see [ARR Studio](/planning/arr-studio)) |
| **Streams**     | Configure each revenue stream and its forecast method                                                           |

## Ways to Forecast

<CardGroup cols={2}>
  <Card title="Pipeline-based" icon="filter">
    Weight opportunities by deal stage and roll them into the forecast.
  </Card>

  <Card title="Driver-based" icon="gauge">
    Build ARR bottom-up from productive reps, quota, and attainment by cohort. See [ARR Studio](/planning/arr-studio).
  </Card>

  <Card title="Top-down targets" icon="bullseye">
    Set quarterly CARR add targets and let the model allocate them down to months and dimensions.
  </Card>

  <Card title="Contract-level" icon="file-signature">
    Model ramps, expansions, modifications, pauses, and churn per contract line.
  </Card>
</CardGroup>

These methods are not exclusive. Per period you decide how they combine: a quarter can be pipeline-only, driver-only, target-only, or a floor-fill that takes the larger of the two so you never double-count a rep's quota against deals already named in their pipeline.

## Pipeline Stage Weights

Pipeline opportunities are weighted by deal stage, not treated as committed. A lead counts for a small fraction of its amount, a committed deal for most of it, a won deal for all of it. Stage weights are configurable, so the weighted forecast reflects your own win-rate reality.

## Streams and Recognition

Each revenue stream (subscription ARR, one-time bookings, usage, marketplace, other income) has its own forecast method and recognition schedule. Recognition turns ARR events into recognized revenue:

* **Immediate** recognizes the full amount in the booking month.
* **Monthly straight** spreads an amount evenly over its term.
* **Percent complete** recognizes a services project against milestones.
* **As consumed** recognizes usage as it is metered.
* **ARR balance monthly** recognizes the active ARR balance divided by twelve each month, the run-rate model an FP\&A team uses for subscription revenue.

The model expands each event into the right number of monthly postings and derives them into the GL tagged as revenue-derived, so a P\&L built on the GL ties back to the source events.

## CARR, Live ARR, and Recognized Revenue

Contracted ARR (CARR) is what you have booked at signing. Live ARR is what is actually live, derived from CARR through a per-cohort activation curve so you can model the lag between booking a deal and revenue going live. Recognized revenue then follows from Live ARR. This three-layer model is documented in full on [Recognized Revenue](/planning/recognized-revenue).

<Note>
  With the default "Instant" activation curve, Live ARR equals CARR at every account-month, so a plan with no activation lag behaves exactly as it would without the activation model. You only see a difference when you assign an onboarding curve.
</Note>

## Common Questions

<AccordionGroup>
  <Accordion title="What is the difference between ARR and recognized revenue?">
    ARR is the annualized run-rate of your contracts (a balance). Recognized revenue is the P\&L revenue you actually book each month. For subscription ARR under the balance model, recognized revenue is roughly the active ARR balance divided by twelve. See [Recognized Revenue](/planning/recognized-revenue).
  </Accordion>

  <Accordion title="My pipeline and my driver model both cover Q3. Will they add up and double-count?">
    Only if you tell them to. Set the period's treatment to floor-fill and the model takes the larger of pipeline and drivers, not the sum, because a rep's quota already implies they close some of the deals in their own pipeline.
  </Accordion>

  <Accordion title="How do renewals and churn get modeled?">
    Renewal NDR and churn are set in Assumptions and can be period-scoped, so an account can upsell in one year and downsell in another. You can also pin total annual churn to a base balance and distribute it across months with a churn plan. See [ARR Studio](/planning/arr-studio).
  </Accordion>

  <Accordion title="Can I model a complex contract with ramps and mid-term changes?">
    Yes. The Contracts section models per-line ramp periods, expansions, contractions, pauses, resumes, and churn as an append-only lifecycle, and re-derives the GL after each change.
  </Accordion>
</AccordionGroup>

## If the Numbers Look Off

* Recognized revenue reads as zero for a stream: confirm the stream has a recognition schedule enabled. A stream with no schedule produces ARR events but no recognized postings.
* ARR looks too high in late months: cumulative ARR folds in renewal amounts. Check the ARR waterfall on Overview to see which movement bucket is driving it.
* A forecast method change did not move the number: re-run the revenue forecast so the engine regenerates events and the derive bridge re-posts to the GL.
* Two surfaces disagree on ARR: confirm both are on the same budget version and period range, and that one is not reading a locked snapshot while the other reads live.
