# Custom plans and prices

You can now transition active subscriptions between different billing plans right from the dashboard or backend API.
Switch a customer's subscription from one price to another while keeping their billing smooth — whether you're upgrading them from free to paid or moving between paid tiers.

## What's new

This subscription item management feature lets you easily change a customer's active subscription item to a new pricing plan. It makes essential Billing workflows simple:

- **Promotional offers** - Apply special pricing to existing subscribers
- **Tiered upgrades and downgrades** - Move customers between different paid plans based on their needs or usage
- **Plan migrations** - Transition customers to new pricing structures as your product evolves

When you create a price transition, we handle all the timing and billing logic for you:

**Free-to-paid transitions** depend on the customer's current subscription state:

- **New to paid**: When transitioning a customer from free to a paid plan with no other active subscription, the paid plan activates immediately and the customer is charged right away
  - Example: Moving a customer on the free plan to Pro ($50/month). Pro activates immediately, customer charged $50.

- **Free to paid with active subscription**: When transitioning from free to paid but the customer has another active subscription, the paid plan is scheduled as _upcoming_ to avoid billing conflicts
  - Example: Customer on free plan with an active Pro subscription through March 20. Switching the free plan to Enterprise sets Enterprise as _upcoming_ until March 20.

**Paid-to-paid transitions** schedule the new plan to avoid billing overlap:

- **Switching between paid plans**: When a customer already has an active paid subscription, the new plan is scheduled to start when their current billing period ends
  - Example: Upgrading a customer from Basic ($20/month, paid through Feb 15) to Enterprise ($35/month) on Jan 15
  - Basic remains active through Feb 15 (already paid for)
  - Enterprise becomes _upcoming_ and activates Feb 15 (customer charged then)
  - Prevents double-billing the customer for overlapping periods

**Paid-to-free transitions** schedule the free plan as _upcoming_, allowing the customer's current paid subscription to run through its paid period before automatically activating the free plan.

## Getting started

To change the price or plan of your subscriptions:

1. Navigate to [Subscriptions](https://dashboard.clerk.com/~/billing/subscriptions) in the Clerk dashboard
2. Choose the subscription item you want to update
3. Click the three dots menu
4. Update the price or plan as needed

![Custom plans and prices](./custom-plans-prices.png)

## Create custom prices

If you can't find a price that satisfies your needs from the existing options, you can create a new price by clicking "Create new price" and use it right away for your subscription transitions.

## Paid plans without charging

We're currently working on a feature that will allow you to assign paid plans to customers without billing them. This capability will be valuable for several scenarios:

- **Gifting subscriptions** - Give users complimentary access to premium features
- **Internal team access** - Let your team use paid features in production without extra billing
- **Migration help** - Support customers who've already paid on other platforms
