Search Over 30,000 FREE Plugins from the Official WordPress Plugin Directory Repository

Give - WordPress Donation Plugin

Democratizing Generosity - Empower your cause: start accepting donations on WordPress with Give.

Give is the most robust WordPress plugin available for accepting donations. Upon activation, Give provides you with powerful features towards helping you raise more funds for your cause from one, effective, platform.

Features Include:

  • Accept Single, Custom, and Multi-level donations
  • Robust reporting features
  • Goal tracking for your campaigns
  • Single-page, simple, and hassle-free donor giving
  • Zero commission charges
  • Own all your donation data
  • Easy to customize and enhance
  • Looks great with nearly all WordPress themes
  • Customizable emails for donors and admins
  • PayPal Standard and Offline Payments included for free
  • Custom user roles for administration
  • Flexible public API for developers
  • Dedicated US-based support
  • Continually developed and improved
  • Updated and thorough documentation

Find out more on the Give website.

Why Use Give for Donations?

Prior to Give there was no single go to solution for accepting donations on WordPress. Sure, Gravity Forms and WooCommerce are great plugins... but they're not developed to work specifically for accepting donations. This can often lead to your users being confused by unnecessary cart systems, incorrect terminology, and clunky user experiences. As an admin, you may have experience wrestling with the various other WordPress donation plugins. Dealing with the lack of features, documentation, and support can be a real pain. There's a better way. Now you have Give and the entire team on your side.

Simple and Pain Free Giving

Give works great right in WordPress in a way that you're already familiar in working. Simply install and activate the plugin to get started. The backbone of Give lies within its optimized donation forms. Forms are what allow you to accept donations anywhere on your website. When creating a form you may specify whether the form is a single or multi-level amount. As well, forms can accept a user provided custom donation amount.

First Time Users

For new users, we suggest reviewing our documentation to get an understanding of how the plugin works prior to using it. If you run into any trouble, we offer free support to help you with your issues, questions, and concerns.

Zero Commission Charges

Give's goal is to "Democratize Generosity". We want to make it easy for everyone to raise funds online. We earn money by selling premium add-ons. The money you raise using Give is yours to support your cause. Period. Add-ons are premium features that enable you to extend the functionality of Give. For example, you can use one of our Add-ons to accept funds through your favorite payment gateway, enable recurring donations, or send donor emails to MailChimp. View all of Give's Add-ons to discover all the ways you can further enhance and extend Give.

Easy to Customize and Enhance

Give is built by WordImpress, our plugins are built from the ground up to be intuitive and easy to use. By following along with our Getting Stated Guide, setting up Give to accept donations on WordPress is simple and easy.

Are you a developer? Give is fully extendable. We built in an advanced templating system similar to the ones found in many of WordPress' top plugins that makes customizing many of Give's frontend elements upgrade proof and extremely flexible. Run into some trouble? We're here to help! Along with the plugin is a support team that is dedicated, fast to respond, and always willing to squash bugs and help troubleshoot.

Here's some great developer-oriented tutorials and docs to help you customize Give to your liking:

Connect with Give

Stay in touch with us for important plugin news and updates:

Contribute to Give

This plugin is open source and we're always looking for more contributors. Whether you know another language, can code like no ones business, or just have an idea, we would love your help and input. To contribute to Give please head over to our website or star/fork/watch the GitHub repository to learn more about what issues we're tackling and the project is developing.

A Tribute to Open Source

"Open source software is software that can be freely used, changed, and shared (in modified or unmodified form) by anyone. Open source software is made by many people, and distributed under licenses that comply with the open source Definition."

~ The Open Source Initiative

Give is a tribute to the spirit and philosophy of open source. We at WordImpress gladly embrace the open source philosophy both in how Give itself was developed, and how we hope to see others build more from our code base.

Author WordImpress
Contributors givewp, wordimpress, dlocc, webdevmattcrom
Tags, donations, charity, churches, commerce, crowdfunding, donate, donation, donation plugin, donations, e-commerce, ecommerce, fundraiser, fundraising, gifts, giving, non-profit, nonprofit, paypal, PayPal Donate, paypal donations, stripe, stripe donate, stripe donations, wordpress donation plugin, wordpress donations, wordpress ecommerce, wp donation
  1. give screenshot 1

    This is an example of a simple, yet powerful, donation form that allows the user to input a custom amount.

  2. give screenshot 2

    Creating powerful donation forms is easy with Give. Simply install the plugin, create a new donation form, set the desired giving options, and publish!

  3. give screenshot 3

    Donation form fields can appear within a modal window (as shown here), be revealed with a nice sliding animation, or display entirely on the page (default).

  4. give screenshot 4

    Give makes the donation process simple and easy for your donors. This helps maximize conversion rates and further empower your cause.

  5. give screenshot 5

    The multi-level donation amount functionality allows you to set different giving levels for your donors to choose from. In addition, you can allow donors to specify custom donation amounts and even set donation goals.

  6. give screenshot 6

    The admin view of a donation form with multi-level amounts configured. Give's flexible options allow you to control whether the amounts output as radio buttons, a select field, or input buttons.

  7. give screenshot 7

    Don't need donation levels? No problem. You can set a default amount and allow your donor's to configure a custom donation amount to create a simple, yet powerful, donation form.

  8. give screenshot 8

    In-depth donation reports allow you to track just how much your cause has raised over time. You can even export the data to CSV or PDF formats.

  9. give screenshot 9

    Extend Give with a robust suite of powerful Add-ons. Accept recurring donations, credit cards, add custom form fields, and more!

  10. give screenshot 10

    Give is thoroughly documented to help you get started quickly and learn basic to advanced features and functionalities.

  11. give screenshot 11

    Give has a dedicated support team to help answer any questions you may have and help you through stumbling blocks.

Minimum Requirements

  • WordPress 4.2 or greater
  • PHP version 5.3 or greater
  • MySQL version 5.0.15 or greater
  • Some payment gateways require fsockopen support (for IPN access)

Automatic installation

Automatic installation is the easiest option as WordPress handles the file transfers itself and you don't need to leave your web browser. To do an automatic install of Give, log in to your WordPress dashboard, navigate to the Plugins menu and click "Add New".

In the search field type "Give" and click Search Plugins. Once you have found the plugin you can view details about it such as the point release, rating and description. Most importantly of course, you can install it by simply clicking "Install Now".

Manual installation

The manual installation method involves downloading our donation plugin and uploading it to your server via your favorite FTP application. The WordPress codex contains instructions on how to do this here.


Automatic updates should work like a charm; as always though, ensure you backup your site just in case.


  • Fix: Issue with conditionals now using new give_is_setting_enabled() function. #1498
  • Fix: Function is_single_price_mode() was not using the correct metakey and returning incorrectly. #1500


  • New: Enhanced admin UI provides easier donation form creation and settings organization overview. #281, #668
  • New: Display "Donate Now" buttons that open donation forms with the click of a button with the new button display mode. #520
  • New: Additional "Tools" menu added to WP-admin. #1046
  • New: Improved System Info page now provides more helpful server and WordPress information which will help support more quickly identify potential issues. #826
  • New: Improved UX/UI for Reports pages. #1114
  • New: Improved UX for admin settings screens that have many tabs to prevent them from bumping to two lines. [#1466](
  • New: Added support to create links to donation forms with a pre-selected donation level. [#1422](
  • Tweak: Give's donation form widget now includes the "Display Option" functionality. #1269
  • Tweak: CMB2 has now been deprecated in favor for Give's settings API. #991
  • Tweak: Only show Add-on activation banner for user who activated the plugin. #1036
  • Tweak: Added backend and frontend validation to prevent the admin from saving the same success and failure page. #724
  • Tweak: Responsive and general CSS improvements for frontend donation forms. #1453, #1258, #1441
  • Tweak: Plugin incompatibility with PHP version 7.1. #1453, #1258, #1441
  • Tweak: Linked the donor's name to their donor profile within donor's report listing screen. #1448
  • Tweak: Field descriptions updated for better user understanding and clarity. #1488
  • Tweak: Bulk deleting transactions does not display a notification enhancement. #850
  • Tweak: Auto fill total donation amount when admin user changes the donation level on the payment edit screen. #884
  • Tweak: If only one payment gateway is enabled the "Select Payment Method" fieldset is now hidden. #1122
  • Tweak: Links to shortcodes are now using offsite shortlinks that can be updated without a plugin update to prevent 404s due to doc structure changes. #1405
  • Fix: "Export Donors" creating multiple instances of the same donor. #1426
  • Fix: Show "untitled donation form" as the default title for untitled forms in the admin. #1276
  • Fix: Show correct donor count on donor listing page. #1497

1.7.2: December 21, 2016

  • Fix: The login within the donation form doesn't refresh due to a bug introduced in 1.7 - it's now fixed and working properly again. #1341
  • Fix: The donation form's "Preview" option doesn't work while the donation form is in "Draft" post status. #1343
  • Fix: Compatibility with the new TwentySeventeen default WP theme. #1353
  • Tweak: Merged similar strings for easier i18n. #1349

1.7.1: December 10, 2016

  • Fix: PayPal gateway is not properly passing the donation form name. #1334
  • Fix: Add filter for Magnific modal options to close when the background is clicked and customize the modal's CSS class name. #1328
  • Tweak: WordPress 4.7 adds a gray border around certain images in wp-admin. #1322

1.7: December 7, 2016

  • New: Custom HTML5 alert messages provide better context for donors. #351
  • New: Give CLI now included in Core for developers. #841
  • New: Donation details screen now displays more information and is mobile responsive. #887
  • New: Email tag {receipt_link_url} added. #581
  • New: Deprecated actions and filters to fix non-donation based terminology. #896
  • New: Function give_date_format() provides a way to adjust the date format based on a given context. #687
  • New: Automate RTL styles with gulp. #995
  • New: If only a single payment gateway is enabled the "Select Payment Method" fieldset is hidden to improve the donor experience. #1122
  • New: Make transaction columns "Donation Form" and "Status" sortable. #866
  • New: Accessibility for various donation form elements. #1181, #1177, #1193, #1186, #1178, #924, #922, #925, #934, #918, #920
  • Tweak: Optimized payment gateway loading and ensure that the proper gateway is returned if donor is brought back to website from an offsite gateway like PayPal Standard. Also, new PHPUnit tests for gateways added. #1119
  • Tweak: Organize data with a logical relationship in grids for table accessibility. #922
  • Tweak: Terminology changes - "Transactions" now called "Donations" and "Payments" now termed "Donation" in WP-admin. #896
  • Tweak: Removed unnecessary Give user roles. #662
  • Tweak: Remove "Form Labels" functions from translation strings. #1003
  • Tweak: a11y + UX - The terms agreement checkbox should be a required field. #1200
  • Tweak: Removed the bulk edit "Price" field. #1252
  • Tweak: The "Donations" column is now sortable, also renamed the "Price" column to "Amount". #1250
  • Tweak: Updated CMB2 to the latest version. #1188
  • Fix: User able to donate minimum amount then custom minimum amount with multi level donation form. #712
  • Fix: Clearing reports cache wasn't working for "Estimated monthly income for this period". #773
  • Fix: Use only one text-domain "give" for i18n. #964
  • Fix: Multiple donation forms on a page with the Terms and Condition checkbox causes jumping when the checkbox is clicked by a secondary form. #1244
  • Fix: Do not render unpublish or trashed form by shortcode. #1289
  • Fix: Allow filter form title on basis of form id and form object. #1290
  • Fix: Slowness on transactions and logs screens in WP-Admin. #1172

1.6.4: November 10, 2016

  • New: {form_title} email tag that outputs only the donation form title and improved the email tag display in the plugin's settings. #943
  • Fix: {donation} email tag was not properly displaying the donation form title along with the level for multi-level donations. #943
  • Fix: Removed all usage of ttf fonts within Give to prevent strict mod_security warnings on certain hosts. #794
  • Fix: If theme doesn't register image sizes there is a PHP Warning on the Give Settings page. #1163

1.6.3: October 26, 2016

  • Fix: PayPal Standard donations payments being set incorrectly to failed. #1152
  • Fix: Custom number of decimals formatting is not working in give_sanitize_amount. #1144
  • Tweak: The "Email Access" message is now filtered via give_email_access_message. #1147

1.6.2: October 4th, 2016

  • New: Internationalization banner now promotes to admins translating Give in languages it doesn't yet support. The banner will only display under Donations > Settings and is dismissible. #1021
  • New: The Give widget has a new "Display Option" field which defaults to "modal" to help improve display in sidebars. #1043
  • Tweak: The Give widget now uses radio buttons for options rather than a dropdown. #1042
  • Tweak: Improved the styles of the Add-on activation banner. #1081
  • Fix: Donation form names with an apostrophe in them were displaying a backslash in the name for the PayPal Standard gateway. #1079
  • Fix: Prevent the donor from saving an empty email address in the [give_profile_editor] shortcode. #999

1.6.1: September 6th, 2016

  • Fix: Donation date discrepancy in transaction details view. #898
  • Fix: Switching donation form in transaction view "-2" appears when no form set. #877
  • Fix: Styling issue on donor profile editor page. #997
  • Fix: Pre-populate First and Last name fields in PayPal Standard. #945
  • Fix: Save default value for donation receipt emails for new installs. #863
  • Tweak: Payment errors log missing gateway data and payment ID column data. #780
  • Tweak: Reverted settings AJAX tabs in preparation for refactor. #937

1.6: August 11, 2016

  • New: Added email tag support to Offline Donation Admin Notification. #846
  • New: Added a "Reset Password" option to the donation form if the user is prompted to login. #723
  • New: Add the ability for admins to switch a transaction to a different form. #429
  • New: Setting to adjust the number of decimal spaces. Give now support zero and three decimal currencies. #738
  • New: Human readable large monetary goal formats. For instance, if you have a goal of $2 million it will not display as "2,000,000" but rather "2 million". #650
  • New: Address Give's right-to-left issues with a complete audit & resolution. #736
  • New: New template added for Give goals. #411
  • New: Easier and more understandable strings according for translators. #451
  • New: Added a new filter "give_pdf_export_logo" to easily customize the export logo. #802
  • New: Customer meta class added for updating and saving donor data for non-users outside usermeta. #653
  • New: Conditional functions introduced is_give_form(), is_give_category(), is_give_tag(), and is_give_taxonomy(). #832
  • New: Donation receipt email previews now allow you to view actual payment data and switch between transactions. Add-on specific email tags will render when actual data is previewed. #274
  • New: Consolidated the number of columns within the transaction details screen. #814
  • Tweak: Update the country dropdown to use the new ISO country codes for islands in Dutch West Indies. #698
  • Tweak: Updated to the latest version of CMB2 & tested compatibility. #670
  • Tweak: Remove invalid @description from PHP inline doc blocks. #733
  • Tweak: Incorporate proper sanitization for i18n strings. #471
  • Tweak: Accessibility page headings added to screens in wp-admin. #820
  • Tweak: Unify wp_die() throughout codebase and add title and HTML status response codes. #828
  • Fix: Transaction list and donor donation list design break on tablet and mobile. #813
  • Fix: Unrendered html in multi-level donation confirmation emails. #754
  • Fix: Text editor does not have same height for visual mode and text mode. #688
  • Fix: Auto populate state list is not working on transaction detail page. #715
  • Fix: Unable to view payment history for donors with unusual characters in the email. #717
  • Fix: Mixed content warning with single donation form thumbnail placeholder image. #768
  • Fix: Secure SSL padlock icon and style no longer broken. #769
  • Fix: Categories and tags are registering permissions incorrectly upon install. #725
  • Fix: Amount field not formatting on focus out & lingering validation tooltip issues. #778
  • Fix: Auto populate the correct donation level when user adds a matching custom amount. #730
  • Fix: The "Export Donation History" csv no longer had the "Form Title" column and contained unnecessary columns. #757
  • Fix: A CSS conflict appeared with some themes when users view the donation receipt in browser and admins preview emails in wp-admin. #818
  • Fix: Prevent editor shortcode generator from displaying for users who don't have access to Give donation form editing. #845

1.5.2: June 31, 2016

  • New: Added an addition "status" column for donation logs. #684
  • Tweak: Hide the submit button for the API Tab in Settings & improved the field description. #681
  • Fix: Deleted unnecessary user capabilities and resolved ones with typos causing issues with viewing and publishing donation forms for admins on new installs. #671 and #662
  • Fix: Donation amount and count get reduced when delete pending donation - thanks @farookibrahim. #677
  • Fix: Broken link when clicking on donors name from transactions list in wp-admin. #680

1.5.1: June 30, 2016

  • Fix: The give_forms post type doesn't register correctly on new installs therefore users weren't seeing the "Add Form" or "Edit Form" options within WP-Admin. #671 and #thread

1.5: June 29, 2016

  • New: Easily reorder payment gateways with the new drag-and-drop gateway reorder capability within settings. #391
  • New: Implement honeypot hidden field to help prevent spam donation form submissions. #424
  • New: Export donation history based on a date range exports in "Reports > Export > Export Donation History"- #414
  • New: Automatically close a form when it reaches its Goal. #168
  • New: Added the ability to delete all test transactions under "Donations > Reports > Tools". #263
  • New: Recalculate stats tool now available to recount individual donor statistics, delete test transactions, or reset all your statistics entirely. #411
  • New: New Give_Payments class added which allows easier development for donation payments. #504
  • New: Added "Test Mode" labels to more easily identify donations made while Give is in Test Mode. #188
  • New: Template wrapper support for the "Catch Evolution" theme added. #632
  • New: Export additional data and control the export columns for donors under Reports > Export > Export Donors in CSV. #630
  • New: South Korean Won added to list of currencies. #624
  • New: Moroccan Dirham added to list of currencies. #381
  • New: South African Rand added to list of currencies. #624
  • Tweak: Now when a multi-level donation is made the multi-level labels will display on the confirmation page, within the transactions listing page, and also attached to the {donation} email tag which outputs the email receipts. #175
  • Tweak: Added donor name to the donation receipt and reordered the rows for a more logical flow. #645
  • Tweak: Removed the French translation files included because, thanks to all French polyglots, we have been translated in full
  • Tweak: Removed Grunt in favor of Gulp for compiling pot files. #666
  • Tweak: Removed hosted translations in favor of public GlotPress translations
  • Tweak: Rewrite of give_get_current_page_url to fix issues with domain mapped server with $_SERVER['SERVER_PORT']. #622
  • Fix: Transactions Status Changes Causes Donation Form Income Amounts + Goals to Not Calculate Correctly. #188
  • Fix: Per form Offline donations gateway's "Request Billing Information" checkbox doesn't properly override the global setting. #649
  • Fix: Reports filter custom date range option when selected causes the refresh reports button to overlap. #626
  • Fix: Reports graph tooltips not displaying currency properly formatted. #620
  • Fix: Attaching a new user to a donor isn't updating. #644
  • Fix: Remove shortcode generator button when visual editor disabled. #638
  • Fix: Bug with shortcode & show_content argument when two of the same forms on a page displaying the content incorrectly when set to none. #634

1.4.5: May 12, 2016

  • Hotfix: Fixed a bug introduced which causes the custom amount minimum to be improperly calculated. #616

1.4.4: May 12, 2016

  • Hotfix: Version 1.4.3 breaks modal popup display method. #615

1.4.3: May 12, 2016

  • Fix: Update the email address of a customer record when the email of a user is updated via the WordPress profile updater. #607
  • Fix: Bug if the donation form's custom amount minimum is set to 0.00 the warning message would still display. #604
  • Fix: Bug with email access and the Donation History shortcode pagination not counting properly. #600
  • Fix: Fixed incorrect meta_key usage within is_single_price_mode() method which was returning false positives. #602
  • Update: Updated install process to account for WP multisite creation and deletion. #609

1.4.2: April 26, 2016

  • Fix: Bug with Custom Amount minimum and currencies with "," for decimal separator miscalculating the amounts. #591
  • Fix: Tooltips weren't loading properly when clicking the "Cancel" button after opting to create an account. #500
  • Fix: Closing Give Donation Modal Displays "give-hidden" elements in form incorrectly. #582
  • Fix: Ensure email is set in PHP session to view donation history after donating properly without having to perform additional email access request. #587
  • Tweak: Removing the top loading animation when changing donation amounts to reduce theme compatibility issues with it. #556
  • Tweak: Replaced JS get query parameter function with better function that doesn't throw unreachable code warning in console and works similarly. #586
  • Tweak: New changelog.txt file to offload older version changelogs; also added release dates to versions for better tracking. #596
  • Tweak: Hid the "ID" column from the multi-level repeater table because it served no real purpose for admins. #554

1.4.1: April 12, 2016

  • Fix: Member-only donation forms don't display member-only validation responses properly. #551
  • Fix: Email access cookie path set incorrectly breaks viewing details. #570
  • Fix: Validation conflicts with MemberPress - thanks @jimwebb. #568
  • Fix: If no Give logs under Settings > Reports > Logs then the log navigation does not display. #564
  • Fix: Login/Cancel/Register within donation form don't trigger float-labels. #574
  • Fix: Login/Cancel/Register within donation form has problems maintaining gateway-specific fields when changing gateways. #574
  • Tweak: Deprecated give_no_guest_checkout() in favor of give_logged_in_only(). #551
  • Tweak: Clean up '&amp' encoded ampersands for PayPal standard. #562
  • Tweak: Added a check for DOM and MBString PHP extensions in System Info tab. #560

1.4: April 5, 2016

  • New: Donors now have the ability to view their donation history using only the email they donated with via the new "Email Access" functionality that can be enabled under Settings > Advanced. #496
  • New: Unit tests added for Give_Donate_Form class - thanks @cklosowski. #517
  • New: Added new "Goal Format" option which will allow totals to be output based on a percentage rather than amount; also added more filters for better control over goal output. #387
  • New: Added links to plugin settings page and documentation on the WordPress plugin listing page. #531
  • New: Featured image size option for single donation forms found under Settings > Display Options. #535
  • Tweak: Sessions are only created when a donor performs an action. This will help Varnish caching on some Managed WordPress hosts and increase performance of the plugin. #521
  • Tweak: Removed usage of the image size "give_form_thumbnail" in favor of "give_form_single". #412
  • Tweak: Increased modal windows z-index value. #524
  • Tweak: Added additional checks to the "System Info" settings tab. #506
  • Tweak: Removed Give's custom thumbnail size in favor for using WordPress' large media size to prevent image quality issues and excess image creation. #535
  • Tweak: Use $_SERVER['HTTP_HOST'] rather than $_SERVER['SERVER_NAME'] in give_get_current_page_url(). #530
  • Fix: Email compatibility with Mandrill WP plugin. #548
  • Fix: Add trailing slash to home_url() to prevent homepage redirect. #545
  • Fix: Problem give_format_amount_decimals return always 2 decimals. #467
  • Fix: "Custom Amount Text" should not show if the field is left blank for set donation forms. #522
  • Fix: Theme compatibility with Zerif and Customizr for single give donation forms. #537
  • Fix: Allow for $0 set donations to be saved properly. #529
  • Fix: Transactions with a "cancelled" status are not shown in the wp-admin Transactions table - thanks @pryley. #514
  • Fix: Alternative to fopen provided for PDF exports. #511

See full changelog here »

Where can I learn more about how to use Give?

We have extensive documentation on installing and configuring Give on our website. We suggest starting with the Give 101 article.

How can I get support for Give?

We work hard to the best support possible for Give. The Support Forum is used for free community based support. We continually monitor the forum and do our best to provide ensure everyone gets an answer. Priority support is given to users who have an active license for one of Give's Add-ons or Bundles. This is email based support

Do you have any demos?

Yes! We have several live examples of Give displaying usage with many popular WordPress Themes here.

Do you have Case Studies of Nonprofits using Give?

Yes! We call them "Give Stories". You can read them all here.

How is Give better than *Gravity Forms* for accepting donations through WordPress?

First off, we love Gravity Forms. It's a great plugin and has a lot of good features for accepting donations. That being said, it lacks substantial donation reporting features and requires a developer license ($199/yr) to accept credit card payments on site.

How is Give better than *WooCommerce* for accepting donations on WordPress?

We also really like WooCommerce. It's hands-down the most robust eCommerce platform for WordPress. But that's also the issue. Typically you don't need a cart system, shipping, or tax calculations to accept donations. On top of that, customizing the plugin's terminology is a daunting task. You never want your users to receive an "invoice" for the donation "product" they "purchased". Rather, you'd like for them to receive a receipt for the donation they gave. WooCommerce can do donations, but that's not what it was designed for.

Version 1.8.1

Requires WordPress version: 4.2 or higher

Compatible up to: 4.7.2

Last Updated 15 Feb 2017

Date Added: 07 Apr 2015

Plugin Homepage


4.8 stars
175 ratings


Not Enough Data

Works: 0
Broken: 0