The official requirements, line by line
WooCommerce's server requirements page lists the following for WooCommerce 10.8 and later. It also says WooCommerce still works on PHP 7.4+ and MySQL 5.6+ or MariaDB 10.4+, but that these versions are past end of life. Notice that WooCommerce's database floor (MariaDB 10.6) sits below WordPress.org's recommendation (MariaDB 10.11), while its 256 MB memory floor is well above some host defaults, such as WP Engine's 40 MB.
| Component | WooCommerce requirement | What it does | How to check on a plan |
|---|---|---|---|
| WordPress | 6.9 or greater | The platform WooCommerce extends | Dashboard, Updates |
| PHP | 8.3 or greater, tested up to 8.4 | Runs every uncached page, cart and checkout | Host panel PHP selector |
| Database | MySQL 8.0+ or MariaDB 10.6+ | Stores orders, customers and subscriptions | WooCommerce, Status, or ask the host |
| Memory | WordPress memory limit of 256 MB or more | Headroom for checkout, reports and imports | WooCommerce, Status, WordPress memory limit |
| HTTPS | Required | Protects logins and payment pages | Certificate active on the domain |
| Web server | Apache or Nginx recommended | Serves requests and pretty permalinks | Ask the host |
| Optional: cURL or fsockopen | Used by WooCommerce and integrations | Payment gateway and API calls | WooCommerce, Status |
| Optional: Multibyte String | Needed for non-English stores | Correct handling of non-Latin text | WooCommerce, Status |
Memory: the requirement most often missed
The 256 MB figure is the WordPress memory limit, set by WP_MEMORY_LIMIT, and it cannot exceed what the host allows PHP. Host defaults vary a lot. WP Engine's platform settings list a 40 MB default for single sites, raisable in wp-config.php up to 512 MB. Kinsta's PHP documentation sets memory per PHP thread at 256 MB on lower plans and 512 MB on higher tiers.
After installing, open WooCommerce, Status: WooCommerce says to verify the optional items on its System Status page, and it is the natural place to check the memory limit too. If it reads below 256 MB, raise it before importing products or running reports.
What subscriptions and memberships add
Action Scheduler is the queue behind scheduled work in WooCommerce Subscriptions. Its FAQ says it processes millions of payments a month for WooCommerce Subscriptions and is initiated by default by WP-Cron and the shutdown hook on admin requests, though it has no hard dependency on WP-Cron. WooCommerce's renewal documentation ties renewals to the woocommerce_scheduled_subscription_payment action.
That makes the scheduler a hidden requirement. The WordPress plugin handbook notes that WP-Cron only runs on page load, so a low-traffic store can process renewals late. Managed hosts offer a server-side alternative: Kinsta runs a server cron on all sites every 15 minutes, WP Engine's alternate cron checks every minute once enabled in the User Portal, and SiteGround documents adding a real cron job in Site Tools and suggests every 30 minutes.
| Extra need | Why a course store has it | Plan feature to look for |
|---|---|---|
| Reliable scheduler | Renewals, expiry and emails run from Action Scheduler | Server cron or a user-configurable cron job |
| Cache exclusions | Cart, checkout and account pages must be dynamic | Documented default WooCommerce exclusions |
| Concurrency | Logged-in buyers and learners bypass cache | Published PHP worker or thread counts |
| Execution time | Bulk imports, exports and reports | A documented limit you can work within |
| Staging | Testing renewals without charging real customers | One-click staging on the plan |
How three managed hosts document the WooCommerce extras
Figures below are from each host's documentation and plan pages on 30 October 2026. They describe what is documented, not measured performance.
| Item | SiteGround | Kinsta | WP Engine |
|---|---|---|---|
| WooCommerce cache bypass | Cart, checkout, my-account, add-to-cart URLs and WooCommerce cart and session cookies bypass Dynamic Caching | Dynamic pages such as checkout are not cached; support adds custom exclusions | Cart, checkout and store pages plus WooCommerce paths, arguments and cookies excluded when WooCommerce is detected |
| Scheduler | Real cron job via Site Tools, 30 minutes suggested | Server cron every 15 minutes on all sites | Alternate cron every minute, enabled in the User Portal |
| Concurrency figure published | Server resources labelled Essential, Premium and Geeky, with no published specs | PHP threads per plan, from 2 upward | Not published per plan on the pages reviewed |
| Memory | Not stated on the plan page | 256 MB per thread on lower plans | 40 MB default, raisable to 512 MB |
| Execution limit | Not stated on the pages reviewed | Not stated on the pages reviewed | 60 seconds; can only be decreased |
| Entry price | StartUp $2.99/mo first invoice, renews $17.99 | Single 35k $35/mo ($30 annual) | Essential $28/mo billed annually |
Worked example: a course store with monthly subscriptions
A creator sells three courses and a monthly membership through WooCommerce and WooCommerce Subscriptions, with about 400 active subscribers. Most renewals fall on the 1st of the month because of a launch.
Requirements check: PHP 8.3, MariaDB 10.11, memory raised to 256 MB, HTTPS active. Scheduler: renewals queued in Action Scheduler need a server cron, because the store is quiet at night and WP-Cron would wait for visitors. Cache: confirm the host's WooCommerce exclusions cover the account page used for subscription management. Concurrency: renewal emails send members back to the site on the same morning, so pick a plan with a published worker or thread count rather than the cheapest tier. Staging: test a renewal on staging with the payment gateway in test mode before the 1st.
Questions to send a host before buying
- Which PHP versions can I select, and is 8.3 or 8.4 available today?
- Which MySQL or MariaDB version runs on this plan?
- What is the maximum PHP memory limit I can set?
- Do you exclude WooCommerce cart, checkout and account pages from page cache by default?
- Is there a server cron, how often does it run, and can I change it?
- How many PHP workers or threads does this plan have?
- What is the maximum execution time, and can it be raised?
- Is staging included, and does pushing staging to live overwrite orders?
Questions before you decide
What PHP version does WooCommerce require?
WooCommerce's requirements page lists PHP 8.3 or greater for WooCommerce 10.8+, tested up to PHP 8.4. It says PHP 7.4+ still works but is past end of life.
How much memory does WooCommerce need?
WooCommerce asks for a WordPress memory limit of 256 MB or greater. Check the effective value under WooCommerce, Status, because host defaults differ; WP Engine's default is 40 MB until raised.
Does WooCommerce need cron?
The requirements page does not list it, but Action Scheduler, which runs Subscriptions renewals, is initiated by WP-Cron by default. Because WP-Cron only runs on page loads, use a host's server cron on a subscription store.
Sources & verification
Product details and prices can change. Check the linked provider before buying.
- WooCommerce Docs: Server requirements Accessed 30 Oct 2026
- WordPress.org: Requirements Accessed 30 Oct 2026
- Action Scheduler: FAQ Accessed 30 Oct 2026
- WooCommerce Docs: Subscriptions renewal process Accessed 30 Oct 2026
- WordPress Plugin Handbook: Cron Accessed 30 Oct 2026
- SiteGround KB: Dynamic Caching configuration Accessed 30 Oct 2026
- SiteGround Tutorials: Replace WP-Cron with a real cron job Accessed 30 Oct 2026
- SiteGround: Shared hosting features Accessed 30 Oct 2026
- Kinsta Docs: PHP settings and PHP threads Accessed 30 Oct 2026
- Kinsta Docs: Server caching Accessed 30 Oct 2026
- Kinsta Knowledge Base: Disable WP-Cron Accessed 30 Oct 2026
- Kinsta: Pricing Accessed 30 Oct 2026
- WP Engine Support: Cache Accessed 30 Oct 2026
- WP Engine Support: Platform settings Accessed 30 Oct 2026
- WP Engine Support: WP-Cron and alternate cron Accessed 30 Oct 2026
- WP Engine: Plans Accessed 30 Oct 2026
Sources link directly to providers. Product buttons may use separately labeled affiliate links. Read our disclosure.