How Do I Change a WooCommerce Subscription's Status?

What Each Status Actually Means

WooCommerce Subscriptions statuses aren't arbitrary labels — each one controls real behavior (whether renewals are scheduled, whether the customer has access, whether retries are attempted):

  • Active — renewing normally, full access granted.
  • On hold — typically after a failed payment; access may be paused depending on integration, renewals can resume once resolved.
  • Pending — parent order not yet paid; not truly started yet.
  • Pending cancellation — cancelled by request but still active until the current paid period ends.
  • Cancelled — will not renew again.
  • Expired — reached a defined end date (for subscriptions with a fixed length) rather than being cancelled.

When a Manual Change Is Actually Needed

  • Reconciling after a payment issue was confirmed resolved outside WooCommerce — for example, a PayPal IPN failure where the charge genuinely succeeded but WooCommerce never heard about it.
  • Correcting a subscription left in the wrong state by a plugin conflict or scheduler failure, once the underlying cause has actually been fixed.
  • Granting a manual comp/courtesy period by putting a subscription on hold or extending it, outside the normal billing cycle.
  • Bulk cleanup after a data import or migration left subscriptions in an inconsistent status.

How to Do It Safely

  1. Diagnose the actual cause before changing status — a manual status change fixes the symptom for one subscription, not whatever caused it, which will keep recurring for other subscriptions if left unaddressed.
  2. Use the admin "Change status" action rather than editing the database directly. This ensures the same hooks other plugins rely on still fire correctly, keeping any integrated systems in sync.
  3. Add an order note explaining why when making a manual change, so anyone looking at the subscription later (including future you) understands it wasn't an automatic transition.
  4. For bulk changes, use the list-view bulk actions rather than editing subscriptions one at a time, but test the effect on one subscription first if you're not certain what a given transition will trigger.

If you're changing statuses manually as a recurring workaround for the same underlying problem, that's worth fixing properly instead — see WooCommerce fixes.

Available for new projects

NEXT STEP

Rather have it fixed than keep reading?

Based in Dhaka, Bangladesh — serving clients worldwide. Tell me what's happening and you'll have a reply within one working day.

  • Reply within one working day
  • Fixed quote before work starts
  • UK, EU and US hours covered