Revvly
Docs
Pricing engine

Variable Component

A versioned, priced rule attached to a Meter — flat, tiered, overage, commission.

Overview

Variable Components are the core of Revvly's pricing engine. Each one attaches a pricing model — flat rate, volume tiered, graduated tiered, stairstep, true overage, committed overage, commission, or promotional — to a Meter. Two settings decide how it measures: whether the quantity carries forward at the period boundary or resets, and which number in the period is rated. A component whose quantity resets is metered consumption — its total is only final once the period closes, so it bills in arrears and its invoice waits for a sealed usage reading (see Capture metered usage). Its unreported-usage policy says what an empty period means for it: hold the invoice for a human, or seal at zero. A component carries its own operator-facing name (it no longer borrows the bound Meter's display name), and creating one no longer requires creating a Meter first — leave the meter unset and Revvly provisions one automatically from the component's name; binding to an existing Meter stays available as an advanced option. As of v4 a component carries only the structure of the model (tier/step boundaries, included units, committed quantity, proration, billing timing, measurement mode) — the actual money lives in a separate Variable Component Price scoped per currency. Components are versioned: once Published, the structure is frozen, and you publish a new version to change it. Modules and Bundles reference component versions; subscriptions pin them.

How it connects

This concept highlighted in context. Click a peer to navigate.

  • Attaches to a Meter
  • Referenced by Modules and Bundles via variableComponentRefs (pinned to a version)
  • Priced per scope via Variable Component Price
  • Overrideable per customer via Custom Pricing Agreement

Key fields

What you’ll see when creating or editing a Variable Component.

Name
Operator-facing label, set directly at creation — no longer inherited from the Meter
Model type
Flat / Volume tiered / Graduated / Stairstep / True overage / Committed overage / Commission / Promotional
Meter
The metric this prices — optional at creation, auto-provisioned from the name if left unset
Structure
Tier/step boundaries, included units, committed quantity — but no money (that lives on Variable Component Price)
Version
Auto-incremented on each Publish
Status
Draft / Published / Archived
Proration
Full month / Daily / None
Billing timing
Advance / Arrears — a per-period quantity must bill in arrears
Reset behaviour
Carries forward / Resets each period (this is what gates the invoice on a sealed reading)
Billed value
Highest observed / Total over the period / Value at period end
Unreported usage policy
Review — hold the invoice for a human (default) / Zero — seal an empty period at zero
Limit period
How included quantities reset (rolling, calendar, billing-cycle)

Example

Seats — flat rate · v2
ModelFlat rate, $5 / seat / month
Included in Pro tier10 seats free
StatusPublished