Why recurring giving matters
One-time campaigns spike and fade. Recurring donors smooth out your cash flow, fund long-term programs, and - study after study in the fundraising world shows - give far more over their lifetime than one-time donors, while costing almost nothing to retain. If you do only one thing to grow your fundraising this year, make monthly giving the default ask.
That's why it's frustrating that most WordPress donation plugins lock recurring giving behind their most expensive tiers. With Donor Merchant it's a radio button on the form, free.
How it works
- Donors pick a frequency - one-time, weekly, every 2 weeks, monthly, quarterly, or yearly - right on the form. You choose which frequencies to offer.
- Stripe subscriptions handle the billing. Each recurring gift creates a proper Stripe subscription, so charges renew automatically and securely without storing anything sensitive on your site.
- Renewals record themselves. When a renewal payment lands, the plugin's signed Stripe webhook logs it as a new completed donation tied to the same donor - your totals and reports stay accurate without any bookkeeping.
- Receipts go out every cycle. Donors get a receipt for the first payment, then a "Thank you for your continued support" email for each renewal instead of a repeat of the first. You get an admin notification.
The donor experience
Choosing "Monthly" updates the donate button in real time - donors always see exactly what they're committing to, like "Donate $26.06/month". Payment happens through Stripe's hosted Payment Element (cards, Apple Pay, Google Pay), and the donor is done in seconds.
Compared with other plugins
| Plugin | Recurring donations |
|---|---|
| Donor Merchant | Free, built in |
| GiveWP | Pro plan - $399/year (verify current pricing) |
| Charitable | Plus plan - $99 first year, $199 renewal (verify current pricing) |
Full comparisons: Donor Merchant vs GiveWP and vs Charitable.
Good to know
- Recurring giving works with both Stripe (subscriptions) and PayPal (subscriptions).
- Set up the Stripe webhook (two minutes) so renewals are logged - the settings screen shows the exact URL and events.
- Quarterly billing is true quarterly - a 3-month Stripe billing interval, not three reminders.