Apply a plan change immediately when the customer needs the new entitlement now and any adjustment can be collected before access changes. Apply it at the next renewal when the customer should finish the already-paid period on the current plan. In both cases, show the effective date, amount, next charge, and failed-payment result.
Key takeaways
- The effective date and payment date must agree.
- Immediate changes should be payment-gated.
- Deferred changes preserve current access until the target renewal succeeds.
- Pending switches need replace, cancel, and failure rules.
- Current ArraySubs uses one global timing mode rather than separate upgrade/downgrade timing.
Compare the state transitions

| Question | Immediate | At next renewal |
|---|---|---|
| When is money due? | Now, according to proration/full-price policy | At existing renewal boundary |
| When does access change? | After switch order is paid | After target renewal is paid |
| What happens before payment? | Current plan should remain authoritative | Current plan remains active |
| Billing anchor | May stay or reset depending on cadence/method | Existing anchor |
| Main risk | Granting access before money or unclear credit | Customer expects target access too early |
Immediate changes
Immediate is clearest for an upgrade that unlocks capacity or features the customer needs now. Current ArraySubs creates a plan_switch order and finalizes the product/access change after that order is paid. A failed or abandoned switch order should not grant the target entitlement.
The quote can use net proration or a full-price replacement depending on the global policy. Show every component and the next date before the customer confirms. Authentication, tax, shipping, coupons, and fees need the same testing as an ordinary payment.
Next-renewal changes
Deferred changes store the target configuration while the current agreement remains active. The target item and price are placed on the next renewal order; after it is paid, the subscription changes.
This model is often easier for downgrades because the customer retains the tier already purchased and no immediate unused-value credit is required. It also works for operational changes that should begin at a clean billing boundary.

Timing comparison, not conversion or retention data.
Failure behavior must be explicit
- Immediate payment fails: keep the current plan; leave a payable/failed switch order only as long as the workflow permits.
- Deferred renewal fails: do not grant the target plan; run the normal renewal recovery lifecycle.
- Webhook arrives late: verify remote payment before attempting another charge.
- Customer cancels: clear or resolve the pending switch consistently.
- Another switch is requested: require explicit replacement of the existing pending change.
Upgrades and downgrades are not symmetric
An upgrade may add value immediately; a downgrade can remove already-paid value. That supports a policy of upgrade-now/downgrade-later, but current ArraySubs saves one global timing mode. Do not claim native direction-specific timing. If that split is essential, specify and test a supported customization.
Plan direction is also based on normalized daily rates in current ArraySubs and uses approximate cycle lengths. A price-equivalent crossgrade can still have operational differences in product, quantity, shipping, access, trial, or future pricing.
What the confirmation should show

Use a compact confirmation summary:
- current plan and target plan;
- due now and why;
- credit or refund result, if any;
- target effective date and timezone;
- next recurring amount and date;
- access or fulfillment change;
- switch fee, tax, and shipping;
- failure/abandonment result;
- cancellation or replacement rule.
Test matrix
Test upgrade, downgrade, and crossgrade with same and different cadences; zero and positive totals; manual and each automatic gateway; tax and physical shipping; coupons and credits; authentication; failed payment; late webhook; pending cancellation; and a second switch request.
Also test target products with trials, signup fees, and different-renewal-price schedules. Current research does not support promising that all target pricing-phase metadata transfers reliably through immediate or deferred switches.
For calculation choices, see Subscription Proration Methods Compared.
Final recommendation
Choose timing from the entitlement promise. Immediate changes require a successful payment boundary; deferred changes require a clear pending state and a paid target renewal. Publish the exact transition instead of “your plan will update shortly.” Compare ArraySubs plans.
Frequently asked questions
When should a subscription upgrade take effect immediately?
When the customer needs the added value now, can see and pay the adjustment, and the entitlement changes only after payment succeeds. Support must also be able to explain the next renewal date.
When should a downgrade wait until renewal?
When the customer should retain the current paid tier through the billing boundary or the store wants to avoid an immediate credit/refund calculation. State the exact effective date.
What happens if an immediate switch payment fails?
The target plan should not be granted. Current ArraySubs applies the product change after the switch order is paid, leaving the current agreement authoritative during failure.
What happens if a deferred target renewal fails?
The target entitlement remains unapplied. The renewal order follows the normal recovery, grace, on-hold, and cancellation policy.
Can ArraySubs apply upgrades now and downgrades later automatically?
Not through the current single global timing setting. That direction-specific policy needs a supported customization or future product capability and a full test matrix.
Disclosure, verification, and update log
- July 2026: Verified against current ArraySubs immediate and deferred plan-switch flows. Pricing-phase transfer and direction-specific timing remain documented limitations.
Continue from strategy to setup
Use a recipe when the model is settled
These articles own the decision and operating model. The ArraySubs feature map and recipes cover the exact product, billing, and customer-workflow configuration.
Written by
Emran // ArrayHash
Research and practical guidance for WooCommerce subscription operators and implementation teams.
Technical review
ArraySubs Engineering Team
Reviewed against current ArraySubs code, product documentation, and the linked primary platform sources.




