This is a research guide based on cited documentation. It is not a report of firsthand testing. Our editorial method

Step zero: what each host allows

HostPublished positionWhat to do
KinstaLoad testing (stress testing your site with simulated traffic) is prohibited on the MyKinsta platformDo not load test a Kinsta site; use single-user speed tests and ask support about capacity
WP EngineAcceptable use policy does not mention load testing; bars excessive burdens on systems and requires prior written approval for any vulnerability or penetration testingAsk support in writing before testing and keep the reply
DigitalOceanAcceptable use policy prohibits any deliberate attempt to overload a system and flooding techniquesAsk support for written confirmation before testing even your own Droplet
SiteGroundFair-use article sets CPU-seconds red-flag values and says extreme or repeated over-usage may lead to limited accessAsk support first; a test can trip the same limits your students would

Why membership sites need logged-in scenarios

A test that only requests the home page measures the page cache, not your capacity. Logged-in members, lesson pages with progress tracking, quizzes and checkout all run PHP and database queries on every request. Kinsta's site caching documentation, for example, says its server cache does not cache dynamic pages that are ineligible for caching, and that support can configure rules to bypass the cache for specific pages such as login, account and registration pages.

k6 handles this well: its documentation says cookies are managed automatically by default in the virtual user's cookie jar, so a script that logs in once per virtual user and then walks lesson pages behaves like real members. Create dedicated test accounts on the staging copy, never real student accounts, and use the payment gateway's test mode.

ScenarioShare of virtual usersWhat it exercises
Anonymous sales pageSmallPage cache and CDN
Log in and open dashboardMediumAuthentication, session cookies, uncached dashboard
Open lesson and mark completeLargestCourse plugin queries and progress writes
Submit a quizSmallWrite-heavy requests and grading
Checkout in test modeSmallUncached cart and payment flow

A safe staging method

  • Clone production to staging and confirm staging has the same PHP version, object cache and plugins as the plan you are evaluating.
  • Disable outbound email and webhooks on staging so test enrollments do not mail anyone or hit live payment endpoints.
  • Run a smoke test first: very few virtual users for a minute or two to prove the script works. Grafana's k6 guide describes smoke tests as minimal load for seconds to minutes.
  • Run an average-load test at your expected concurrent members for 5 to 60 minutes, which is the range k6 documents for average-load and stress tests.
  • Only with written permission, step load upward in stages and stop at the first sustained error increase; do not run open-ended breakpoint tests on shared infrastructure.
  • Encode pass criteria as k6 thresholds, for example http_req_failed below 1% and p(95) of http_req_duration below a target; k6 exits with a non-zero code when a threshold fails.

Numbers to record at every step

MetricSourceWhy it matters
Concurrent virtual usersk6 outputThe load level for that step
Requests per secondk6 outputThroughput you can compare across hosts
p95 response time per scenariok6 http_req_durationWhat slow members experience
Error ratek6 http_req_failedFirst sign of exhausted PHP workers or timeouts
Cache status header per scenarioResponse headersConfirms logged-in pages were really uncached
CPU and memory, or CPU secondsHost dashboard or server monitoringMaps the test to plan limits

Comparing results against plan limits

Shared plans publish resource ceilings you can compare against. SiteGround's fair-use article sets CPU-seconds red-flag values of 1,000 per hour and 10,000 per day on StartUp, 2,000 and 20,000 on GrowBig, and 4,000 and 40,000 on GoGeek, plus inode limits of 200,000, 400,000 and 600,000 and a recommendation to keep databases up to 1,000MB.

Worked example with an assumed figure: if your staging monitoring showed a logged-in lesson view costing 0.3 CPU seconds (an illustration, not a measurement), 4,000 lesson views in a peak hour would use about 1,200 CPU seconds, above StartUp's hourly red-flag value and within GrowBig's. Measure your own per-request cost; course plugins, quiz settings and object caching change it a lot.

On a VM such as a DigitalOcean Droplet there is no published CPU-seconds ceiling; the limit is the Droplet's vCPU and memory. The useful output is the concurrency at which p95 time or errors start rising, which tells you whether to size up before a launch.

When not to load test

  • On any host that prohibits it, including Kinsta per its documentation.
  • Against production during enrollment periods or when real members are online.
  • When you have not disabled outbound mail, webhooks and live payment keys on the copy.
  • When a simpler check answers the question: a single logged-in page timed with caching bypassed often shows the bottleneck without any load.

Questions before you decide

Can I load test a site hosted on Kinsta?

Kinsta's speed and load testing documentation says load testing is prohibited on the MyKinsta platform and refers to its terms of service.

Which k6 test type should I start with?

A smoke test with minimal load to validate the script, then an average-load test at expected traffic. Grafana's k6 documentation describes average-load and stress tests as typically 5 to 60 minutes.

Sources & verification

Product details and prices can change. Check the linked provider before buying.

  1. Kinsta: Speed and load testing Accessed 29 Oct 2026
  2. Kinsta: Site caching Accessed 29 Oct 2026
  3. WP Engine: Acceptable use policy Accessed 29 Oct 2026
  4. DigitalOcean: Acceptable use policy Accessed 29 Oct 2026
  5. SiteGround KB: Fair use of SiteGround hosting Accessed 29 Oct 2026
  6. Grafana k6: Load test types Accessed 29 Oct 2026
  7. Grafana k6: Thresholds Accessed 29 Oct 2026
  8. Grafana k6: Cookies example Accessed 29 Oct 2026

Sources link directly to providers. Product buttons may use separately labeled affiliate links. Read our disclosure.

Your decision at a glance

Compare the options

Full comparison

Documentation-based guidance. No tested ranking or performance score.

Managed WordPress

Kinsta

Consider it for
Use Kinsta Single 20GB, listed at $35/month, when a WordPress course site needs published PHP-capacity controls and a staging rehearsal.
Starting cost
Single 20GB listed $35/month on 2026-09-15; first-month promotions and annual billing change the cash invoice
Before you choose
Do not treat visitor allowances as class concurrency. No plan here is verified for a specific learner count.

Checked 15 Sep 2026 · Pricing source

View Kinsta plans

Direct provider link; no affiliate tracking added by this publication. Link disclosure

Managed WordPress

WP Engine

Consider it for
Use WP Engine Essential when the quoted plan covers your plugin stack, membership cache rules, and an isolated staging copy.
Starting cost
Essential 1-site card displayed $336/year on 2026-09-15 with promotional first-year pricing; confirm undiscounted checkout
Before you choose
Skip if you cannot rehearse membership access and payments at the destination. No measured speed advantage is claimed.

Checked 15 Sep 2026 · Pricing source

View WP Engine plans

Direct provider link; no affiliate tracking added by this publication. Link disclosure

Shared hosting

SiteGround

Consider it for
Use SiteGround StartUp, advertised at $2.99/month for a prepaid first 12 months then $17.99/month, when one WordPress site needs shared hosting rather than a server you administer.
Starting cost
StartUp first-term $2.99/mo prepaid 12 months, renews $17.99/mo on 2026-09-15 (world page: ex. VAT); 1 website, 10GB, ~10,000 visits marketing estimate
Before you choose
Visit marketing estimates are not class concurrency. Renewal is $17.99/mo after the prepaid term. No course-capacity test is claimed.

Checked 15 Sep 2026 · Pricing source

View SiteGround plans

Affiliate link: we may earn a commission on an eligible purchase. Link disclosure

Cloud VMs

DigitalOcean

Consider it for
Use a DigitalOcean Droplet when you will administer a cloud VM, not when you need managed WordPress hosting.
Starting cost
Basic Droplet listed from $4.00/mo (512 MiB, 1 vCPU, 10 GiB SSD, 500 GiB transfer) on 2026-09-15; 3 static sites listed free. Confirm live checkout and bandwidth overage.
Before you choose
A listed VM size is not a WordPress or course-capacity claim. You own OS, updates, backups, and mail unless a separate product says otherwise. The static-site free tier is not a course site.

Checked 15 Sep 2026 · Pricing source

View DigitalOcean plans

Direct provider link; no affiliate tracking added by this publication. Link disclosure