Changing Plans (Upgrades & Downgrades)

When a company changes plans, whether an upgrade or a downgrade, Schematic automatically updates the company’s entitlements, usage limits, and billing status in Stripe (if applicable). Plan changes can occur from a few different sources — in all cases, the steps Schematic takes are the same. The possible reasons for a plan change are:

  • The customer goes through a checkout flow via the Schematic Customer Portal Component
  • You update a company’s plan via the Schematic App using the “Manage Plan” button
  • A customer’s trial period ends, and they are converted to the default plan
  • A customer fails to pay their bill, their subscription is marked unpaid in Stripe, and they are downgraded to the default plan

Plan Change Basics

Whenever a plan changes, Schematic will automatically update the company’s entitlements and usage limits. Accrued usage is fully preserved. All company overrides are preserved and re-applied. If a company override is less generous than the current plan entitlement, the more generous amount will be applied.

Schematic prevents companies from downgrading to a plan if they will be over the usage limits of the new plan.

Downgrade to over limit

Using the “Manage Plan” button in the Schematic App, you are able to downgrade a company to a plan even if they are over the usage limits of the new plan. This will display a warning:

Downgrade to over limit

Stripe-Linked Plans

Stripe-linked plans have additional considerations concerning how usage based charges are synced to Stripe.

Upgrade vs. Downgrades

For Stripe-linked plans, Schematic handles upgrades and downgrades differently. A plan change is considered an upgrade if the new plan has a higher base price (or the same base price) as the current plan. A downgrade is considered a plan change to a plan with a lower base price.

Upgrade/Downgrade logic

When determining if a plan change is an upgrade or downgrade, the following logic is used. Below are the steps for determining if a change is an upgrade, whereas the inverse is considered a downgrade.

  1. Both plans need to be paid (otherwise it’s a sunbscribe/unsubscribe)
  2. If the new plan has a longer billing period (e.g. monthly -> yearly), it’s an upgrade.
  3. If the new plan has a higher base price, it’s an upgrade.
  4. If the new plan includes a new add on, it’s an upgrade.
  5. If the new plan includes more Pay-in-advance usage (typically representing user seats), it’s an upgrade.
  6. If the new plan includes the purchase of a credit bundle, it’s an upgrade.

Period Changes

When a company upgrades to a new plan, Schematic will maintain the current billing period (e.g. if you are 15 days into your billing period, you will remain on day 15 after the upgrade).

However,if the plan change is a downgrade, Schematic will reset the billing period (e.g. the new plan will start on day 1 of the new billing period).

Proration

Additionally, when changing plans, Schematic will use Stripe’s proration logic to refund the remaining base cost of the current plan and the base cost of the new plan. These costs are presented to the user during the checkout flow or to you while using the “Manage Plan” button in the Schematic App.

For usage-based features, Schematic will carry over usage from the current plan to the new plan.

Preventing Downgrades

Schematic allows you to prevent customers from downgrading to a plan if they are over the usage limits of the new plan. This is configured in the Catalog configuration tab and is turned on by default.

Additionally, you can require customers reach out to you before they can downgrade to a plan (preventing self-service downgrades). This is configured in the Catalog configuration tab and is turned off by default.