Step 1: understand SiteGround's default cache behaviour
SiteGround's Dynamic Caching is NGINX full-page caching held in server memory. Its documentation says the cache is bypassed when a wordpress_logged_in_ cookie is present, and that URLs including cart, checkout, my-account, add-to-cart, wp-login and wp-cron.php are always served dynamically. A cached page is kept for 12 hours by default.
So a logged-in member already sees uncached pages. The risk is the moment before and after login: registration pages, thank-you pages, unauthorized-access redirects and payment notifications are often reached without a logged-in cookie, and those are exactly the pages MemberPress needs to be dynamic.
Step 2: add MemberPress exclusions in Speed Optimizer
MemberPress's caching guide gives SiteGround-specific steps: first ensure Memcached is disabled, then add thank-you*, account*, login*, register*, unauthorized* and mepr* one by one under Exclude URLs from Caching. If you changed the default page slugs, use your slugs instead of the first four. MemberPress also says to add the /coaching slug if you use CoachKit and the /mpdl slug if you use MemberPress Downloads.
In Speed Optimizer, that field is under Caching, behind the pencil icon next to Exclude URLs from Caching; SiteGround says it accepts relative paths or full URLs, supports the * wildcard, and applies to both dynamic and file-based caching. SiteGround also says it does not cache content for logged-in users by default; leave the Logged-in Users Cache option under File-Based Caching off on a membership site.
| Entry | What it protects | Source |
|---|---|---|
| thank-you* | Post-purchase page and its access details | MemberPress default slug |
| account* | Member account, subscriptions and payment methods | MemberPress default slug |
| login* | Login form and nonces | MemberPress default slug |
| register* | Registration and checkout forms | MemberPress default slug |
| unauthorized* | Redirects for protected content | MemberPress unauthorized handling |
| mepr* | MemberPress endpoints, including payment notifications | MemberPress guide |
| /coaching and /mpdl | CoachKit and MemberPress Downloads | Only if those add-ons are installed |
Step 3: make sure payment notifications are not cached
MemberPress states that some SiteGround servers continue caching Stripe webhook and PayPal IPN URLs even after the standard exclusions are in place. Its fix is an extra .htaccess rule that sets a Cache-Control: private header when the request path matches your webhook URL under /mepr/notify/. Your Stripe webhook URL is in the Stripe dashboard's webhooks page and your PayPal IPN URL is under MemberPress, Settings, Payments.
A cached webhook response is quiet and expensive: Stripe sees a success, MemberPress never processes the event, and renewals or cancellations silently fail to update memberships. MemberPress suggests asking SiteGround support if you are not comfortable editing .htaccess, since a malformed file can take the site offline. After the change, send a test event from Stripe and confirm the transaction appears in MemberPress.
Step 4: replace WP-Cron for reminders
MemberPress says Reminders are sent in the background via WP-Cron and need a functional WP-Cron system; if other emails send but reminders do not, WP-Cron is likely disabled or broken. WordPress's handbook explains that WP-Cron only runs on page load, so a quiet site can send renewal reminders late.
SiteGround's tutorial replaces it in two steps: add define('DISABLE_WP_CRON', true); to wp-config.php, then in Site Tools, Devs, Cron Jobs schedule cd into your site's public_html followed by wp cron event run --due-now. SiteGround suggests every 30 minutes, the twice-per-hour preset. Do the cron job first so there is no gap.
- Create the Site Tools cron job and wait for one run.
- Add DISABLE_WP_CRON to wp-config.php.
- Install WP Crontrol and confirm MemberPress events show recent run times.
- Run MemberPress's own test: turn off Asynchronous Emails and Single Page Checkout, create a reminder set to 0 days after an abandoned signup, then complete only the first page of a paid registration; MemberPress says to wait about an hour for the reminder.
Step 5: plan email around SiteGround's limits
SiteGround's email acceptable-use page sets 400 emails per hour on StartUp, GrowBig, Ecommerce and Coderick, and 800 on GoGeek and Cloud. Each recipient counts separately, and one message can have up to 80 recipients. The service is meant for standard communication; SiteGround points bulk and marketing mail to its Email Marketing product.
For a membership site the arithmetic is simple. If each sign-up triggers a welcome email and a receipt, a launch that signs up 300 members in an hour sends 600 messages, already over a GrowBig limit before admin notifications. MemberPress's reminders troubleshooting page recommends an SMTP plugin such as SendGrid or Mailgun where a host blocks email sent through WP-Cron. Route transactional mail through a dedicated sender before your first launch, not after the first complaint.
| Plan | Emails per hour | Example fit |
|---|---|---|
| StartUp, GrowBig | 400 | Steady sign-ups; risky for launch days without an external SMTP service |
| GoGeek, Cloud | 800 | More headroom, still below a busy launch hour with receipts and reminders |
| Any plan with external SMTP | Set by the email provider | Recommended for receipts, password resets and reminders |
Plan choice and setup order
SiteGround's shared plans list StartUp at about 10,000 monthly visits and one site, GrowBig at about 100,000 and GoGeek at about 400,000, all with staging, daily backups and on-demand backups. First-invoice prices are $2.99, $4.99 and $7.99 a month on a 12-month plan; StartUp and GrowBig renew at $17.99 and $29.99, while the page lists two different GoGeek renewal figures, $44.99 and $29.99 a month, so confirm before buying. Because members bypass cache, use the larger plan if you expect many members online at once.
- Install MemberPress on a staging copy first, using SiteGround staging.
- Disable Memcached in Speed Optimizer before testing protected pages.
- Add the MemberPress exclusions, plus your custom slugs.
- Add the webhook .htaccess rule if a test webhook does not reach MemberPress.
- Create the real cron job, then disable WP-Cron.
- Connect an SMTP service and send a test receipt and reminder.
- Push to live, then repeat the webhook and reminder tests on production.
Questions before you decide
Does SiteGround cache pages for logged-in MemberPress members?
Not by default. SiteGround bypasses Dynamic Caching when a wordpress_logged_in_ cookie is present, and its Speed Optimizer says logged-in users are not cached unless you turn on the Logged-in Users Cache option.
Why should Memcached be off for MemberPress on SiteGround?
MemberPress's caching guide tells SiteGround users to first ensure Memcached is disabled before adding the URL exclusions, as part of its documented setup for SiteGround Speed Optimizer.
Why are MemberPress reminders not sending on SiteGround?
MemberPress says reminders depend on a working WP-Cron. Set a real cron job in Site Tools as SiteGround describes, disable WP-Cron, then run MemberPress's abandoned-signup reminder test to confirm.
How many emails can a MemberPress site send on SiteGround?
SiteGround allows 400 emails per hour on StartUp and GrowBig and 800 on GoGeek and Cloud, counting each recipient separately. Busy launches should send receipts and reminders through an SMTP service.
Sources & verification
Product details and prices can change. Check the linked provider before buying.
- MemberPress Docs: How to set up popular caching plugins with MemberPress Accessed 30 Oct 2026
- MemberPress Docs: Reminders not sending Accessed 30 Oct 2026
- SiteGround KB: Dynamic Caching configuration Accessed 30 Oct 2026
- SiteGround Tutorials: Speed Optimizer caching Accessed 30 Oct 2026
- SiteGround Tutorials: Replace WP-Cron with a real cron job Accessed 30 Oct 2026
- SiteGround KB: Acceptable use of SiteGround's email service Accessed 30 Oct 2026
- SiteGround: Shared hosting features Accessed 30 Oct 2026
- WordPress Plugin Handbook: Cron Accessed 30 Oct 2026
Sources link directly to providers. Product buttons may use separately labeled affiliate links. Read our disclosure.