Skip to content
BrightLeaf Digital
BrightLeaf Digital
  • Plugins
    • GravityOps Bundle
    • Integrate Asana with Gravity Forms
    • Mass Email Notifications for Gravity Forms
    • Recurring Form Submissions
    • Kanban View for GravityView
    • Global Variables
    • Folders4Gravity (free!)
    • GravityOps Search (free!)
  • Snippets
  • Agencies
  • Support
    • Request Support
    • Plugin Documentation
  • Blog
  • Account
    • Freemius Login
  • Contact
BrightLeaf Digital
  • Plugins
    • GravityOps Bundle
    • Integrate Asana with Gravity Forms
    • Mass Email Notifications for Gravity Forms
    • Recurring Form Submissions
    • Kanban View for GravityView
    • Global Variables
    • Folders4Gravity (free!)
    • GravityOps Search (free!)
  • Snippets
  • Agencies
  • Support
    • Request Support
    • Plugin Documentation
  • Blog
  • Account
    • Freemius Login
  • Contact

BL Digital Guidelines & Policies

2
  • Using the Plugin on a Client Site
  • BrightLeaf Digital Refund Policy

Integrate Asana with Gravity Forms

29
  • Getting Started
    • Integrate Asana with Gravity Forms — Welcome & Overview
    • Finding the Plugin in Your Dashboard
  • Setup
    • Connect Asana (OAuth)
    • Create Your First Feed (5-Minute Quickstart)
  • Settings Reference
    • Feed Settings — Name, Conditional Logic & Trigger
    • Asana Task Settings Reference
    • Feed Triggers
    • Mapping Custom Fields
    • Workflow Steps — Create Task
    • Workflow Steps — Update Task
  • How-to Guides
    • Use Conditional Logic to Route Tasks
    • Choosing the Right Feed Trigger
    • Attach File Uploads to Tasks
    • Use Asana Custom Fields as Automation Signals
    • Workflow Steps: Create Task
    • Workflow Steps: Update Task
  • Troubleshooting
    • Basics
    • Reconnecting / Resetting Credentials
    • Task Creation Failed → Backup Task Behavior
    • Items Not Showing in Drop-downs
    • Feed Page Unavailable
    • Task Description Caused Errors
    • Duplicate Tasks
  • Explanations & Concepts
    • OAuth and Scopes
    • Permissions & Workspaces
    • How Feeds Run
    • Performance Considerations
  • Changelog/Roadmap
    • Changelog
    • Roadmap

Mass Email Notifications for Gravity Forms

48
  • Getting Started
    • Mass Email Notifications — Welcome & Overview
    • Finding the Plugin in Your Dashboard
    • Before You Begin: Email Limits & SMTP
    • How Batches Are Created & Sent (5-Minute Delay)
    • Recommended Setup Pattern — Master Control Notification Form
  • Setup
    • Configure Global Send Limits (Throttling)
    • Create Your First Feed (5‑Minute Quickstart)
    • Using a GF Notification as Your Email Template
    • Schedule Batches for a Future Date
  • Settings Reference
    • Workflow Step
    • Global Settings — Limits Reset Rules, Old Batch Cleanup, Cron Toggle & Next Run
    • Unsubscribe Settings (Free Version)
    • Unsubscribe & Preferences Settings (Premium Version)
    • Double Opt-In Settings (Premium Version)
    • Feed Settings — Name, Label, Dedupe, Completion Email
    • Choose Target Form & Email Field
    • Email Settings — From, Reply-To, Subject, Message, Merge Tags
    • Unsubscribe & Preferences Merge Tags Reference
    • Merge Tag Fallbacks & CSV Column Mapping
    • Schedule Based on Date Field
    • Conditional Logic — Feed Form vs. Target Form
    • CSV Ingestion
  • How‑to Guides
    • Send an Update to Everyone Who Used Another Form
    • Create a User Preferences Form (Premium)
    • Set Up a Double Opt-In Workflow (Premium)
    • Using Target-Form Merge Tags
    • Segment Recipients with Target-Form Conditional Logic
    • Import a CSV List and Personalize with Merge Tags
    • Build a Front-End “Trigger” Form for Non-Admin Staff
    • Use Populate Anything for Dynamic, Person-Specific Emails
  • Troubleshooting
    • Basics
    • Batches Not Sending / Cron Not Running
    • Preview Shows 0 Recipients with Target-Form Filters (Premium)
    • Troubleshooting Unsubscribe & Preferences Issues
    • Hitting Rate Limits
    • Emails Going to Spam
    • Entries/Batches Missing After Deletions
  • Explanations & Concepts
    • Understanding Double Opt-In
    • Understanding the Unsubscribe and Preferences System
    • How Batching & Cron Work
    • Throttling Models Explained
    • Deduplication Strategy
    • Batch Statuses & Actions
    • What Gets Logged
    • Limitations & Design Trade‑offs
    • Security & Permissions Considerations
  • Changelog / Roadmap
    • Changelog
    • Roadmap

GravityOps Search

5
  • The Display Attribute
  • Nesting Shortcodes
  • Using Search Operators
  • Multi-Input Field Support
  • General Notes

Kanban View for GravityView

7
  • Getting  Started
    • Kanban View for GravityView
    • How KV4GV Complements GravityView & Gravity Flow
  • Setup & Configuration
    • Quick Start & Setup
    • Board & Card Configuration
  • How‑to Guides / Use Cases
    • Build a Pipeline Board from a Status Field
  • Changelog & Roadmap
    • Changelog
    • Roadmap

Recurring Form Submissions for Gravity Forms

10
  • Getting Started
    • Welcome & Overview
    • Finding the Plugin in Your Dashboard
  • Setup
    • Creating Your First Recurring Feed (Quickstart)
  • Settings Reference
    • Plugin Settings Page
    • Feed Settings
    • Entry Page
    • Notifications, Alerts & Shortcodes
  • Explanations & Concepts
    • Lifecycle, Scheduling, Deletion & Edge Cases
  • Changelog/Roadmap
    • Roadmap
    • Changelog

Global Variables

7
  • Getting Started
  • Creating and Using Variables
  • Nesting Variables
  • Using Variables in Conditional Logic
  • Developer Notes
  • Roadmap
  • Changelog
View Categories
  • Home
  • GravityOps Documentation
  • Recurring Form Submissions for Gravity Forms
  • Explanations & Concepts
  • Lifecycle, Scheduling, Deletion & Edge Cases

Lifecycle, Scheduling, Deletion & Edge Cases

This set of explanations provides the mental model behind Recurring Form Submissions for Gravity Forms. It covers how a series progresses, how time and catch‑up work, what happens on deletes/deactivations, how data persists, and which practical limitations to expect.


Series Lifecycle (Conceptual) #

  • Start: A form submission occurs on a form with an active Recurring Submissions feed. The feed evaluates conditional logic on the parent submission only. If conditions pass, a series is created for that entry.
  • Cadence: The series defines a cadence (every N days/weeks/months/years) plus an end condition (resubmission count or end date).
  • Run: On eligible days, the plugin generates a new child entry (a normal GF submission), runs all enabled feeds/notifications for that form, and logs the outcome.
  • Track: Parent/child entries maintain bi‑directional links and notes. The series accumulates progress until the end condition is met or the series is canceled.
  • Complete: When the final resubmission succeeds, the series is marked complete.

Scheduling, Time Storage & Catch‑Up #

  • Time model: All times are stored in UTC and displayed in the site’s configured time zone.
  • Daily scan: The plugin’s daily process looks for series with occurrences due that day or earlier.
  • Missed days: If the site was down or cron didn’t run, missed occurrences are picked up on the next run.
  • Manual run semantics: Manually processing the next submission does not change the long‑term cadence; the following occurrence remains scheduled relative to its original plan.

Deletion, Deactivation & Uninstall #

  • Delete vs. Trash:
    • If the source entry or form is deleted permanently (not just trashed), the series stops.
    • If either is trashed, nothing changes; the series continues.
  • Feed deactivation: If the feed is deactivated after a series has started, that series continues and must be manually canceled if you want it to stop.
  • Feed deletion: Deleting the feed cancels any active series associated with that feed.
  • Plugin deactivation: While deactivated, no submissions are processed. Upon reactivation, overdue occurrences are picked up on the first run (data remains intact in the database).
  • Plugin uninstall: Removes plugin data and tables; the system is cleaned as if the plugin was never installed (aside from the entries it created!).

Data Model & Persistence #

  • Storage: Series and state are stored in custom database tables managed by the plugin.
  • Parent/Child linkage: Parent entries record series metadata; each child is linked back to its parent. Links are visible via entry notes and used internally for auditing and progress computation.
  • Form duplication: Duplicating a form duplicates feeds but not existing series. New series begin only on new submissions that meet the feed’s conditions.

Custom Entry Meta Fields #

The plugin exposes the following entry meta fields for search, filtering, and merge tags.

Parent Entries #

  1. rfsfgf_is_parent_submission
    Label: Is Parent Submission
    Values: 'true' or 'false'
    Filterable: is, isnot
  2. total_resubmissions
    Label: Total Resubmissions
    Type: Numeric
    Filterable: is, isnot, >, <, contains

Child / Auto‑submitted Entries #

  1. is_auto_submission
    Label: Is Auto Submission
    Values: 'true' or 'false'
    Filterable: is, isnot
  2. resubmission_progress
    Label: Resubmissions Progress
    Format: e.g., 3 of 10 or 5 until Dec 31, 2025
    Filterable: is, isnot, contains

Both Parent and Child #

  1. rfsfgf_feed_label
    Label: Feed Label
    Behavior: Entry‑specific; supports merge tags
    Filterable: is, isnot, contains

Availability:

  • Searchable/filterable in the Gravity Forms entry list
  • Usable via custom merge tags in notifications/confirmations
  • Accessible via GFAPI and GF entry‑meta functions or our GravityOps Search plugin
  • Optional columns in the entry list view

Interaction With Gravity Forms Features (Concepts) #

  • Conditional Logic: Evaluated on the parent submission only to determine whether a series starts.
  • Calculation Fields: Recomputed on each submission.
  • Unique ID & GPPA: Unique ID fields produce a new unique value per resubmission; GPPA re‑hydrates in dynamic mode; Snapshot mode copies stored values, but Unique ID still remains unique for resubmissions.
  • Notifications & Feeds: Each resubmission is a normal GF submission, so all active feeds/notifications execute accordingly.

Limitations & Edge Cases #

  • No pause state: Series can be canceled, not paused.
  • Manual next run: Manually processing a run does not shift the schedule anchor; the next occurrence follows the original cadence.
  • No backfills: The system never creates retroactive runs for dates in the past.
  • Feed edits: Changes to feed settings affect future occurrences only.
  • Parent deletion impact: Deleting the parent stops the series and leaves child entries intact for audit history.
  • Validation failures: A failed resubmission does not create an entry; payment (or other) feeds do not run; failure is logged and must be retried or marked fixed before the series can be considered complete.

Design Rationale (Why It Works This Way) #

  • Reliability first: Using a daily scan with catch‑up ensures missed days (downtime, cron hiccups) are accounted for on the next run.
  • Auditability: Parent/child linkage, entry notes, and explicit failure states guarantee traceability across the series lifecycle.
  • Operational safety: Deactivation preserves data and catches up later; uninstall removes all traces for clean hand‑offs.
Updated on November 12, 2025

What are your Feelings

  • Happy
  • Normal
  • Sad

Share This Article :

  • Facebook
  • X
  • LinkedIn
  • Pinterest
Table of Contents
  • Series Lifecycle (Conceptual)
  • Scheduling, Time Storage & Catch‑Up
  • Deletion, Deactivation & Uninstall
  • Data Model & Persistence
  • Custom Entry Meta Fields
    • Parent Entries
    • Child / Auto‑submitted Entries
    • Both Parent and Child
  • Interaction With Gravity Forms Features (Concepts)
  • Limitations & Edge Cases
  • Design Rationale (Why It Works This Way)
  • GravityOps Plugin Bundle
  • Integrate Asana with Gravity Forms
  • Mass Email Notifications
  • Global Variables
  • Recurring Form Submissions
  • Folders4Gravity (free!)
  • GravityOps Search (free!)
  • Code Snippet Library

Unlock weekly tools and insights that help you run your business on WordPress - faster and smarter.

This field is hidden when viewing the form
Name
This field is hidden when viewing the form
You've already subscribed with that email address!
  • Request Support
  • Consult Our Documentation
  • Read Our Blog
  • Join Our Agency Program
  • Become An Affiliate
  • View Your Account Info
  • Contact BrightLeaf Digital
© 2025 BrightLeaf Digital
  • Plugins
    • GravityOps Bundle
    • Integrate Asana with Gravity Forms
    • Mass Email Notifications for Gravity Forms
    • Recurring Form Submissions
    • Kanban View for GravityView
    • Global Variables
    • Folders4Gravity (free!)
    • GravityOps Search (free!)
  • Snippets
  • Agencies
  • Support
    • Request Support
    • Plugin Documentation
  • Blog
  • Account
    • Freemius Login
  • Contact