A volunteer signs up and no confirmation comes — or it is sitting in spam, where a volunteer who now believes they never signed up will not look. Your own test emails do the same. The messages are being sent; the problem is how your site sends them, and a free plugin fixes it.
The fix: install an SMTP plugin
An SMTP plugin makes WordPress hand its email to a real mail service instead of sending it straight from the web server. WP Mail SMTP and FluentSMTP are free, widely used, and both walk you through setup with a wizard; the steps below fit either.
- Go to Plugins → Add New, search for “WP Mail SMTP” or “FluentSMTP”, then select Install Now and Activate.
- The plugin opens its setup wizard. When it asks which service to send through, pick your organization’s existing mail provider (Google Workspace or Microsoft 365) if you have one; otherwise pick one of the email services the wizard offers — Brevo, SendGrid, and several others have free tiers that comfortably cover a volunteer program’s volume.
- Follow the wizard to the end. If it hands you records to add to your domain’s settings (they go by the names SPF and DKIM), add them where your domain is managed — or forward them to your hosting company and ask them to add them. Those records are what tell Gmail and Outlook that your site is allowed to send email for your domain.
- Under VolunteerPress → Email → Settings, make sure the From email is an address on your own domain — not a gmail.com or yahoo.com address, which those providers refuse to accept from anywhere but their own servers.
- Test it: sign up for one of your own shifts using a Gmail or Outlook address, or use Send test to myself when composing, and check that the email arrives in the inbox — not the spam folder.
VolunteerPress itself needs no configuration: once an SMTP plugin is active, every email the plugin sends — confirmations, reminders, cancellations, broadcasts — goes out through it.
What is happening behind the scenes
Out of the box, WordPress hands email to the web server it runs on, and mailbox providers have no reason to trust a web server: it usually is not authorized to send for your domain — the strongest spam signal there is — and on shared hosting it shares its address, and therefore its sending reputation, with every other site on the same machine. The mail “sends” without an error and then lands in spam or nowhere. An SMTP plugin routes the same messages through a service that is authorized for your domain — which is exactly what the SPF and DKIM records prove — and they start landing in inboxes.