Send Manual Notifications with Gravity Forms

Email users who have submitted your forms whenever you need to; not just when the form is submitted.

September 14, 2021 Migrated snippet to the Snippet Library.

September 14, 2021 Migrated snippet to the Snippet Library.

September 14, 2021 Migrated snippet to the Snippet Library.

This simple snippet allows you to send notifications manually to users who have submitted your forms and provided an email.

  • Email all users who submitted the form
    Example: provide updates to users who signed up for your event
  • Email any user who selected a specific value
    Example: notify users that the option they selected for a product is no longer available

Need to schedule your notifications?
Gravity Forms Notification Scheduler gives you the power of perfect timing. Send notifications at a specific date and time, before or after dates submitted on a form, on a recurring basis forever, or ended after some time. This allows you to create robust drip campaigns, send event reminders, upsell customers close to their subscription renewal date, or other use cases — without writing any code.

Want to email all users who have submitted a form?
Gravity Forms Email Users gets the job done even faster without no code and minimal configuration!

Getting Started

1. Install Snippet

The snippet will add support for the “Send Manually” notification event. By default there is only one notification event so Gravity Forms does not show the setting on the Notification edit screen; however, if you have more than one Notification Event, Gravity Forms will display the “Event” setting.

  1. Make sure Gravity Forms is installed and active.
    Need a license? Buy Gravity Forms
  2. Copy and paste the entire snippet into your theme’s functions.php file.
    Having trouble installing the snippet?.
  3. No code configuration required.

2. Create a New Notification

  1. Select “Send Manually” from the list of Notification Events
  2. Configure the notification as you would any other notification

3. Send Manual Notification

We will use Gravity Forms’ Resend Notifications feature to send our manual notification.

  1. Go to the Entry List page.
  2. Check the checkbox next to each entry to which you would like to resend the notification.
  3. Select “Resend Notifications” from the Bulk Actions drop down.
  4. All of your notifications will appear; select your manual notification from the list.
  5. Click the “Resend Notifications” button to send your manual notification.

More Examples

Send notifications for specific entries

Follow the steps above.

Send notifications for all entries with a specific option selected

There are two ways to accomplish this. You can add the conditional logic to the notification itself – or – you can filter the entries displayed in the Entry List view and only send to the filtered list.

Which is better? I prefer filtering from the Entry List view. It’s more flexible and allows you to more easily reuse the same manual notifications (when it makes sense).

  1. Go to the Entry List page.
  2. Use the entry filter to narrow down the list of entries based on your criteria.
  3. Select all of the filtered entries.
  4. Follow the instructions above (starting from step #3) to send your manual notification to the selected entries.

With that said, if you find you need more complex filtering, the conditional logic setting on the notification will allow you to apply multiple filters which may be required for your use case.

Was this helpful?

We’d really love to hear how you use this functionality. Seriously, I’m not just saying that. Let us know in the comments!


  1. AeroStar
    AeroStar August 7, 2021 at 3:15 pm

    Just ran into this great post.

    Read other posts asking a similar question, but thought I’d ask again …

    Is their any way your code snippet can be updated to allow the scheduling of automated reminders for appointments made via plugins such as gAppointments or Simple Schedule Appointments? If not, any thought on how we can integrate this capability (auto-reminders, not manual) into Gravity Forms?

    Thank you!

    1. Samuel Bassah
      Samuel Bassah Staff August 19, 2021 at 10:21 am


      I’m not really sure about the extent of customization that will be needed to get this snippet working with the other plugins. If you’ll need a developer to assist you, you can hire one from


  2. jasim
    jasim May 28, 2020 at 2:45 am

    is it possible to re send emails based on another form submission results i have 2 form One for registration and the other one for survey i want to re send the emails those who registered and didn’t submit the survey form

    is this possible?

    1. Ryan Donovan
      Ryan Donovan May 28, 2020 at 10:11 am

      Hello Jasim, something like this would require a certain flow to check and see if one form has been submitted and another has not been. I would check out the GravityFlow plugin and see if this is something that would work for your needs.

  3. arvind
    arvind April 27, 2020 at 1:37 pm

    Hi there

    Thanks for this awesome snippet. This works well

    The email users perk however may not be sending emails to unique values – instead it may be sending an email to every entry of that form without filtering out duplicate email ids – which may be the result of duplicate submissions over a long period of time. Have sent a line to support


    1. arvind
      arvind April 27, 2020 at 1:40 pm

      Just one more thing I added some email ids to the black list but email users perk may not be considering those and still sending them Thanks

  4. Sam
    Sam October 15, 2018 at 9:43 pm

    This is a great snippet that can be added to perform alot of custom functionality. I am just curious, why when you abort the notification, do you have to remove the filter before passing the ? remove_filter( ‘gform_pre_send_email’, array( $this, ‘abort_next_notification’ ) ); Why not just send the arg and finished? What is the point of removing the filter? Thanks.

    1. David Smith
      David Smith Staff October 16, 2018 at 7:54 am

      Hi Sam, the issue is that we only want to abort the very next notification not all subsequent notifications.

  5. Ambuj
    Ambuj September 9, 2018 at 2:01 am

    Hi David – Thanks for these wonderful Gravity Form snippets. I am developing a social cum profit online start up to help needy patients get medical services at affordable rates. I have a setup where medical service providers can fill out Gravity Forms to list their services on my site (with annual subscription of 365 days post submission of the form), and I want them to be sent automatic email notifications as payment reminders on the expiry of their subscription period.

    I have tried using these 2 snippets of yours (populate end date field to 1 year from current date, and send manual notifications with gravity forms – both snippets work independently) to implement this automatic email notification feature based on conditional logic in notifications settings (to check if populated end date is equal to the current date). However, in the form notification settings –> conditional logic, I can’t see the option to select the populated end date field 1 year, is there a snippet to make it show up or any other workaround for solving this issue. Any help will be much appreciated. Thanks again.

    regards, Ambuj

  6. Carrie Smaha
    Carrie Smaha May 24, 2018 at 3:50 pm

    Is this snippet still supported? Is the 2015 code compliant with 2018 standards and Gravity Form updates?

    1. David Smith
      David Smith Staff May 25, 2018 at 4:43 am

      Hi Carrie, it is mostly likely still working. Very few snippets actually broke with the major GF 2.3 release. Let us know if you encounter any issue. :)

  7. gform_notification_events – Gravity Forms Documentation October 5, 2017 at 4:48 pm

    […] This example (by Gravity Wiz) adds the “Send Manually” notification event. This can be used in combination with the Resend Notifications feature to manually email users have submitted your form on demand. Read the full tutorial for details. […]

    1. David Smith
      David Smith Staff September 10, 2016 at 9:03 am

      I do not know of a solution that will allow you to automatically send a notification at a later date.

  8. James Dunn
    James Dunn March 18, 2016 at 11:21 am

    Hey David.

    This is “almost” exactly what I was looking for and I think I can make it work by just building the conditional logic the way I need it to make it work. But, I was looking for a way to send an email to a specific individual that has submitted an entry to a form (assuming you’ve gotten their email address).

    Any thoughts on this? I was thinking I had seen a plugin to do that, but I think it must have been this tutorial that I had seen.

    1. David Smith
      David Smith Staff March 18, 2016 at 12:31 pm

      Hi James, you search for the individual on the Entry List view, you can select the entry and “resend” the manual notification to only that entry (individual).

    2. James Dunn
      James Dunn March 18, 2016 at 11:58 pm

      I think you misunderstood what I wanted. I don’t want to resend the notification – I want to send a custom email to just that person. For example, I goofed and required the registrants for a golf tournament to select whether they wanted a mens or ladies golf shirt – conditional logic then shows the list of mens sizes or ladies sizes depending upon their answer. However, in my haste, I forgot to ALSO make that field “required”, so about half the registrants didn’t bother to select a size after they chose mens or ladies. I was wanting to go through each of those entries and send those people an email asking them for their shirt size.

    3. David Smith
      David Smith Staff March 19, 2016 at 12:23 pm

      Hi James, this functionality is based on the idea of using Gravity Forms’ resend notifications feature. When you create a manual notification, you aren’t actually resending it, you’re just using the resent feature to send it when you want.

      In your case, you need to find the entries that correspond to the orders with missing information. You can then “resend” (aka send for the first time) the manual notification you’ve created that addresses the missing information.

    4. James Dunn
      James Dunn March 20, 2016 at 5:14 pm

      Now I got it David. Thanks for the heads up…that’s actually so simple that I missed it. LOL

  9. Ed Nailor
    Ed Nailor March 1, 2016 at 3:11 pm

    I would like to be able to do this from the front side. Say a client is coming back to my site, and I have the entry ID for their submission. I would like to have a button for them to click, or to automatically send upon page load, to get a copy of the notification.

    Can this be modified to do this?

    1. Brittny Hansen
      Brittny Hansen June 16, 2021 at 1:44 am

      I know this is years later but, Ed, did you ever find a good solution for this? I’m looking to implement similar functionality in a project I’m working on. Thought I would check before I got too far into it if there was already an easy solution out there :) I’m considering using JavaScript to edit a form field upon the edit page load and sending the emails out based on the value of that field… but it seems like there ought to be a more elegant and user-proof solution.

    2. Samuel Bassah
      Samuel Bassah Staff June 16, 2021 at 8:24 am

      Hi Brittny,

      I’m not entirely sure if this snippet will work for you, but it allows you to create custom notification events, that are triggered based on entry field update conditions. You may want to give this a try as a starting point.


    3. Brittny Hansen
      Brittny Hansen June 17, 2021 at 4:03 pm

      oooo, Thanks Samuel! That’s really helpful, I will definitely use that as I work on building this out. Thanks for sharing!

    4. Samuel Bassah
      Samuel Bassah Staff November 18, 2022 at 5:24 am

      Hi Joel,

      You’ll need to use the, Entry is Updated, configuration with the snippet. If you already have that in place and it still not working for you, then we’ll need to take a look at your setup. Since you’re already a Gravity Perks subscriber, I’m going to send you an email to request further information so we can assist you better.


  10. Volatil
    Volatil November 5, 2015 at 7:42 am

    Hi, David!

    I really appreciate your work, so keep doing it – I think that is very helpful for all of us and it it’s worth it.

    I am wondering if there is a snippet or kind of workaround to send a different notification or confirmation after a ceratin number of entries. There is an option to limit the entries but after that the form is inactive. I want my form to remain active but the notification and confirmation text to be different. Is there any code for that option so far?


    1. David Smith
      David Smith Staff November 22, 2015 at 6:10 pm

      Hi Volatil, I don’t have a ready solution for this one. The basic idea is that you need some custom conditional logic that does an entry count and then compares it to your threshold. If you’re interested in commissioning this functionality, get in touch.

  11. Cesar
    Cesar October 24, 2015 at 6:28 am

    Hi David, i’ve copied the entire snippet but I get this error:

    “Fatal error: Call to undefined function add_filter() in …/wp-includes/functions.php on line 645”

    Line 645: add_filter( ‘gform_notification_events’, array( $this, ‘add_manual_notification_event’ ) );

    What can I do? Thanks!

    1. David Smith
      David Smith Staff October 24, 2015 at 1:15 pm

      Hi Cesar, make sure you’re adding this to your theme’s functions.php file and not the /wp-includes/functions.php file. The path will be something like: /wp-content/themes//functions.php

  12. Giacomo
    Giacomo September 16, 2015 at 5:36 am

    Hi David, i’d like to drip the automatic email notification on gravity form. it’s possibile? For example to set a notification after 24 hours, or 2 day by submitted form There is a way?

  13. dm
    dm August 5, 2015 at 11:03 am

    I am trying to use the Send Manual Notifications with Gravity Forms

    When I place the snippet in the functions php file I get Parse error: syntax error, unexpected T_FUNCTION in /home/goodwork/public_html/registration/wp-content/themes/gwn/functions.php on line 614

    The code at 614 is add_filter( ‘gform_before_resend_notifications’, function( $form ) { any help would be appreciated. Thx

    1. David Smith
      David Smith Staff August 7, 2015 at 9:27 am

      Hi Darren, I’ve updated the snippet to no longer use anonymous functions. You’re probably running an older version of PHP where they are not supported. You can get the latest version above.

    1. hannanstd
      hannanstd May 8, 2015 at 5:05 am

      hi . it not working with conditional logic and send emails to all entries. i write a snippets to work with conditional logic.

    2. David Smith
      David Smith Staff May 8, 2015 at 8:50 pm

      You were right, hannanstd. This was not working with the notification conditional logic. I’ve added support for this based on your code. Thanks!

Leave a Reply

Your email address will not be published. Required fields are marked *

  • Trouble installing this snippet? See our troubleshooting tips.
  • Need to include code? Create a gist and link to it in your comment.
  • Reporting a bug? Provide a URL where this issue can be recreated.

By commenting, I understand that I may receive emails related to Gravity Wiz and can unsubscribe at any time.

Grab a bundle of free Gravity Forms plugins

Enter your email and receive our most popular free plugins and snippets, plus access to hundreds of others.

This field is for validation purposes and should be left unchanged.