> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.tabs.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.tabs.com/_mcp/server.

# Renewals

Every contract with renewal terms — auto-renewal, notice period, term length, price escalator — gets a matching **Renewal** record the moment those terms are extracted, roughly ten factors per contract (see [Renewal terms](/contract-structure#what-tabs-extracts)). Renewals turns those terms into an actual action instead of leaving someone to manually rebuild billing terms on a new contract each cycle.

## From extracted terms to the next contract

#### Contract is processed

Extraction produces a Renewal record with the terms read from the document — auto-renewal, notice period, term length, escalator, and so on.

#### Contract is approved

Approving the source contract generates a draft renewal contract that carries forward the right billing terms: correct ones carried forward as-is, prorated ones grossed up, and ones that shouldn't renew — like a one-time implementation fee — dropped. The draft stays hidden until its renewal is acted on.

#### The draft stays in sync

Any edit to the source contract, or to the renewal's own terms, updates the hidden draft automatically for as long as it stays a draft — nothing to reconcile by hand.

#### The renewal is approved

The draft becomes a real, visible contract linked back to the one it renews. It immediately gets its own Renewal record, so the same cycle repeats for the next term.

## Acting on a renewal

Open a renewal from the Renewals list, or directly from the contract it belongs to.

* **Approve** — finalizes the linked draft contract with the terms as they currently stand.
* **Do not renew** — declines with a reason (customer no longer active, a renewal contract will arrive separately, or other) so no contract is generated for that term.
* **Edit before approving** — shorten or extend the term, override the computed price, or change billing cadence (for example, monthly to quarterly).
* **Add renewal terms manually** — for a contract where none were extracted, instead of looping in engineering or support.

## Reconciling with your CRM

Approving a renewal with **reuse CRM external ID** enabled keeps the new contract's invoices tied to the existing CRM opportunity. If a CSM or AE is running their own renewal motion in the CRM instead, decline the Tabs renewal as "new contract coming via CRM."

## When a renewal contract is signed

If a new contract comes in through CRM sync or manual upload rather than through the flow above, Tabs classifies it and checks whether it's a renewal of an existing contract. When it matches, that inbound contract replaces the in-progress draft: the hidden draft renewal contract is discarded, and the newly arrived contract is linked in as the official renewal instead — so you never end up with two contracts covering the same term.

## Related resources

* [Contracts](/contracts) — where renewal terms are extracted from
* [Structure & Extraction](/contract-structure) — the full list of extracted contract data, including renewal terms
* [Contract Agent](/contract-agent) — classification, citations, editing, and calibration
* [Read and accept renewals](/bill-customers/renewals) — read, edit, and act on renewals via the API