Skip to main content

Managing plans

This document provides a detailed look at the options for defining plans within Metronome. If you haven't already, read the products and pricing overview to understand the role of plans in how Metronome prices and invoices customers.

Plans determine pricing and invoicing

If a product defines what customers pay for, plans determine how much they pay. In the cloud database example from the products and plans overview, the product includes three charges: CPU usage, max storage, and a base recurring charge. The plan tells Metronome what prices each of these charges should carry at any given time and when and how they should be invoiced.

The following example plan shows most of the features of plans:

an example plan in the Metronome web UI


Customers may pay different prices for the same product for a variety of reasons, such as a discounted rate for prepayment or an individually negotiated enterprise contract. Plans are what determine how much a customer pays for the various charges associated with a product.

Usage-based charges

A usage-based price is a rate applied to a billable metric. Metronome supports both flat rates and tiered pricing. In flat pricing, the same rate is applied regardless of quantity.

In tiered pricing, the rate applied depends on the quantity thus far in the billing period. In the cloud database example, a plan might dictate that the first thousand gigabytes of data cost $0.10 per gigabyte, and every gigabyte thereafter costs $0.09.

Fixed recurring charges

Fixed recurring charges are not related to any billable metric, so they don't depend on usage. The cloud database example product includes a recurring "base charge." A plan needs to set a price for this charge.

Pricing ramps

Pricing does not always remain constant over time. A common example is an introductory rate with a low invoice minimum that allows new customers to build their integration without paying a lot. This pricing might last for the first billing period or two, after which higher rates and minimums apply.

Metronome supports this in the form of pricing ramps. When you create a plan, you can specify how many pricing ramps exist and how long each one lasts. You'll need to price all the included products for each ramp. This includes setting prices for each charge and adding any needed minimums.

Trial invoices always use the pricing from the plan's first pricing ramp.


Pricing ramps are a flexible way to change prices over time. Use them for changes to a plan that happen with a fixed schedule. For prices that change based on a customer's preferences, e.g. upgrading or downgrading, it's better to use separate plans and move a customer from one to the other.

Spending minimums

Metronome supports invoice total minimums. If the customer's spending does not meet the required minimum, an invoice adjustment is added to make up the difference.

Using the cloud database example, an invoice minimum could say that the customer must spend at least $1,000 per billing period overall.

Currencies and custom pricing units

Products can be priced in a currency, such as U.S. dollars, or a custom pricing unit. For example, the cloud database product might be priced in "Cloud Consumption Units" (CCUs), which customers purchase up front when signing on. When using a custom pricing unit in a plan, you will be prompted to enter an overage price. For example, a customer may be billed $0.10 per CCU in arrears once any applicable credits are consumed.

Metronome currently supports: USD, EUR, GBP, CAD, ZAR, CHF, AUD, MXN, INR, SEK, NOK, PLN, CZK, TRY, and BRL. If there's a currency you'd like Metronome to support that is not listed here, please reach out to your Metronome representative.

Multiple pricing units in the same plan

All charges within a given product have to be priced in the same currency or custom pricing unit, but a plan can include multiple products that are priced in different pricing units. A single invoice will be issued with any overages for custom pricing units converted into the invoice's currency, e.g. U.S. dollars.

Price adjustments

Price adjustments let you modify the prices on a per-customer basis. For example, you might use the same plan for all your enterprise customers but use price adjustments to give each customer an individual negotiated discount.

Another common use case for price adjustments is "cost-plus" pricing. In this model, your base plan has prices reflecting your business's underlying costs, and you use price adjustments to apply a percentage-based markup.

Price adjustments are modeled as:

  • Percentage-based increases/decreases. You can use this to offer a 15% discount or add a 15% markup for a customer.
  • Fixed amount increases/decreases. This is used to modify a price by a specific amount, e.g. decreasing the price of a gigabyte of data by $0.50.
  • Price override, which sets a specific price for an invoice charge. For example, you can set the price for a gigabyte of data to $0.35 for a single customer.
  • Quantity override, which lets you set a specific quantity for a fixed charge. For example, perhaps the underlying plan defaults to 1 developer license (a fixed charge). You can use a quantity override to set the number of licenses for a specific customer to 10.

Invoices show the adjusted prices without the details of how they were computed. For example, if a gigabyte of data costs $1 in the plan and you apply a 15% decrease adjustment for a customer, that customer will simply see a unit price of $0.85 on the invoice with no mention of the 15% adjustment.

The following example shows how you might apply price adjustments:

Applying price adjustments in the Metronome web UI


In addition to pricing, plans dictate when invoices are produced and which charges are included.

Invoicing schedule

Plans define the invoice schedule. Metronome supports monthly, biweekly, quarterly, annual, and semiannual billing. In the case of monthly billing, billing periods can either start on the first day of each month or monthly based on the plan start date, e.g. the 14th of each month for a customer who started their plan on May 14th. In the case of annual billing, billing periods start based on the plan start date. For example, a customer whose plan starts on February 2nd will have billing periods that start on February 2nd each year.

Billing periods always start and end at midnight UTC.

About plan lengths

Because plans can be reused across customers, they don't specify how long they last. You might want to add one customer to a plan in perpetuity, while another customer might have a contract specifying that their plan lasts only one year.

Free trials

Plans can specify a default trial, which can then be overridden on a per-customer basis.

In-advance billing

By default, all charges are billed in arrears, which means that they show up on an invoice at the end of a billing period. Optionally, you can choose to bill for a recurring charge in advance. Such a charge will show up on an invoice at the beginning of a billing period instead.

When choosing to bill in advance, you can also set a schedule. For example, you might choose to charge $1000 for premium support, billed in advance once every three billing periods.

Creating plans

Plans can be created in the Metronome web UI. The plan creation wizard walks you step by step through the process of setting up an invoicing schedule, choosing products, pricing their charges, and setting up any applicable ramps and minimums.

Next steps

Once you've created a plan, you're ready to associate it with customers. You can do this through the web UI or the API.