Monthly subs normally renew on same day of month as parent order, except where that date is not available. If the “normal” renewal date does not exist, take payment on last day of the month ongoing.
e.g. (simple case) purchase monthly on 5th march, renews on 5th april etc etc.
Exception:
purchase on 29 Jan 2021, can’t renew on 29th Feb 2021 as it does not exist, so it renews on last day of month ongoing, i.e. 28 Feb, 31 Mar, 30 Apr.
This seems a bit weird to be honest. It causes an issue in the example above, because the membership is extended by +1month on renewal i.e. up to 28th Feb.
But if renewal doesn’t happen until 31st March, there is a gap of 3 days where their membership has lapsed.
I don’t want to have to manage this manually.
A better rule would be: take payment on same date each month and if “normal” date does not exist, take it on the last day of the month for current month only (revert to normal date where possible in subsequent months).
Completed
Last updated: May 13, 2026
Log in to comment on this feature request.
Hi there,
Thank you for your suggestion!
Great news! This feature is already supported by WooCommerce Subscriptions (as of version 8.7.1). WooCommerce Subscriptions renews monthly subscriptions on the same day as the parent order by default, and automatically falls back to the last day of the month when that date doesn’t exist in a given month (e.g. a subscription purchased on the 29th of January will renew on the 28th of February). You can find more details in our documentation: https://woocommerce.com/document/subscriptions/creating-subscription-products/
Therefore, I am marking this request as completed.