FluentCRM puts an email platform inside WordPress. That means the sending queue, the contact database and your website all compete for the same workers.
Every open, click and send is a database write, and none of them can be cached.
Batch sending driven by the platform scheduler rather than by visitor traffic. On WP-Cron a campaign on a quiet site goes out hours late, or waits for somebody to load a page.
Every open and click writes a row. A list of fifty thousand generates millions, and the reporting queries are the first thing to slow down.
Batch size is set so a large campaign never occupies every PHP worker — otherwise the site is slowest at exactly the moment the campaign lands on it.
Bounce and delivery webhooks are POSTs that have to reach PHP every time. A cached response silently drops them and the reporting quietly drifts from reality.
A CRM's tables hold names, addresses and behaviour. They are encrypted at rest and excluded from cache like any other personal record.
The failure that matters here is silent: the queue stalled, nothing errored, and nobody noticed until somebody asked why the newsletter never arrived.
The load is not the sending itself, it is the writes behind it — one row per contact per event, all landing while the site is still serving pages.
These differ from a standard WordPress site on the same plan, and each follows from running an email platform inside the site.
| Setting | What we do | Why |
|---|---|---|
| Sending schedule | Driven by the platform scheduler rather than visitor traffic | Campaign batches on WP-Cron stall on a low-traffic site, so the emails leave hours late or wait for somebody to visit. |
| Contact and activity tables | Indexed, with a retention policy you set | Every open and click writes a row, so a mid-sized list produces millions and the reporting queries degrade before anything else does. |
| Batch size | Set so sending never occupies every PHP worker | A large campaign firing through the same workers that serve pages makes the site slow precisely while the campaign is landing. |
| Execution limits | Raised for the sending process only, not globally | Batch jobs legitimately need longer than a page request, and raising the limit everywhere lets a slow page hold a worker just as long. |
| Webhook endpoints | Excluded from the page cache entirely | Bounce and delivery callbacks are POSTs that must reach PHP each time; a cached response drops them without any error. |
Every plan includes free migration, daily backups, SSL and 24/7 support.
Free migration, campaigns that leave on schedule, and a site that stays fast while they do.