Server Requirements
Benecaster is a WordPress plugin. It runs on any WordPress hosting that meets the requirements below.
Minimum Requirements
| Component | Minimum version |
|---|---|
| PHP | 8.2 |
| WordPress | 6.4 |
| MySQL | 5.7 |
| MariaDB | 10.3 (if used instead of MySQL) |
PHP 8.2 is required. Benecaster uses readonly classes, enums, and other 8.1+ features throughout. Sites running PHP 7.x or 8.0 will not activate the plugin.
Hosting Type
| Subscriber count | Recommended hosting |
|---|---|
| Under 50 | Shared hosting is adequate |
| 50–250 | VPS or managed WordPress hosting; object caching recommended |
| 250–1,000 | Managed WordPress with Redis or Memcached as a baseline; PHP-FPM + OPcache required |
| 1,000+ | Managed WordPress with Redis or Memcached required; see below |
Feed requests are the primary source of traffic Benecaster generates. Each subscriber’s podcast app polls their private RSS URL periodically. Benecaster caches feed content by tier — 1,000 subscribers across 4 tiers produces 4 cached documents rather than 1,000 separate requests to generate. With a warm cache, a feed request is lighter than a standard WordPress page load.
Object Caching — Redis, Memcached, or LiteSpeed Cache
Object caching is the single most impactful hosting feature for large subscriber counts.
Without object caching, Benecaster stores cached feeds in the WordPress database and reads them from there on every request. This works well at small scale but adds a database query to every feed poll as subscriber counts grow.
With Redis or Memcached (or LiteSpeed Cache on LiteSpeed servers), the feed cache is held in memory. Cache hits become memory reads with no database involvement — effectively zero cost per feed request.
When to add object caching:
- 500+ active subscribers — object caching is strongly recommended. Without it, feed poll volume will noticeably increase database query load, particularly during peak listening hours.
- 1,000+ active subscribers — object caching should be considered a requirement. The load from concurrent feed polls without a memory cache will degrade site performance for all visitors, not just podcast subscribers.
Supported options:
| Solution | Hosts / setup |
|---|---|
| Redis | Available on most managed WordPress hosts (WP Engine, Kinsta, Cloudways, etc.). Requires the Redis Object Cache plugin or equivalent. |
| Memcached | Available on some managed hosts. Requires the Memcached Object Cache drop-in or equivalent. |
| LiteSpeed Cache | Available on LiteSpeed server hosting (A2 Hosting, Namecheap, etc.). The LiteSpeed Cache plugin provides both page caching and object caching; object cache must be enabled in plugin settings. |
Benecaster uses the standard WordPress wp_cache_* API. Any object cache that hooks into that API works automatically — no Benecaster configuration required.
Download Proxy
If you enable Benecaster’s optional download proxy (for per-download analytics), every audio download generates an additional WordPress request before redirecting to the audio file URL. This multiplies request volume. For shows with large active audiences and frequent episode releases, enable the download proxy only on hosting with PHP-FPM, OPcache, and Redis/Memcached.
Membership Plugin Requirements
Benecaster requires one of the following subscription plugins to manage subscriber access:
- MemberPress (any current version)
- WooCommerce Subscriptions (any current version)
- Paid Memberships Pro 2.0 or higher
- Restrict Content Pro 3.0 or higher
Phase 2 will add built-in subscription management — no external plugin required.